Class: SASL::Mechanism

Inherits:
Object
  • Object
show all
Defined in:
lib/dalli/sasl/base.rb

Overview

Common functions for mechanisms

Mechanisms implement handling of methods start and receive. They return: [message_name, content] or nil where message_name is either ‘auth’ or ‘response’ and content is either a string which may transmitted encoded as Base64 or nil.

Direct Known Subclasses

Anonymous, Plain

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, preferences) ⇒ Mechanism

Returns a new instance of Mechanism.



62
63
64
65
66
# File 'lib/dalli/sasl/base.rb', line 62

def initialize(name, preferences)
  @name = name
  @preferences = preferences
  @state = nil
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



60
61
62
# File 'lib/dalli/sasl/base.rb', line 60

def name
  @name
end

#preferencesObject (readonly)

Returns the value of attribute preferences.



59
60
61
# File 'lib/dalli/sasl/base.rb', line 59

def preferences
  @preferences
end

Instance Method Details

#failure?Boolean

Returns:

  • (Boolean)


71
72
73
# File 'lib/dalli/sasl/base.rb', line 71

def failure?
  @state == :failure
end

#receive(message_name, content) ⇒ Object



79
80
81
82
83
84
85
86
87
# File 'lib/dalli/sasl/base.rb', line 79

def receive(message_name, content)
  case message_name
  when 'success'
    @state = :success
  when 'failure'
    @state = :failure
  end
  nil
end

#startObject

Raises:

  • (NotImplementedError)


75
76
77
# File 'lib/dalli/sasl/base.rb', line 75

def start
  raise NotImplementedError
end

#success?Boolean

Returns:

  • (Boolean)


68
69
70
# File 'lib/dalli/sasl/base.rb', line 68

def success?
  @state == :success
end