Sha256: cebd693992ca253c63bbc7f182a07b3f7146761278df7455aef83c677e78a053

Contents?: true

Size: 1.03 KB

Versions: 5

Compression:

Stored size: 1.03 KB

Contents

# frozen_string_literal: true

module OAuth
  class CLI
    class QueryCommand < BaseCommand
      extend OAuth::Helper

      def required_options
        %i[oauth_consumer_key oauth_consumer_secret oauth_token oauth_token_secret]
      end

      def _run
        consumer = OAuth::Consumer.new(options[:oauth_consumer_key], options[:oauth_consumer_secret],
                                       scheme: options[:scheme])

        access_token = OAuth::AccessToken.new(consumer, options[:oauth_token], options[:oauth_token_secret])

        # append params to the URL
        uri = URI.parse(options[:uri])
        params = parameters.map do |k, v|
          Array(v).map do |v2|
            "#{OAuth::Helper.escape(k)}=#{OAuth::Helper.escape(v2)}"
          end * "&"
        end
        uri.query = [uri.query, *params].compact * "&"
        puts uri.to_s

        response = access_token.request(options[:method].to_s.downcase.to_sym, uri.to_s)
        puts "#{response.code} #{response.message}"
        puts response.body
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
oauth-1.0.1 lib/oauth/cli/query_command.rb
oauth-0.6.2 lib/oauth/cli/query_command.rb
oauth-1.0.0 lib/oauth/cli/query_command.rb
oauth-0.6.1 lib/oauth/cli/query_command.rb
oauth-0.6.0 lib/oauth/cli/query_command.rb