module Contacts

Constants

Identifier

Public Class Methods

configure(configuration) click to toggle source
# File lib/contacts.rb, line 8
def self.configure(configuration)
  configuration.each do |key, value|
    klass =
      case key.to_s
      when 'google'
        Google
      when 'yahoo'
        Yahoo
      when 'windows_live'
        WindowsLive
      else
        raise ArgumentError, "unknown consumer: #{key}"
      end
    klass.configure(value)
  end
end
consumer_class_for(name) click to toggle source
# File lib/contacts.rb, line 49
def self.consumer_class_for(name)
  class_name = name.to_s.gsub(/(?:\A|_)(.)/){|s| $1.upcase}
  class_name.sub!(/Oauth/, 'OAuth')
  class_name.sub!(/Bbauth/, 'BBAuth')
  begin
    klass = const_get(class_name)
  rescue NameError
    return nil
  end
  klass < Consumer ? klass : nil
end
deserialize_consumer(name, serialized_data) click to toggle source
# File lib/contacts.rb, line 39
def self.deserialize_consumer(name, serialized_data)
  klass = consumer_class_for(name) and
    klass.deserialize(serialized_data)
end
new(name, *args, &block) click to toggle source
# File lib/contacts.rb, line 44
def self.new(name, *args, &block)
  klass = consumer_class_for(name) and
    klass.new(*args, &block)
end
verbose?() click to toggle source
# File lib/contacts.rb, line 61
def self.verbose?
  'irb' == $0
end