# File lib/oauth/request_proxy/base.rb, line 86 86: def non_oauth_parameters 87: parameters.reject { |k,v| OAuth::PARAMETERS.include?(k) } 88: end
See 9.1.1. in specs Normalize Request Parameters
# File lib/oauth/request_proxy/base.rb, line 97 97: def normalized_parameters 98: normalize(parameters_for_signature) 99: end
See 9.1.2 in specs
# File lib/oauth/request_proxy/base.rb, line 91 91: def normalized_uri 92: u = URI.parse(uri) 93: "#{u.scheme.downcase}://#{u.host.downcase}#{(u.scheme.downcase == 'http' && u.port != 80) || (u.scheme.downcase == 'https' && u.port != 443) ? ":#{u.port}" : ""}#{(u.path && u.path != '') ? u.path : '/'}" 94: end
OAuth parameters
# File lib/oauth/request_proxy/base.rb, line 22 22: def oauth_callback 23: parameters['oauth_callback'] 24: end
# File lib/oauth/request_proxy/base.rb, line 26 26: def oauth_consumer_key 27: parameters['oauth_consumer_key'] 28: end
Authorization header for OAuth
# File lib/oauth/request_proxy/base.rb, line 138 138: def oauth_header(options = {}) 139: header_params_str = oauth_parameters.map { |k,v| "#{k}=\"#{escape(v)}\"" }.join(', ') 140: 141: realm = "realm=\"#{options[:realm]}\", " if options[:realm] 142: "OAuth #{realm}#{header_params_str}" 143: end
# File lib/oauth/request_proxy/base.rb, line 30 30: def oauth_nonce 31: parameters['oauth_nonce'] 32: end
# File lib/oauth/request_proxy/base.rb, line 82 82: def oauth_parameters 83: parameters.select { |k,v| OAuth::PARAMETERS.include?(k) }.reject { |k,v| v == "" } 84: end
# File lib/oauth/request_proxy/base.rb, line 34 34: def oauth_signature 35: # TODO can this be nil? 36: [parameters['oauth_signature']].flatten.first || "" 37: end
# File lib/oauth/request_proxy/base.rb, line 39 39: def oauth_signature_method 40: case parameters['oauth_signature_method'] 41: when Array 42: parameters['oauth_signature_method'].first 43: else 44: parameters['oauth_signature_method'] 45: end 46: end
# File lib/oauth/request_proxy/base.rb, line 48 48: def oauth_timestamp 49: parameters['oauth_timestamp'] 50: end
# File lib/oauth/request_proxy/base.rb, line 52 52: def oauth_token 53: parameters['oauth_token'] 54: end
# File lib/oauth/request_proxy/base.rb, line 56 56: def oauth_verifier 57: parameters['oauth_verifier'] 58: end
# File lib/oauth/request_proxy/base.rb, line 60 60: def oauth_version 61: parameters["oauth_version"] 62: end
Parameter accessors
# File lib/oauth/request_proxy/base.rb, line 74 74: def parameters 75: raise NotImplementedError, "Must be implemented by subclasses" 76: end
# File lib/oauth/request_proxy/base.rb, line 78 78: def parameters_for_signature 79: parameters.reject { |k,v| k == "oauth_signature" || unsigned_parameters.include?(k)} 80: end
# File lib/oauth/request_proxy/base.rb, line 101 101: def sign(options = {}) 102: OAuth::Signature.sign(self, options) 103: end
# File lib/oauth/request_proxy/base.rb, line 105 105: def sign!(options = {}) 106: parameters["oauth_signature"] = sign(options) 107: @signed = true 108: signature 109: end
See 9.1 in specs
# File lib/oauth/request_proxy/base.rb, line 112 112: def signature_base_string 113: base = [method, normalized_uri, normalized_parameters] 114: base.map { |v| escape(v) }.join("&") 115: end
Has this request been signed yet?
# File lib/oauth/request_proxy/base.rb, line 118 118: def signed? 119: @signed 120: end
URI, including OAuth parameters
# File lib/oauth/request_proxy/base.rb, line 123 123: def signed_uri(with_oauth = true) 124: if signed? 125: if with_oauth 126: params = parameters 127: else 128: params = non_oauth_parameters 129: end 130: 131: [uri, normalize(params)] * "?" 132: else 133: STDERR.puts "This request has not yet been signed!" 134: end 135: end
# File lib/oauth/request_proxy/base.rb, line 147 147: def header_params 148: %( X-HTTP_AUTHORIZATION Authorization HTTP_AUTHORIZATION ).each do |header| 149: next unless request.env.include?(header) 150: 151: header = request.env[header] 152: next unless header[0,6] == 'OAuth ' 153: 154: # parse the header into a Hash 155: oauth_params = OAuth::Helper.parse_header(header) 156: 157: # remove non-OAuth parameters 158: oauth_params.reject! { |k,v| k !~ /^oauth_/ } 159: 160: return oauth_params 161: end 162: 163: return {} 164: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.