class Twitter::Client

Attributes

access_token[RW]
access_token_secret[RW]
consumer_key[RW]
consumer_secret[RW]
proxy[RW]
user_agent[W]

Public Class Methods

new(options = {}) { |self| ... } click to toggle source

Initializes a new Client object

@param options [Hash] @return [Twitter::Client]

# File lib/twitter/client.rb, line 19
def initialize(options = {})
  options.each do |key, value|
    instance_variable_set("@#{key}", value)
  end
  yield(self) if block_given?
  validate_credentials!
end

Public Instance Methods

credentials() click to toggle source

@return [Hash]

# File lib/twitter/client.rb, line 38
def credentials
  {
    :consumer_key      => consumer_key,
    :consumer_secret   => consumer_secret,
    :token             => access_token,
    :token_secret      => access_token_secret,
    :ignore_extra_keys => true,
  }
end
credentials?() click to toggle source

@return [Boolean]

# File lib/twitter/client.rb, line 49
def credentials?
  credentials.values.all?
end
user_agent() click to toggle source

@return [String]

# File lib/twitter/client.rb, line 33
def user_agent
  @user_agent ||= "TwitterRubyGem/#{Twitter::Version}"
end
user_token?() click to toggle source

@return [Boolean]

# File lib/twitter/client.rb, line 28
def user_token?
  !!(access_token && access_token_secret)
end

Private Instance Methods

validate_credentials!() click to toggle source

Ensures that all credentials set during configuration are of a valid type. Valid types are String and Boolean.

@raise [Twitter::Error::ConfigurationError] Error is raised when

supplied twitter credentials are not a String or Boolean.
# File lib/twitter/client.rb, line 60
def validate_credentials!
  credentials.each do |credential, value|
    next if value.nil? || value == true || value == false || value.is_a?(String)
    fail(Twitter::Error::ConfigurationError.new("Invalid #{credential} specified: #{value.inspect} must be a String."))
  end
end