Class: PostcodeValidation::UseCase::AddressList

Inherits:
Object
  • Object
show all
Defined in:
lib/postcode_validation/use_case/address_list.rb

Instance Method Summary collapse

Constructor Details

#initialize(address_list_gateway:, logger: nil) ⇒ AddressList

Returns a new instance of AddressList.



6
7
8
9
10
# File 'lib/postcode_validation/use_case/address_list.rb', line 6

def initialize(address_list_gateway:, logger: nil)
  @address_list_gateway = address_list_gateway
  @logger = logger
  @errors = []
end

Instance Method Details

#execute(postcode:, country:) ⇒ Object



12
13
14
15
16
17
18
19
# File 'lib/postcode_validation/use_case/address_list.rb', line 12

def execute(postcode:, country:)
  check_country(country)
  addresses = matched_addresses(postcode, country)

  formatted(addresses)
rescue PostcodeValidation::Error::RequestError => e
  log_error(e)
end