lib/oauthenticator/parse_authorization.rb in oauthenticator-1.4.0 vs lib/oauthenticator/parse_authorization.rb in oauthenticator-1.4.1

- old
+ new

@@ -55,27 +55,23 @@ raise DuplicatedParameters.new("Received duplicate parameters: #{duplicates.keys.inspect}", errors) end return attributes.map { |k,v| {k => v.first} }.inject({}, &:update) end + # @private + URI_PARSER = URI.const_defined?(:DEFAULT_PARSER) ? URI::DEFAULT_PARSER : URI + # escape a value # @param value [String] value # @return [String] escaped value def escape(value) - uri_parser.escape(value.to_s, /[^a-z0-9\-\.\_\~]/i) + URI_PARSER.escape(value.to_s, /[^a-z0-9\-\.\_\~]/i) end # unescape a value # @param value [String] escaped value # @return [String] unescaped value def unescape(value) - uri_parser.unescape(value.to_s) - end - - private - - # @return [Object] a parser that responds to #escape and #unescape - def uri_parser - @uri_parser ||= URI.const_defined?(:Parser) ? URI::Parser.new : URI + URI_PARSER.unescape(value.to_s) end end end