class Business::BR::CEP::Providers::Postmon

Public Instance Methods

search_by(cep) click to toggle source
# File lib/business-br/cep/providers/postmon.rb, line 10
def search_by(cep)
  @zipcode = cep
  begin
    response = RestClient.get "http://api.postmon.com.br/v1/cep/#{@zipcode}"
    parse_response(response.body)
  rescue RestClient::ExceptionWithResponse => e
    puts e.response if ENV['BUSINESS-BR_DEBUG']
    nil
  end
end

Private Instance Methods

parse_response(response) click to toggle source
# File lib/business-br/cep/providers/postmon.rb, line 23
def parse_response(response)
  json = JSON.parse(response, symbolize_names: true)
  create_entity(
    json, extract: {
      zipcode: :cep,
      street: :logradouro,
      complement: :complemento,
      neighborhood: :bairro,
      city: :cidade,
      state: (json[:estado_info][:nome]).to_s,
      uf: :estado
    }
  )
end