Class: Cloudwalk::PosxmlVersion
- Inherits:
-
Object
- Object
- Cloudwalk::PosxmlVersion
- Defined in:
- lib/cloudwalk/posxml_version.rb
Class Method Summary collapse
- .all(app_id) ⇒ Object
- .get(app_id, id) ⇒ Object
- .get_or_create(app, version) ⇒ Object
- .host ⇒ Object
- .token ⇒ Object
- .update(app_id, version_id, bytecode) ⇒ Object
Class Method Details
.all(app_id) ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/cloudwalk/posxml_version.rb', line 19 def self.all(app_id) response = JSON.parse(Net::HTTP.get(URI("https://#{self.host}/v1/apps/posxml/#{app_id}/versions?access_token=#{self.token}&per_page=100"))) raise ManagerException.new(response["message"]) if response["message"] total_pages = response["pagination"]["total_pages"].to_i versions = response["appversions"] (total_pages - 1).times do |page| url = "https://#{self.host}/v1/apps/posxml/#{app_id}/versions?access_token=#{self.token}&per_page=100&page=#{page+2}" response = JSON.parse(Net::HTTP.get(URI(url))) raise ManagerException.new(response["message"]) if response["message"] versions.concat(response["posxmlapps"]) end versions end |
.get(app_id, id) ⇒ Object
36 37 38 39 40 41 42 |
# File 'lib/cloudwalk/posxml_version.rb', line 36 def self.get(app_id, id) url = "https://#{self.host}/v1/apps/posxml/#{app_id}/versions/#{id}?access_token=#{token}" response = JSON.parse(Net::HTTP.get(URI(url))) raise ManagerException.new(response["message"]) if response["message"] response end |
.get_or_create(app, version) ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/cloudwalk/posxml_version.rb', line 11 def self.get_or_create(app, version) response = JSON.parse(Net::HTTP.get(URI("https://#{self.host}/v1/apps/posxml/#{app_id}/versions?access_token=#{self.token}&per_page=100"))) raise ManagerException.new(response["message"]) if response["message"] #TODO #`curl -X GET "https://api-staging.cloudwalk.io/v1/apps/posxml/3082/versions?access_token=#{self.token}` end |
.host ⇒ Object
7 8 9 |
# File 'lib/cloudwalk/posxml_version.rb', line 7 def self.host Cloudwalk::Config.host end |
.token ⇒ Object
3 4 5 |
# File 'lib/cloudwalk/posxml_version.rb', line 3 def self.token Cloudwalk::Config.token end |
.update(app_id, version_id, bytecode) ⇒ Object
44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/cloudwalk/posxml_version.rb', line 44 def self.update(app_id, version_id, bytecode) url = "#{self.host}/v1/apps/posxml/#{app_id}/versions/#{version_id}?access_token=#{self.token}" uri = URI(url) uri.encode_www_form({"bytecode" => Base64.strict_encode64(bytecode)}) Net::HTTP.start(uri.host, uri.port, :use_ssl => true) do |http| request = Net::HTTP::Put.new(uri) response = http.request request end p response end |