module Net::IMAP::Authenticators
Registry for SASL authenticators used by Net::IMAP
.
Public Instance Methods
add_authenticator(auth_type, authenticator)
click to toggle source
Adds an authenticator for use with Net::IMAP#authenticate
. auth_type
is the SASL mechanism supported by authenticator
(for instance, “PLAIN
”). The authenticator
is an object which defines a #process
method to handle authentication with the server. See Net::IMAP::PlainAuthenticator
, Net::IMAP::LoginAuthenticator
, Net::IMAP::CramMD5Authenticator
, and Net::IMAP::DigestMD5Authenticator
for examples.
If auth_type
refers to an existing authenticator, it will be replaced by the new one.
# File net-imap-0.3.1/lib/net/imap/authenticators.rb, line 16 def add_authenticator(auth_type, authenticator) authenticators[auth_type] = authenticator end
authenticator(mechanism, *authargs, **properties, &callback)
click to toggle source
Builds an authenticator for Net::IMAP#authenticate
. args
will be passed directly to the chosen authenticator’s #initialize
.
# File net-imap-0.3.1/lib/net/imap/authenticators.rb, line 22 def authenticator(mechanism, *authargs, **properties, &callback) authenticator = authenticators.fetch(mechanism.upcase) do raise ArgumentError, 'unknown auth type - "%s"' % mechanism end if authenticator.respond_to?(:new) authenticator.new(*authargs, **properties, &callback) else authenticator.call(*authargs, **properties, &callback) end end