class Flickr::Client::Upload
Client
for uploading photos.
Public Class Methods
new(access_token = nil)
click to toggle source
Calls superclass method
Flickr::Client::new
# File lib/flickr/client/upload.rb, line 9 def initialize(access_token = nil) access_token ||= Array.new(2, nil) super() do |builder| # Request builder.use FaradayMiddleware::OAuth, consumer_key: api_key, consumer_secret: shared_secret, token: access_token[0], token_secret: access_token[1] builder.use Faraday::Request::Multipart # Response builder.use Flickr::Middleware::CheckStatus builder.use FaradayMiddleware::ParseXml builder.use Flickr::Middleware::CheckOAuth end end
Public Instance Methods
replace(params = {})
click to toggle source
# File lib/flickr/client/upload.rb, line 33 def replace(params = {}) params[:photo] = UploadIO(params[:photo]) post "replace", params end
upload(params = {})
click to toggle source
# File lib/flickr/client/upload.rb, line 28 def upload(params = {}) params[:photo] = UploadIO(params[:photo]) post "upload", params end
Private Instance Methods
UploadIO(file)
click to toggle source
# File lib/flickr/client/upload.rb, line 40 def UploadIO(file) io = Faraday::UploadIO.new(file.file, file.content_type, file.path) io.instance_eval { def length; size; end } # hack for multipart-post to support any IO io end
length()
click to toggle source
# File lib/flickr/client/upload.rb, line 42 def length; size; end
url()
click to toggle source
# File lib/flickr/client/upload.rb, line 46 def url "https://api.flickr.com/services" end