Sha256: 0a01fb06f8c5b8c85148a4f5cfbc395ecefd3bad764978c52f3762cf7611f6ce

Contents?: true

Size: 1.06 KB

Versions: 6

Compression:

Stored size: 1.06 KB

Contents

require 'json'
module Oauth
  module Models
    module Consumers
      # This is just a simple
      class SimpleClient
        attr_reader :token

        def initialize(token)
          @token = token
        end


        def put(path,params={})
          parse(token.put(path,params, {'Accept' => 'application/json'}))
        end

        def delete(path)
          parse(token.delete(path, {'Accept' => 'application/json'}))
        end

        def post(path,params={})
          parse(token.post(path,params, {'Accept' => 'application/json'}))
        end

        def get(path)
          parse(token.get(path, {'Accept' => 'application/json'}))
        end

        protected

        def parse(response)
          return false unless response
          if ["200","201"].include? response.code
            unless response.body.blank?
              JSON.parse(response.body)
            else
              true
            end
          else
            logger.debug "Got Response code: #{response.code}"
            false
          end

        end

      end
    end
  end
end

Version data entries

6 entries across 6 versions & 3 rubygems

Version Path
houston-oauth-plugin-0.5.1 lib/oauth/models/consumers/simple_client.rb
panjiva-oauth-plugin-0.4.1 lib/oauth/models/consumers/simple_client.rb
oauth-plugin-0.5.1 lib/oauth/models/consumers/simple_client.rb
oauth-plugin-0.5.0 lib/oauth/models/consumers/simple_client.rb
oauth-plugin-0.4.1 lib/oauth/models/consumers/simple_client.rb
oauth-plugin-0.4.0 lib/oauth/models/consumers/simple_client.rb