Sha256: 535fc5e61a71971d0cb475bbc51e1265598ce64f1fd4e8c06da86d9554e2e625
Contents?: true
Size: 807 Bytes
Versions: 1
Compression:
Stored size: 807 Bytes
Contents
module RenuoUpload def self.upload!(file) Uploader.new(RenuoUpload.config).upload(file) end class Uploader def initialize(config) @config = config @policy = retrieve_policy end def upload(file) RestClient.post upload_url, upload_hash(file) uploaded_file_url file end private def retrieve_policy response = RestClient.post @config.signing_url, api_key: @config.api_key JSON.parse response.body end def upload_url @policy['url'] end def upload_data @policy['data'] end def upload_hash(file) Hash[upload_data.map { |key, value| [key.tr('_', '-'), value] }].merge file: file end def uploaded_file_url(file) @policy['file_url_path'].concat File.basename(file) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
renuo-upload-0.0.1 | lib/renuo_upload/uploader.rb |