Class: BrasilfoneAPI::HttpAPIHandler::ServiceURI::URIBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/brasilfone_api/http_api_handler/service_uri.rb

Instance Method Summary collapse

Constructor Details

#initialize(service, parameters) ⇒ URIBuilder

Returns a new instance of URIBuilder.



16
17
18
19
# File 'lib/brasilfone_api/http_api_handler/service_uri.rb', line 16

def initialize(service, parameters)
  @service = service
  @parameters = parameters
end

Instance Method Details

#buildObject



21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/brasilfone_api/http_api_handler/service_uri.rb', line 21

def build
  service_exists = URIConstants::SERVICES_NAMES.key?(@service)
  raise 'Invalid Service' unless service_exists
  @parameters.each do |param, _value|
    param_exists = URIConstants::PARAMETERS_NAMES.key?(param)
    raise 'Invalid Paramenters' unless param_exists
  end

  uri = URI(URIConstants::BRASILFONE_BASE_URI)
  uri.query = uri_parameters
  uri
end