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