Sha256: 32f937a61df5aa4afe281b6d36fe8b8016dfb933594ea70a43b5adba8c2161ff

Contents?: true

Size: 1.53 KB

Versions: 2

Compression:

Stored size: 1.53 KB

Contents

require 'active_support'
require 'active_support/core_ext'
require 'rack/oauth2'

module FbGraph2
  mattr_accessor :root_url, :api_version, :gem_version, :logger, :debugging, :_http_config_, :object_classes

  self.root_url = 'https://graph.facebook.com'
  self.api_version = 'v2.0'
  self.gem_version = File.read(File.join(__dir__, '../VERSION')).delete("\n\r")
  self.logger = Logger.new(STDOUT)
  self.logger.progname = 'FbGraph2'
  self.object_classes = Array.new

  class << self
    def debugging?
      !!self.debugging
    end
    def debug!
      Rack::OAuth2.debug!
      self.debugging = true
    end

    def http_client(access_token = nil)
      _http_client_ = HTTPClient.new(
        agent_name: "FbGraph2 (#{gem_version})"
      )
      _http_client_.request_filter.delete_if do |filter|
        filter.is_a? HTTPClient::WWWAuth
      end
      _http_client_.request_filter << RequestFilter::Authenticator.new(access_token) if access_token.present?
      _http_client_.request_filter << RequestFilter::Debugger.new if self.debugging?
      _http_config_.try(:call, _http_client_)
      _http_client_
    end
    def http_config(&block)
      Rack::OAuth2.http_config &block unless Rack::OAuth2.http_config
      self._http_config_ ||= block
    end
  end
end

require 'fb_graph2/attribute_assigner'
require 'fb_graph2/node'
require 'fb_graph2/collection'
require 'fb_graph2/searchable'
require 'fb_graph2/edge'
[
  '.',
  'request_filter'
].each do |dir|
  Dir[File.join(__dir__, 'fb_graph2', dir, '*.rb')].each do |file|
    require file
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
fb_graph2-0.4.4 lib/fb_graph2.rb
fb_graph2-0.4.3 lib/fb_graph2.rb