Module: PinterestSdkClient::TargetingSpecOperations

Defined in:
lib/pinterest_sdk/models/targeting_spec_operations.rb

Class Method Summary collapse

Class Method Details

.build(data) ⇒ Object

Builds the object

Parameters:

  • Data (Mixed)

    to be matched against the list of oneOf items

Returns:

  • (Object)

    Returns the model or the data itself



67
68
69
70
71
72
73
74
75
# File 'lib/pinterest_sdk/models/targeting_spec_operations.rb', line 67

def build(data)
  discriminator_value = data[openapi_discriminator_name]
  return nil if discriminator_value.nil?

  klass = openapi_discriminator_mapping[discriminator_value.to_s.to_sym]
  return nil unless klass

  PinterestSdkClient.const_get(klass).build_from_hash(data)
end

.openapi_discriminator_mappingObject

Discriminator's mapping (OpenAPI v3)



45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/pinterest_sdk/models/targeting_spec_operations.rb', line 45

def openapi_discriminator_mapping
  {
    :'AGE_BUCKET' => :'TargetingSpecOperationAgeBucket',
    :'APPTYPE' => :'TargetingSpecOperationAppType',
    :'AUDIENCE_EXCLUDE' => :'TargetingSpecOperationAudienceExclude',
    :'AUDIENCE_INCLUDE' => :'TargetingSpecOperationAudienceInclude',
    :'GENDER' => :'TargetingSpecOperationGender',
    :'GEO' => :'TargetingSpecOperationGeo',
    :'GEO_EXCLUDE' => :'TargetingSpecOperationGeoExclude',
    :'INTEREST' => :'TargetingSpecOperationInterest',
    :'LOCALE' => :'TargetingSpecOperationLocale',
    :'LOCATION' => :'TargetingSpecOperationLocation',
    :'LOCATION_EXCLUDE' => :'TargetingSpecOperationLocationExclude',
    :'MAXIMUM_AGE' => :'TargetingSpecOperationMaximumAge',
    :'MINIMUM_AGE' => :'TargetingSpecOperationMinimumAge',
    :'SHOPPING_RETARGETING' => :'TargetingSpecOperationShoppingRetargeting'
  }
end

.openapi_discriminator_nameObject

Discriminator's property name (OpenAPI v3)



40
41
42
# File 'lib/pinterest_sdk/models/targeting_spec_operations.rb', line 40

def openapi_discriminator_name
  :'field'
end

.openapi_one_ofObject

List of class defined in oneOf (OpenAPI v3)



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/pinterest_sdk/models/targeting_spec_operations.rb', line 20

def openapi_one_of
  [
    :'TargetingSpecOperationAgeBucket',
    :'TargetingSpecOperationAppType',
    :'TargetingSpecOperationAudienceExclude',
    :'TargetingSpecOperationAudienceInclude',
    :'TargetingSpecOperationGender',
    :'TargetingSpecOperationGeo',
    :'TargetingSpecOperationGeoExclude',
    :'TargetingSpecOperationInterest',
    :'TargetingSpecOperationLocale',
    :'TargetingSpecOperationLocation',
    :'TargetingSpecOperationLocationExclude',
    :'TargetingSpecOperationMaximumAge',
    :'TargetingSpecOperationMinimumAge',
    :'TargetingSpecOperationShoppingRetargeting'
  ]
end