class Yt::Models::Configuration

Provides an object to store global configuration settings.

This class is typically not used directly, but by calling {Yt::Config#configure Yt.configure}, which creates and updates a single instance of {Yt::Models::Configuration}.

@example Set the API client id/secret for a web-client YouTube app:

Yt.configure do |config|
  config.client_id = 'ABCDEFGHIJ1234567890'
  config.client_secret = 'ABCDEFGHIJ1234567890'
end

@see Yt::Config for more examples.

An alternative way to set global configuration settings is by storing them in the following environment variables:

In case both methods are used together, {Yt::Config#configure Yt.configure} takes precedence.

@example Set the API client id/secret for a web-client YouTube app:

ENV['YT_CLIENT_ID'] = 'ABCDEFGHIJ1234567890'
ENV['YT_CLIENT_SECRET'] = 'ABCDEFGHIJ1234567890'

Attributes

api_key[RW]

@return [String] the API key for server/browser YouTube applications. @see console.developers.google.com Google Developers Console

client_id[RW]

@return [String] the Client ID for web/device YouTube applications. @see console.developers.google.com Google Developers Console

client_secret[RW]

@return [String] the Client Secret for web/device YouTube applications. @see console.developers.google.com Google Developers Console

log_level[RW]

@return [String] the level of output to print for debugging purposes.

Public Class Methods

new() click to toggle source

Initialize the global configuration settings, using the values of the specified following environment variables by default.

# File lib/yt/models/configuration.rb, line 50
def initialize
  @client_id = ENV['YT_CLIENT_ID']
  @client_secret = ENV['YT_CLIENT_SECRET']
  @api_key = ENV['YT_API_KEY']
  @log_level = ENV['YT_LOG_LEVEL']
end

Public Instance Methods

debugging?() click to toggle source

@return [Boolean] whether the logging output is verbose.

Useful when debugging (e.g., to print the curl of failing requests).
# File lib/yt/models/configuration.rb, line 65
def debugging?
  log_level.to_s.in? %w(devel debug)
end
developing?() click to toggle source

@return [Boolean] whether the logging output is extra-verbose.

Useful when developing (e.g., to print the curl of every request).
# File lib/yt/models/configuration.rb, line 59
def developing?
  log_level.to_s.in? %w(devel)
end