Sha256: 30c8123a7f09a115817212a3608fa597e3270e182cfbcb2c039dcc549e5fc85a

Contents?: true

Size: 638 Bytes

Versions: 3

Compression:

Stored size: 638 Bytes

Contents

require 'active_interaction'
require 'net/http'
require './lib/mercadolibre_api/categories/entities/category'

module MercadolibreApi
  module Categories
    module Queries
      class Find < ActiveInteraction::Base
        string :category_id

        def execute
          response = Net::HTTP.get_response(uri)
          response_body = JSON.parse(response.body, symbolize_names: true)
          MercadolibreApi::Categories::Entities::Category.represent(response_body).as_json
        end

        private

        def uri
          URI("https://api.mercadolibre.com/categories/#{category_id}")
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
mercadolibre_api-0.5 lib/mercadolibre_api/categories/queries/find.rb
mercadolibre_api-0.4 lib/mercadolibre_api/categories/queries/find.rb
mercadolibre_api-0.3 lib/mercadolibre_api/categories/queries/find.rb