Module: VoucherifySdk::CustomerActivityData
- Defined in:
- lib/VoucherifySdk/models/customer_activity_data.rb
Overview
Event data object schema.
Class Method Summary collapse
-
.build(data) ⇒ Object
Builds the object.
-
.openapi_one_of ⇒ Object
List of class defined in oneOf (OpenAPI v3).
Class Method Details
.build(data) ⇒ Object
Builds the object
98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 |
# File 'lib/VoucherifySdk/models/customer_activity_data.rb', line 98 def build(data) # Go through the list of oneOf items and attempt to identify the appropriate one. # Note: # - We do not attempt to check whether exactly one item matches. # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 }) # due to the way the deserialization is made in the base_object template (it just casts without verifying). # - TODO: scalar values are de facto behaving as if they were nullable. # - TODO: logging when debugging is set. openapi_one_of.each do |klass| begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end openapi_one_of.include?(:AnyType) ? data : nil end |
.openapi_one_of ⇒ Object
List of class defined in oneOf (OpenAPI v3)
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 |
# File 'lib/VoucherifySdk/models/customer_activity_data.rb', line 21 def openapi_one_of [ :'EventCustomerActiveCampaignFailed', :'EventCustomerActiveCampaignRecovered', :'EventCustomerActiveCampaignSent', :'EventCustomerBatchFailed', :'EventCustomerBatchRecovered', :'EventCustomerBatchSent', :'EventCustomerBrazeFailed', :'EventCustomerBrazeRecovered', :'EventCustomerBrazeSent', :'EventCustomerConfirmed', :'EventCustomerConsentsGiven', :'EventCustomerConsentsRevoked', :'EventCustomerCreated', :'EventCustomerCustomEvent', :'EventCustomerDeleted', :'EventCustomerEmailFailed', :'EventCustomerEmailRecovered', :'EventCustomerEmailSent', :'EventCustomerGiftVoucherBalanceAdded', :'EventCustomerIntercomFailed', :'EventCustomerIntercomRecovered', :'EventCustomerIntercomSent', :'EventCustomerKlaviyoFailed', :'EventCustomerKlaviyoRecovered', :'EventCustomerKlaviyoSent', :'EventCustomerLoyaltyCardPointsAdded', :'EventCustomerLoyaltyCardPointsTransferred', :'EventCustomerLoyaltyTierDowngraded', :'EventCustomerLoyaltyTierExpirationChanged', :'EventCustomerLoyaltyTierJoined', :'EventCustomerLoyaltyTierLeft', :'EventCustomerLoyaltyTierProlonged', :'EventCustomerLoyaltyTierUpgraded', :'EventCustomerLoyaltyUpdated', :'EventCustomerMailchimpFailed', :'EventCustomerMailchimpRecovered', :'EventCustomerMailchimpSent', :'EventCustomerOrderCanceled', :'EventCustomerOrderCreated', :'EventCustomerOrderFulfilled', :'EventCustomerOrderPaid', :'EventCustomerOrderProcessing', :'EventCustomerOrderUpdated', :'EventCustomerPublicationFailed', :'EventCustomerPublicationSucceeded', :'EventCustomerRedemptionFailed', :'EventCustomerRedemptionRollbackFailed', :'EventCustomerRedemptionRollbackSucceeded', :'EventCustomerRedemptionSucceeded', :'EventCustomerReferred', :'EventCustomerRewardRedemptionsCompleted', :'EventCustomerRewardRedemptionsCreated', :'EventCustomerRewardRedemptionsPending', :'EventCustomerRewardRedemptionsRolledBack', :'EventCustomerRewarded', :'EventCustomerRewardedLoyaltyPoints', :'EventCustomerSegmentEntered', :'EventCustomerSegmentLeft', :'EventCustomerShopifyFailed', :'EventCustomerShopifyRecovered', :'EventCustomerShopifySent', :'EventCustomerSmsFailed', :'EventCustomerSmsRecovered', :'EventCustomerSmsSent', :'EventCustomerUpdated', :'EventCustomerValidationFailed', :'EventCustomerValidationSucceeded', :'EventCustomerVoucherDeleted', :'EventCustomerVouchersLoyaltyPointsExpired' ] end |