Sha256: bed631025722567ba9c98611dc036efe3d48bcf7b399724d4b3ab9956a63f353

Contents?: true

Size: 650 Bytes

Versions: 96

Compression:

Stored size: 650 Bytes

Contents

module OAuth
  module RequestProxy
    def self.available_proxies #:nodoc:
      @available_proxies ||= {}
    end

    def self.proxy(request, options = {})
      return request if request.kind_of?(OAuth::RequestProxy::Base)

      klass = available_proxies[request.class]

      # Search for possible superclass matches.
      if klass.nil?
        request_parent = available_proxies.keys.find { |rc| request.kind_of?(rc) }
        klass = available_proxies[request_parent]
      end

      raise UnknownRequestType, request.class.to_s unless klass
      klass.new(request, options)
    end

    class UnknownRequestType < Exception; end
  end
end

Version data entries

96 entries across 93 versions & 27 rubygems

Version Path
jwhitmire-oauth-0.3.6.1 lib/oauth/request_proxy.rb
metavida-oauth-0.3.2.1 lib/oauth/request_proxy.rb
metavida-oauth-0.3.2 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.1.1 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.1.2 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.1.3 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.1.4 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.1.5 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.1.6 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.1.7 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.1.8 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.2.1 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.2.2 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.2 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.3 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.4.1 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.4 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.5 lib/oauth/request_proxy.rb
mojodna-oauth-0.3.6 lib/oauth/request_proxy.rb
monkeyhelper-oauth-0.3.1 lib/oauth/request_proxy.rb