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.
23
24
25
26
27
28
29
30
31
32
33
|
# File 'lib/oauth/signature/base.rb', line 23
def initialize(request, options = {}, &block)
raise TypeError unless request.kind_of?(OAuth::RequestProxy::Base)
@request = request
@options = options
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.
21
22
23
|
# File 'lib/oauth/signature/base.rb', line 21
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
@options
end
|
#request ⇒ Object
Returns the value of attribute request.
21
22
23
|
# File 'lib/oauth/signature/base.rb', line 21
def request
@request
end
|
#token_secret ⇒ Object
Returns the value of attribute token_secret.
21
22
23
|
# File 'lib/oauth/signature/base.rb', line 21
def token_secret
@token_secret
end
|
Class Method Details
.digest_class(digest_class = nil) ⇒ Object
16
17
18
19
|
# File 'lib/oauth/signature/base.rb', line 16
def self.digest_class(digest_class = nil)
return @digest_class if digest_class.nil?
@digest_class = digest_class
end
|
.implements(signature_method) ⇒ Object
12
13
14
|
# File 'lib/oauth/signature/base.rb', line 12
def self.implements(signature_method)
OAuth::Signature.available_methods[signature_method] = self
end
|
Instance Method Details
#==(cmp_signature) ⇒ Object
39
40
41
|
# File 'lib/oauth/signature/base.rb', line 39
def ==(cmp_signature)
Base64.decode64(signature) == Base64.decode64(cmp_signature)
end
|
#signature ⇒ Object
35
36
37
|
# File 'lib/oauth/signature/base.rb', line 35
def signature
Base64.encode64(digest).chomp.gsub(/\n/,'')
end
|
#signature_base_string ⇒ Object
47
48
49
50
51
|
# File 'lib/oauth/signature/base.rb', line 47
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
43
44
45
|
# File 'lib/oauth/signature/base.rb', line 43
def verify
self == self.request.signature
end
|