class Pod::Components_api
Constants
- COMPONENTS_URL
Attributes
baseline[R]
baseline_api[R]
component_list[R]
components_url[R]
source[R]
Public Class Methods
new(baseline=nil,url=COMPONENTS_URL)
click to toggle source
# File lib/cocoapods-vemars/services/components_api.rb, line 16 def initialize(baseline=nil,url=COMPONENTS_URL) @baseline = baseline @source = "" @component_list = [] @baseline_api = Baselines_api.new(url) @components_url = (url.blank? ? COMPONENTS_URL : url + "mpaas/baseline/baseline_config") end
Public Instance Methods
deserilise(response)
click to toggle source
# File lib/cocoapods-vemars/services/components_api.rb, line 46 def deserilise(response) if response.ok? json = JSON.parse(response.body) error_code = json["error_no"] if error_code == 0 @source = json['data']['source'] @component_list = json['data']['iosPlugins'].map { |obj| Component.new(obj) } else puts "Error #{error_code}(#{json["error_msg"]}): #{json["err_detail"]}}" end else puts "fail to get components, response status: #{response.status_code}" end end
getComponents(baseline=@baseline)
click to toggle source
# File lib/cocoapods-vemars/services/components_api.rb, line 38 def getComponents(baseline=@baseline) body= "{\"baseline_version\": \"#{baseline}\", \"technology_stack\": \"iOS\"}" header = {"ContentType" => 'application/json'} response = REST.post(@components_url, body, header) deserilise(response) return component_list end
validate!()
click to toggle source
# File lib/cocoapods-vemars/services/components_api.rb, line 24 def validate! baseline_api.await.getBaselines if @baseline.nil? && baseline_api.result.length() == 0 help! "No baselines info existed, please check with server admin" elsif @baseline.nil? && baseline_api.result.length() > 0 @baseline = baseline_api.result[0] elsif !@baseline.nil? && baseline_api.result.length() > 0 if !baseline_api.result.include?(@baseline) puts "Invalid baseline version provided!" help! "Invalid baseline version provided!" end end end