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.



528
529
530
531
532
533
534
535
536
537
538
539
# File 'lib/openid/extensions/ax.rb', line 528

def initialize(succeeded = true, error_message = nil)
  super()
  if succeeded and error_message
    raise Error, "Error message included in a success response"
  end
  if succeeded
    @mode = SUCCESS_MODE
  else
    @mode = FAILURE_MODE
  end
  @error_message = error_message
end

Instance Attribute Details

#error_messageObject (readonly)

Returns the value of attribute error_message.



526
527
528
# File 'lib/openid/extensions/ax.rb', line 526

def error_message
  @error_message
end

Class Method Details

.from_success_response(success_response) ⇒ Object



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

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



550
551
552
553
554
555
556
# File 'lib/openid/extensions/ax.rb', line 550

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

#succeeded?Boolean

Returns:

  • (Boolean)


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

def succeeded?
  @mode == SUCCESS_MODE
end