lib/yammer/configurable.rb in yammer-client-0.1.2 vs lib/yammer/configurable.rb in yammer-client-0.1.3

- old
+ new

@@ -1,30 +1,36 @@ +require 'yammer/http_adapter' + module Yammer module Configurable ENDPOINT = 'https://www.yammer.com' unless defined? ENDPOINT - HTTP_CONNECTION = Yammer::HttpConnection unless defined? HTTP_CONNECTION + HTTP_ADAPTER = Yammer::HttpAdapter unless defined? HTTP_CONNECTION - attr_accessor :hostname, :client_id, :client_secret, :access_token, :site_url, :http_adapter, - :connection_options + attr_accessor :client_id, :client_secret, :access_token, :site_url, + :connection_options, :headers, :http_adapter # Return a hash with the default options # @return [Hash] def self.default_options { :site_url => ENDPOINT, :client_id => ENV['YAMMER_CLIENT_ID'], :client_secret => ENV['YAMMER_CLIENT_SECRET'], :access_token => ENV['YAMMER_ACCESS_TOKEN'], - :http_adapter => HTTP_CONNECTION, - :connection_options => { :max_redirects => 5, :use_ssl => true } + :http_adapter => HTTP_ADAPTER, + :connection_options => { :max_redirects => 5, :verify_ssl => true }, + :headers => { + 'Accept' => 'application/json', + 'User-Agent' => "Yammer Ruby Gem #{Yammer::Version}" + } } end - # @return [Array<String> + # @return [Array<String>] def self.keys - Yammer::Configurable.default_options.keys + self.default_options.keys end # @return [Hash] def options Hash[Yammer::Configurable.keys.map{|key| [key, instance_variable_get(:"@#{key}")]}] @@ -37,10 +43,10 @@ self end # Convenience method to allow configuration options to be set in a block def configure - yield self + yield self if block_given? self end end end