Class: OpenID::AX::StoreResponse

Inherits:
AXMessage show all
Defined in:
lib/openid/extensions/ax.rb

Overview

An indication that the store request was processed along with this OpenID transaction.

Constant Summary collapse

SUCCESS_MODE =
"store_response_success"
FAILURE_MODE =
"store_response_failure"

Constants inherited from AXMessage

AXMessage::NS_URI

Instance Attribute Summary collapse

Attributes inherited from AXMessage

#mode, #ns_alias, #ns_uri

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Extension

#to_message

Constructor Details

#initialize(succeeded = true, error_message = nil) ⇒ StoreResponse

Returns a new instance of StoreResponse.

Raises:



524
525
526
527
528
529
530
531
532
533
534
# File 'lib/openid/extensions/ax.rb', line 524

def initialize(succeeded = true, error_message = nil)
  super()
  raise Error, "Error message included in a success response" if succeeded and error_message

  @mode = if succeeded
    SUCCESS_MODE
  else
    FAILURE_MODE
  end
  @error_message = error_message
end

Instance Attribute Details

#error_messageObject (readonly)

Returns the value of attribute error_message.



522
523
524
# File 'lib/openid/extensions/ax.rb', line 522

def error_message
  @error_message
end

Class Method Details

.from_success_response(success_response) ⇒ Object



536
537
538
539
# File 'lib/openid/extensions/ax.rb', line 536

def self.from_success_response(success_response)
  ax_args = success_response.message.get_args(NS_URI)
  ax_args.key?("error") ? new(false, ax_args["error"]) : new
end

Instance Method Details

#get_extension_argsObject



545
546
547
548
549
# File 'lib/openid/extensions/ax.rb', line 545

def get_extension_args
  ax_args = new_args
  ax_args["error"] = @error_message if !succeeded? and error_message
  ax_args
end

#succeeded?Boolean

Returns:

  • (Boolean)


541
542
543
# File 'lib/openid/extensions/ax.rb', line 541

def succeeded?
  @mode == SUCCESS_MODE
end