Class: OAuth::Signature::Base
- Includes:
- Helper
- Defined in:
- lib/oauth/signature/base.rb
Direct Known Subclasses
Instance Attribute Summary collapse
-
#consumer_secret ⇒ Object
readonly
Returns the value of attribute consumer_secret.
-
#options ⇒ Object
Returns the value of attribute options.
-
#request ⇒ Object
readonly
Returns the value of attribute request.
-
#token_secret ⇒ Object
readonly
Returns the value of attribute token_secret.
Class Method Summary collapse
Instance Method Summary collapse
- #==(cmp_signature) ⇒ Object
- #body_hash ⇒ Object
-
#initialize(request, options = {}, &block) ⇒ Base
constructor
A new instance of Base.
- #signature ⇒ Object
- #signature_base_string ⇒ Object
- #verify ⇒ Object
Methods included from Helper
#escape, #generate_key, #generate_timestamp, #normalize, #normalize_nested_query, #parse_header, #stringify_keys, #unescape
Constructor Details
#initialize(request, options = {}, &block) ⇒ Base
Returns a new instance of Base.
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/oauth/signature/base.rb', line 19 def initialize(request, = {}, &block) raise TypeError unless request.kind_of?(OAuth::RequestProxy::Base) @request = request @options = ## consumer secret was determined beforehand @consumer_secret = [:consumer].secret if [:consumer] # presence of :consumer_secret option will override any Consumer that's provided @consumer_secret = [:consumer_secret] if [:consumer_secret] ## token secret was determined beforehand @token_secret = [:token].secret if [:token] # presence of :token_secret option will override any Token that's provided @token_secret = [:token_secret] if [:token_secret] # override secrets based on the values returned from the block (if any) if block_given? # consumer secret and token secret need to be looked up based on pieces of the request secrets = yield block.arity == 1 ? request : [token, consumer_key, nonce, request.] if secrets.is_a?(Array) && secrets.size == 2 @token_secret = secrets[0] @consumer_secret = secrets[1] end end end |
Instance Attribute Details
#consumer_secret ⇒ Object (readonly)
Returns the value of attribute consumer_secret.
11 12 13 |
# File 'lib/oauth/signature/base.rb', line 11 def consumer_secret @consumer_secret end |
#options ⇒ Object
Returns the value of attribute options.
10 11 12 |
# File 'lib/oauth/signature/base.rb', line 10 def @options end |
#request ⇒ Object (readonly)
Returns the value of attribute request.
11 12 13 |
# File 'lib/oauth/signature/base.rb', line 11 def request @request end |
#token_secret ⇒ Object (readonly)
Returns the value of attribute token_secret.
11 12 13 |
# File 'lib/oauth/signature/base.rb', line 11 def token_secret @token_secret end |
Class Method Details
.implements(signature_method = nil) ⇒ Object
13 14 15 16 17 |
# File 'lib/oauth/signature/base.rb', line 13 def self.implements(signature_method = nil) return @implements if signature_method.nil? @implements = signature_method OAuth::Signature.available_methods[@implements] = self end |
Instance Method Details
#==(cmp_signature) ⇒ Object
53 54 55 |
# File 'lib/oauth/signature/base.rb', line 53 def ==(cmp_signature) signature == cmp_signature end |
#body_hash ⇒ Object
65 66 67 |
# File 'lib/oauth/signature/base.rb', line 65 def body_hash raise_instantiation_error end |
#signature ⇒ Object
49 50 51 |
# File 'lib/oauth/signature/base.rb', line 49 def signature Base64.encode64(digest).chomp.gsub(/\n/,'') end |
#signature_base_string ⇒ Object
61 62 63 |
# File 'lib/oauth/signature/base.rb', line 61 def signature_base_string request.signature_base_string end |
#verify ⇒ Object
57 58 59 |
# File 'lib/oauth/signature/base.rb', line 57 def verify self == self.request.signature end |