class Android::Publisher::Track

Constants

ENDPOINT

Attributes

track[R]

Public Class Methods

new(client, track) click to toggle source
# File lib/android/publisher/track.rb, line 5
def initialize(client, track)
  @track  = track.to_s
  @client = client.add_endpoint("#{ENDPOINT}/#{@track}")
end

Public Instance Methods

has_deployed_apks?() click to toggle source
# File lib/android/publisher/track.rb, line 10
def has_deployed_apks?
  list['versionCodes'].size > 0
end
patch(version_code, user_fraction) click to toggle source
# File lib/android/publisher/track.rb, line 27
def patch(version_code, user_fraction)
  params = {
      :headers => { "Content-Type" => 'application/json' },
      :body    => { :track => @track, :versionCodes => [version_code], :userFraction=>user_fraction }.to_json
  }

  Response.parse(@client.patch("", params))
end
rollout_fraction() click to toggle source
# File lib/android/publisher/track.rb, line 14
def rollout_fraction
  list['userFraction']
end
update(version_code, user_fraction=nil) click to toggle source
# File lib/android/publisher/track.rb, line 18
def update(version_code, user_fraction=nil)
  params = {
    :headers => { "Content-Type" => 'application/json' },
    :body    => { :track => @track, :versionCodes => [version_code], :userFraction=>user_fraction }.to_json
  }

  Response.parse(@client.put(params))
end

Private Instance Methods

list() click to toggle source
# File lib/android/publisher/track.rb, line 39
def list
  begin
    Response.parse(@client.get())
  rescue OAuth2::Error
    {'versionCodes' => [], 'userFraction' => -1}
  end
end