Class: OpenID::Request
- Inherits:
-
Object
- Object
- OpenID::Request
- Defined in:
- lib/openid/interface.rb
Overview
Request objects are used by both the consumer and server APIs to signal and represent various HTTP requests.
Instance Attribute Summary collapse
-
#args ⇒ Object
Returns the value of attribute args.
-
#authentication ⇒ Object
readonly
Returns the value of attribute authentication.
-
#http_method ⇒ Object
Returns the value of attribute http_method.
Instance Method Summary collapse
-
#[](key) ⇒ Object
The preferred method for getting OpenID args out of the request.
- #get(key, default = nil) ⇒ Object
-
#initialize(args, http_method, authentication = nil) ⇒ Request
constructor
args is a hash of HTTP arguments.
Constructor Details
#initialize(args, http_method, authentication = nil) ⇒ Request
args is a hash of HTTP arguments. http_method should be set to “POST” or “GET” authentication is an unused passthrough field that will remain attatched to the request. A NoOpenIDArgs exception will be raised if args contains no openid.* arguments.
36 37 38 39 40 41 42 43 44 45 |
# File 'lib/openid/interface.rb', line 36 def initialize(args, http_method, authentication=nil) @args = args @http_method = http_method.upcase @authentication = authentication @args.each_key { |key| return if key.index('openid.') == 0 } raise NoOpenIDArgs end |
Instance Attribute Details
#args ⇒ Object
Returns the value of attribute args.
28 29 30 |
# File 'lib/openid/interface.rb', line 28 def args @args end |
#authentication ⇒ Object (readonly)
Returns the value of attribute authentication.
28 29 30 |
# File 'lib/openid/interface.rb', line 28 def authentication @authentication end |
#http_method ⇒ Object
Returns the value of attribute http_method.
28 29 30 |
# File 'lib/openid/interface.rb', line 28 def http_method @http_method end |
Instance Method Details
#[](key) ⇒ Object
The preferred method for getting OpenID args out of the request. Raises a ProtoclError if the argument does not exist.
48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/openid/interface.rb', line 48 def [](key) result = get(key) if result == nil if key == 'trust_root' return self['return_to'] else raise ProtocolError, "Query argument #{key} not found", caller end end return result end |
#get(key, default = nil) ⇒ Object
60 61 62 |
# File 'lib/openid/interface.rb', line 60 def get(key, default=nil) return @args.fetch('openid.' + key, default) end |