Class: Nfe::AddressLookupResponse
- Inherits:
-
Data
- Object
- Data
- Nfe::AddressLookupResponse
- Defined in:
- lib/nfe/resources/dto/addresses/address_lookup_response.rb,
sig/nfe/resources/dto/addresses/address_lookup_response.rbs
Overview
Immutable value object wrapping the addresses returned by a lookup.
AddressLookupResponse.from_api is nil-tolerant and accepts BOTH response shapes the API uses:
the list shape (+{ "addresses" => [...] }+, e.g. term/$filter search) and
the single-result shape the postal-code lookup actually returns
(+{ "address" => ... }+) — the latter is normalized into a one-element
addresses list, so callers always read response.addresses.
Instance Attribute Summary collapse
-
#addresses ⇒ Array[Nfe::Address?]
readonly
Returns the value of attribute addresses.
Class Method Summary collapse
-
.from_api(payload) ⇒ Nfe::AddressLookupResponse?
nilwhenpayloadisnil. - .new ⇒ instance
Instance Method Summary collapse
-
#initialize ⇒ AddressLookupResponse
constructor
A new instance of AddressLookupResponse.
Constructor Details
#initialize ⇒ AddressLookupResponse
Returns a new instance of AddressLookupResponse.
38 |
# File 'sig/nfe/resources/dto/addresses/address_lookup_response.rbs', line 38
def initialize: (addresses: Array[Nfe::Address?]) -> void
|
Instance Attribute Details
#addresses ⇒ Array[Nfe::Address?] (readonly)
Returns the value of attribute addresses.
32 33 34 |
# File 'sig/nfe/resources/dto/addresses/address_lookup_response.rbs', line 32 def addresses @addresses end |
Class Method Details
.from_api(payload) ⇒ Nfe::AddressLookupResponse?
Returns nil when payload is nil.
70 71 72 73 74 75 |
# File 'lib/nfe/resources/dto/addresses/address_lookup_response.rb', line 70 def self.from_api(payload) return nil if payload.nil? raw = payload["addresses"] || [payload["address"]].compact new(addresses: raw.map { |item| Nfe::Address.from_api(item) }) end |
.new ⇒ instance
36 |
# File 'sig/nfe/resources/dto/addresses/address_lookup_response.rbs', line 36
def self.new: (addresses: Array[Nfe::Address?]) -> instance
|