# File lib/aws/s3/s3_object.rb, line 1244
      def url_for(method, options = {})

        options = options.dup
        options[:expires] = expiration_timestamp(options[:expires])
        options[:secure] = config.use_ssl? unless options.key?(:secure)
        options[:signature_version] ||= config.s3_signature_version

        case options[:signature_version]
        when :v3 then presign_v3(method, options)
        when :v4 then presign_v4(method, options)
        else
          msg = "invalid signature version, expected :v3 or :v4, got "
          msg << options[:signature_version].inspect
          raise ArgumentError, msg
        end
      end