Class: Genba::ReservationRequest

Inherits:
Object
  • Object
show all
Defined in:
lib/genba/reservation_request.rb

Instance Method Summary collapse

Constructor Details

#initializeReservationRequest

Returns a new instance of ReservationRequest.



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/genba/reservation_request.rb', line 5

def initialize
  @schema = Dry::Validation.Schema do
    required(:ClientTransactionID).filled(:str?)
    required(:Properties).schema do
      required(:Sku).filled(:str?)
      optional(:BuyingPrice).schema do
        required(:Amount).filled(:float?)
        required(:CurrencyCode).filled(:str?)
      end
      required(:SellingPrice).schema do
        required(:NetAmount).filled(:float?)
        required(:GrossAmount).filled(:float?)
        required(:CurrencyCode).filled(:str?)
      end
      optional(:ConsumerIP).maybe(:str?)
      required(:CountryCode).filled(:str?)
      optional(:EtailerID).filled(:str?)
    end
  end
end

Instance Method Details

#call(data) ⇒ Object



26
27
28
# File 'lib/genba/reservation_request.rb', line 26

def call(data)
  @schema.call(data)
end