Parent

Class/Module Index [+]

Quicksearch

AMQ::Client::Async::AuthMechanismAdapter

Provides a flexible method for encoding AMQP credentials. PLAIN and EXTERNAL are provided by this gem. In order to implement a new authentication mechanism, create a subclass like so:

class MyAuthMechanism < AMQ::Client::Async::AuthMechanismAdapter
  auth_mechanism "X-MYAUTH"

  def encode_credentials(username, password)
    # ...
  end
end

Attributes

adapter[R]

The Adapter that this AuthMechanismAdapter operates on behalf of.

Public Class Methods

for_adapter(adapter) click to toggle source

Find and instantiate an AuthMechanismAdapter.

@param [Adapter] adapter The Adapter for which to encode credentials. @return [AuthMechanismAdapter] An AuthMechanismAdapter that can encode

credentials for the Adapter.

@raise [NotImplementedError] The Adapter's mechanism does not

correspond to any known AuthMechanismAdapter.
# File lib/amq/client/async/auth_mechanism_adapter.rb, line 23
def self.for_adapter(adapter)
  registry[adapter.mechanism].new adapter
end
new(adapter) click to toggle source

Create a new AuthMechanismAdapter. Users of this class should instead retrieve an instance through for_adapter.

# File lib/amq/client/async/auth_mechanism_adapter.rb, line 57
def initialize(adapter)
  @adapter = adapter
end

Protected Class Methods

auth_mechanism(*mechanisms) click to toggle source

Used by subclasses to declare the mechanisms that an AuthMechanismAdapter understands.

@param [Array<String>] mechanisms One or more mechanisms that can be

handled by the subclass.
# File lib/amq/client/async/auth_mechanism_adapter.rb, line 34
def self.auth_mechanism(*mechanisms)
  mechanisms.each {|mechanism| registry[mechanism] = self}
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.