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