Class: ActivePublicResources::Drivers::Vimeo
- Defined in:
- lib/active_public_resources/drivers/vimeo.rb
Constant Summary collapse
- DRIVER_NAME =
"vimeo"
- DEFAULT_CRITERIA =
{ :page => 1, :per_page => 25, :sort => 'relevant', :content_filter => 'safe' }
Instance Attribute Summary collapse
-
#client ⇒ Object
readonly
Returns the value of attribute client.
Instance Method Summary collapse
-
#initialize(config_options = {}) ⇒ Vimeo
constructor
Constructor.
-
#perform_request(request_criteria) ⇒ JSON
Perform search request to Vimeo with search criteria.
Constructor Details
#initialize(config_options = {}) ⇒ Vimeo
Constructor
22 23 24 25 26 27 28 29 |
# File 'lib/active_public_resources/drivers/vimeo.rb', line 22 def initialize(={}) (, [:consumer_key, :consumer_secret]) @client = ActivePublicResources::OAuth::Vimeo.new( [:consumer_key], [:consumer_secret] ) @access_token = @client.get_access_token end |
Instance Attribute Details
#client ⇒ Object (readonly)
Returns the value of attribute client.
7 8 9 |
# File 'lib/active_public_resources/drivers/vimeo.rb', line 7 def client @client end |
Instance Method Details
#perform_request(request_criteria) ⇒ JSON
Perform search request to Vimeo with search criteria
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
# File 'lib/active_public_resources/drivers/vimeo.rb', line 79 def perform_request(request_criteria) request_criteria.validate_presence!([:query]) raise StandardError.new("driver has not been initialized properly") unless @client results = HTTParty.get('https://api.vimeo.com/videos', query: { query: request_criteria.query, page: request_criteria.page || 1, per_page: request_criteria.per_page || 25, sort: 'relevant', filter: 'content_rating', filter_content_rating: 'safe' }, headers: { "Authorization" => "Bearer #{@access_token}" } ) return parse_results(request_criteria, JSON.parse(results)) unless results.code == 401 if !@client.verify_token?(@access_token) @access_token = @client.get_access_token perform_request(request_criteria) if !@access_token.blank? end end |