Class: OAuth::Signature::Base
- Inherits:
-
Object
- Object
- OAuth::Signature::Base
show all
- Includes:
- Helper
- Defined in:
- lib/oauth/signature/base.rb
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Methods included from Helper
#escape, #generate_key
Constructor Details
#initialize(request, options = {}, &block) ⇒ Base
Returns a new instance of Base.
21
22
23
24
25
26
27
28
29
30
|
# File 'lib/oauth/signature/base.rb', line 21
def initialize(request, options = {}, &block)
raise TypeError unless request.kind_of?(OAuth::RequestProxy::Base)
@request = request
if block_given?
@token_secret, @consumer_secret = yield block.arity == 1 ? token : [token, consumer_key,nonce,request.timestamp]
else
@consumer_secret = options[:consumer].secret
@token_secret = options[:token] ? options[:token].secret : ''
end
end
|
Instance Attribute Details
#consumer_secret ⇒ Object
Returns the value of attribute consumer_secret.
19
20
21
|
# File 'lib/oauth/signature/base.rb', line 19
def consumer_secret
@consumer_secret
end
|
#request ⇒ Object
Returns the value of attribute request.
19
20
21
|
# File 'lib/oauth/signature/base.rb', line 19
def request
@request
end
|
#token_secret ⇒ Object
Returns the value of attribute token_secret.
19
20
21
|
# File 'lib/oauth/signature/base.rb', line 19
def token_secret
@token_secret
end
|
Class Method Details
.digest_class(digest_class = nil) ⇒ Object
14
15
16
17
|
# File 'lib/oauth/signature/base.rb', line 14
def self.digest_class(digest_class = nil)
return @digest_class if digest_class.nil?
@digest_class = digest_class
end
|
.implements(signature_method) ⇒ Object
10
11
12
|
# File 'lib/oauth/signature/base.rb', line 10
def self.implements(signature_method)
OAuth::Signature.available_methods[signature_method] = self
end
|
Instance Method Details
#==(cmp_signature) ⇒ Object
36
37
38
|
# File 'lib/oauth/signature/base.rb', line 36
def ==(cmp_signature)
Base64.decode64(signature) == Base64.decode64(cmp_signature)
end
|
#signature ⇒ Object
32
33
34
|
# File 'lib/oauth/signature/base.rb', line 32
def signature
Base64.encode64(digest).chomp
end
|
#signature_base_string ⇒ Object
44
45
46
47
48
|
# File 'lib/oauth/signature/base.rb', line 44
def signature_base_string
normalized_params = request.parameters_for_signature.sort.map { |k,v| [escape(k), escape(v)] * "=" }.join("&")
base = [request.method, request.uri, normalized_params]
sbs = base.map { |v| escape(v) }.join("&")
end
|
#verify ⇒ Object
40
41
42
|
# File 'lib/oauth/signature/base.rb', line 40
def verify
self == self.request.signature
end
|