Class: Genba::ActivationRequest

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

Instance Method Summary collapse

Constructor Details

#initializeActivationRequest

Returns a new instance of ActivationRequest.



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

def initialize
  @schema = Dry::Validation.Schema do
    required(:ClientTransactionID).filled(:str?)
    optional(:EtailerID).filled(:str?)
    required(:Activation).schema do
      required(:Sku).filled(:str?)
      required(:CountryCode).filled(:str?)
      optional(:ConsumerIP).maybe(: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(:EtailerID).filled(:str?)
    end
    optional(:Redemption).schema do
      required(:EndUserID).filled(:str?)
      required(:EndUserTicket).filled(:str?)
    end
  end
end

Instance Method Details

#call(data) ⇒ Object



31
32
33
# File 'lib/genba/activation_request.rb', line 31

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