Class: Giddy::Download

Inherits:
Endpoint show all
Defined in:
lib/giddy/download.rb

Instance Method Summary collapse

Methods inherited from Endpoint

#gettyup

Constructor Details

#initialize(mediator) ⇒ Download

Returns a new instance of Download.



3
4
5
# File 'lib/giddy/download.rb', line 3

def initialize(mediator)
  super mediator, "download", true
end

Instance Method Details

#create_download_request(tokens) ⇒ Object



19
20
21
22
23
# File 'lib/giddy/download.rb', line 19

def create_download_request(tokens)
  tokens = [tokens].flatten.map { |token| { :DownloadToken => token } }
  result = gettyup :CreateDownloadRequest, { :DownloadItems => tokens }, "CreateDownload"
  result["DownloadUrls"].inject({}) { |h,i| h[i["ImageId"]] = Utils.rubified_hash(i); h }
end

#get_image_download_authorizations(image_id, sizes) ⇒ Object



7
8
9
10
11
# File 'lib/giddy/download.rb', line 7

def get_image_download_authorizations(image_id, sizes)
  images = sizes.map { |s| { :ImageId => image_id, :SizeKey => s } }
  result = gettyup :GetImageDownloadAuthorizations, { :ImageSizes => images }
  result["Images"].inject({}) { |h,i| h[i["SizeKey"]] = Utils.rubified_hash(i); h }
end

#get_largest_image_download_authorizations(ids) ⇒ Object



13
14
15
16
17
# File 'lib/giddy/download.rb', line 13

def get_largest_image_download_authorizations(ids)
  ids = [ids].flatten.map { |id| { :ImageId => id } }
  result = gettyup :GetLargestImageDownloadAuthorizations, { :Images => ids }
  result["Images"].inject({}) { |h,i| h[i["ImageId"]] = Utils.rubified_hash(i); h }
end