talon_one 1.3.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +14 -6
- data/docs/AccountAnalytics.md +1 -0
- data/docs/AccountLimits.md +1 -0
- data/docs/Application.md +1 -0
- data/docs/AttributesMandatory.md +9 -0
- data/docs/AttributesSettings.md +8 -0
- data/docs/BaseSamlConnection.md +15 -0
- data/docs/CampaignAnalytics.md +9 -3
- data/docs/CampaignCopy.md +4 -0
- data/docs/Change.md +2 -2
- data/docs/CustomerInventory.md +9 -0
- data/docs/InlineResponse20020.md +1 -1
- data/docs/InlineResponse20021.md +1 -1
- data/docs/InlineResponse20022.md +1 -1
- data/docs/InlineResponse20023.md +1 -1
- data/docs/InlineResponse20024.md +1 -1
- data/docs/InlineResponse20025.md +2 -3
- data/docs/InlineResponse20026.md +3 -2
- data/docs/InlineResponse20027.md +1 -1
- data/docs/InlineResponse20028.md +1 -1
- data/docs/InlineResponse20029.md +9 -0
- data/docs/IntegrationApi.md +66 -0
- data/docs/ManagementApi.md +162 -101
- data/docs/NewApplication.md +1 -0
- data/docs/NewSamlConnection.md +3 -2
- data/docs/SamlConnection.md +4 -5
- data/docs/SamlConnectionMetadata.md +11 -0
- data/docs/UpdateApplication.md +1 -0
- data/lib/talon_one.rb +6 -0
- data/lib/talon_one/api/integration_api.rb +60 -0
- data/lib/talon_one/api/management_api.rb +177 -119
- data/lib/talon_one/models/account_analytics.rb +19 -4
- data/lib/talon_one/models/account_limits.rb +11 -1
- data/lib/talon_one/models/application.rb +10 -1
- data/lib/talon_one/models/attributes_mandatory.rb +199 -0
- data/lib/talon_one/models/attributes_settings.rb +184 -0
- data/lib/talon_one/models/base_saml_connection.rb +336 -0
- data/lib/talon_one/models/campaign_analytics.rb +94 -4
- data/lib/talon_one/models/campaign_copy.rb +46 -4
- data/lib/talon_one/models/change.rb +2 -2
- data/lib/talon_one/models/customer_inventory.rb +194 -0
- data/lib/talon_one/models/inline_response_200_20.rb +1 -1
- data/lib/talon_one/models/inline_response_200_21.rb +1 -1
- data/lib/talon_one/models/inline_response_200_22.rb +1 -1
- data/lib/talon_one/models/inline_response_200_23.rb +1 -1
- data/lib/talon_one/models/inline_response_200_24.rb +1 -1
- data/lib/talon_one/models/inline_response_200_25.rb +7 -11
- data/lib/talon_one/models/inline_response_200_26.rb +11 -7
- data/lib/talon_one/models/inline_response_200_27.rb +1 -1
- data/lib/talon_one/models/inline_response_200_28.rb +1 -1
- data/lib/talon_one/models/inline_response_200_29.rb +204 -0
- data/lib/talon_one/models/new_application.rb +10 -1
- data/lib/talon_one/models/new_saml_connection.rb +58 -43
- data/lib/talon_one/models/saml_connection.rb +45 -78
- data/lib/talon_one/models/saml_connection_metadata.rb +271 -0
- data/lib/talon_one/models/update_application.rb +13 -4
- data/lib/talon_one/version.rb +1 -1
- data/spec/api/integration_api_spec.rb +14 -0
- data/spec/api/management_api_spec.rb +50 -36
- data/spec/models/account_analytics_spec.rb +6 -0
- data/spec/models/account_limits_spec.rb +6 -0
- data/spec/models/application_spec.rb +6 -0
- data/spec/models/attributes_mandatory_spec.rb +47 -0
- data/spec/models/attributes_settings_spec.rb +41 -0
- data/spec/models/base_saml_connection_spec.rb +83 -0
- data/spec/models/campaign_analytics_spec.rb +36 -0
- data/spec/models/campaign_copy_spec.rb +24 -0
- data/spec/models/customer_inventory_spec.rb +47 -0
- data/spec/models/inline_response_200_25_spec.rb +0 -6
- data/spec/models/inline_response_200_26_spec.rb +6 -0
- data/spec/models/inline_response_200_29_spec.rb +47 -0
- data/spec/models/new_application_spec.rb +6 -0
- data/spec/models/new_saml_connection_spec.rb +13 -7
- data/spec/models/saml_connection_metadata_spec.rb +59 -0
- data/spec/models/saml_connection_spec.rb +9 -15
- data/spec/models/update_application_spec.rb +6 -0
- data/talon_one-1.3.0.gem +0 -0
- metadata +27 -2
@@ -56,6 +56,9 @@ module TalonOne
|
|
56
56
|
# Total Number of loyalty programs inside the account
|
57
57
|
attr_accessor :loyalty_programs
|
58
58
|
|
59
|
+
# Total Number of active rules in the account
|
60
|
+
attr_accessor :active_rules
|
61
|
+
|
59
62
|
# Attribute mapping from ruby-style variable name to JSON key.
|
60
63
|
def self.attribute_map
|
61
64
|
{
|
@@ -72,7 +75,8 @@ module TalonOne
|
|
72
75
|
:'users' => :'users',
|
73
76
|
:'roles' => :'roles',
|
74
77
|
:'webhooks' => :'webhooks',
|
75
|
-
:'loyalty_programs' => :'loyaltyPrograms'
|
78
|
+
:'loyalty_programs' => :'loyaltyPrograms',
|
79
|
+
:'active_rules' => :'activeRules'
|
76
80
|
}
|
77
81
|
end
|
78
82
|
|
@@ -92,7 +96,8 @@ module TalonOne
|
|
92
96
|
:'users' => :'Integer',
|
93
97
|
:'roles' => :'Integer',
|
94
98
|
:'webhooks' => :'Integer',
|
95
|
-
:'loyalty_programs' => :'Integer'
|
99
|
+
:'loyalty_programs' => :'Integer',
|
100
|
+
:'active_rules' => :'Integer'
|
96
101
|
}
|
97
102
|
end
|
98
103
|
|
@@ -159,6 +164,10 @@ module TalonOne
|
|
159
164
|
if attributes.has_key?(:'loyaltyPrograms')
|
160
165
|
self.loyalty_programs = attributes[:'loyaltyPrograms']
|
161
166
|
end
|
167
|
+
|
168
|
+
if attributes.has_key?(:'activeRules')
|
169
|
+
self.active_rules = attributes[:'activeRules']
|
170
|
+
end
|
162
171
|
end
|
163
172
|
|
164
173
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -221,6 +230,10 @@ module TalonOne
|
|
221
230
|
invalid_properties.push('invalid value for "loyalty_programs", loyalty_programs cannot be nil.')
|
222
231
|
end
|
223
232
|
|
233
|
+
if @active_rules.nil?
|
234
|
+
invalid_properties.push('invalid value for "active_rules", active_rules cannot be nil.')
|
235
|
+
end
|
236
|
+
|
224
237
|
invalid_properties
|
225
238
|
end
|
226
239
|
|
@@ -241,6 +254,7 @@ module TalonOne
|
|
241
254
|
return false if @roles.nil?
|
242
255
|
return false if @webhooks.nil?
|
243
256
|
return false if @loyalty_programs.nil?
|
257
|
+
return false if @active_rules.nil?
|
244
258
|
true
|
245
259
|
end
|
246
260
|
|
@@ -262,7 +276,8 @@ module TalonOne
|
|
262
276
|
users == o.users &&
|
263
277
|
roles == o.roles &&
|
264
278
|
webhooks == o.webhooks &&
|
265
|
-
loyalty_programs == o.loyalty_programs
|
279
|
+
loyalty_programs == o.loyalty_programs &&
|
280
|
+
active_rules == o.active_rules
|
266
281
|
end
|
267
282
|
|
268
283
|
# @see the `==` method
|
@@ -274,7 +289,7 @@ module TalonOne
|
|
274
289
|
# Calculates hash code according to all attributes.
|
275
290
|
# @return [Fixnum] Hash code
|
276
291
|
def hash
|
277
|
-
[applications, active_campaigns, campaigns, coupons, active_coupons, expired_coupons, custom_attributes, referral_codes, active_referral_codes, expired_referral_codes, users, roles, webhooks, loyalty_programs].hash
|
292
|
+
[applications, active_campaigns, campaigns, coupons, active_coupons, expired_coupons, custom_attributes, referral_codes, active_referral_codes, expired_referral_codes, users, roles, webhooks, loyalty_programs, active_rules].hash
|
278
293
|
end
|
279
294
|
|
280
295
|
# Builds the object from hash
|
@@ -44,6 +44,9 @@ module TalonOne
|
|
44
44
|
# Total allowed api volume
|
45
45
|
attr_accessor :api_volume
|
46
46
|
|
47
|
+
# Total allowed active rulesets
|
48
|
+
attr_accessor :active_rules
|
49
|
+
|
47
50
|
# array of rulesets where webhook is used
|
48
51
|
attr_accessor :promotion_types
|
49
52
|
|
@@ -60,6 +63,7 @@ module TalonOne
|
|
60
63
|
:'webhooks' => :'webhooks',
|
61
64
|
:'users' => :'users',
|
62
65
|
:'api_volume' => :'apiVolume',
|
66
|
+
:'active_rules' => :'activeRules',
|
63
67
|
:'promotion_types' => :'promotionTypes'
|
64
68
|
}
|
65
69
|
end
|
@@ -77,6 +81,7 @@ module TalonOne
|
|
77
81
|
:'webhooks' => :'Integer',
|
78
82
|
:'users' => :'Integer',
|
79
83
|
:'api_volume' => :'Integer',
|
84
|
+
:'active_rules' => :'Integer',
|
80
85
|
:'promotion_types' => :'Array<String>'
|
81
86
|
}
|
82
87
|
end
|
@@ -129,6 +134,10 @@ module TalonOne
|
|
129
134
|
self.api_volume = attributes[:'apiVolume']
|
130
135
|
end
|
131
136
|
|
137
|
+
if attributes.has_key?(:'activeRules')
|
138
|
+
self.active_rules = attributes[:'activeRules']
|
139
|
+
end
|
140
|
+
|
132
141
|
if attributes.has_key?(:'promotionTypes')
|
133
142
|
if (value = attributes[:'promotionTypes']).is_a?(Array)
|
134
143
|
self.promotion_types = value
|
@@ -219,6 +228,7 @@ module TalonOne
|
|
219
228
|
webhooks == o.webhooks &&
|
220
229
|
users == o.users &&
|
221
230
|
api_volume == o.api_volume &&
|
231
|
+
active_rules == o.active_rules &&
|
222
232
|
promotion_types == o.promotion_types
|
223
233
|
end
|
224
234
|
|
@@ -231,7 +241,7 @@ module TalonOne
|
|
231
241
|
# Calculates hash code according to all attributes.
|
232
242
|
# @return [Fixnum] Hash code
|
233
243
|
def hash
|
234
|
-
[live_applications, sandbox_applications, active_campaigns, coupons, referral_codes, live_loyalty_programs, sandbox_loyalty_programs, webhooks, users, api_volume, promotion_types].hash
|
244
|
+
[live_applications, sandbox_applications, active_campaigns, coupons, referral_codes, live_loyalty_programs, sandbox_loyalty_programs, webhooks, users, api_volume, active_rules, promotion_types].hash
|
235
245
|
end
|
236
246
|
|
237
247
|
# Builds the object from hash
|
@@ -48,6 +48,8 @@ module TalonOne
|
|
48
48
|
# Default limits for campaigns created in this application
|
49
49
|
attr_accessor :limits
|
50
50
|
|
51
|
+
attr_accessor :attributes_settings
|
52
|
+
|
51
53
|
# Hex key for HMAC-signing API calls as coming from this application (16 hex digits)
|
52
54
|
attr_accessor :key
|
53
55
|
|
@@ -90,6 +92,7 @@ module TalonOne
|
|
90
92
|
:'case_sensitivity' => :'caseSensitivity',
|
91
93
|
:'attributes' => :'attributes',
|
92
94
|
:'limits' => :'limits',
|
95
|
+
:'attributes_settings' => :'attributesSettings',
|
93
96
|
:'key' => :'key',
|
94
97
|
:'loyalty_programs' => :'loyaltyPrograms'
|
95
98
|
}
|
@@ -109,6 +112,7 @@ module TalonOne
|
|
109
112
|
:'case_sensitivity' => :'String',
|
110
113
|
:'attributes' => :'Object',
|
111
114
|
:'limits' => :'Array<LimitConfig>',
|
115
|
+
:'attributes_settings' => :'AttributesSettings',
|
112
116
|
:'key' => :'String',
|
113
117
|
:'loyalty_programs' => :'Array<LoyaltyProgram>'
|
114
118
|
}
|
@@ -168,6 +172,10 @@ module TalonOne
|
|
168
172
|
end
|
169
173
|
end
|
170
174
|
|
175
|
+
if attributes.has_key?(:'attributesSettings')
|
176
|
+
self.attributes_settings = attributes[:'attributesSettings']
|
177
|
+
end
|
178
|
+
|
171
179
|
if attributes.has_key?(:'key')
|
172
180
|
self.key = attributes[:'key']
|
173
181
|
end
|
@@ -359,6 +367,7 @@ module TalonOne
|
|
359
367
|
case_sensitivity == o.case_sensitivity &&
|
360
368
|
attributes == o.attributes &&
|
361
369
|
limits == o.limits &&
|
370
|
+
attributes_settings == o.attributes_settings &&
|
362
371
|
key == o.key &&
|
363
372
|
loyalty_programs == o.loyalty_programs
|
364
373
|
end
|
@@ -372,7 +381,7 @@ module TalonOne
|
|
372
381
|
# Calculates hash code according to all attributes.
|
373
382
|
# @return [Fixnum] Hash code
|
374
383
|
def hash
|
375
|
-
[id, created, modified, account_id, name, description, timezone, currency, case_sensitivity, attributes, limits, key, loyalty_programs].hash
|
384
|
+
[id, created, modified, account_id, name, description, timezone, currency, case_sensitivity, attributes, limits, attributes_settings, key, loyalty_programs].hash
|
376
385
|
end
|
377
386
|
|
378
387
|
# Builds the object from hash
|
@@ -0,0 +1,199 @@
|
|
1
|
+
=begin
|
2
|
+
#Talon.One API
|
3
|
+
|
4
|
+
#The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
|
5
|
+
|
6
|
+
OpenAPI spec version: 1.0.0
|
7
|
+
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
9
|
+
Swagger Codegen version: 2.4.7
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module TalonOne
|
16
|
+
# Arbitrary settings associated with attributes.
|
17
|
+
class AttributesMandatory
|
18
|
+
# List of mandatory attributes for campaigns.
|
19
|
+
attr_accessor :campaigns
|
20
|
+
|
21
|
+
# List of mandatory attributes for campaigns.
|
22
|
+
attr_accessor :coupons
|
23
|
+
|
24
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
25
|
+
def self.attribute_map
|
26
|
+
{
|
27
|
+
:'campaigns' => :'campaigns',
|
28
|
+
:'coupons' => :'coupons'
|
29
|
+
}
|
30
|
+
end
|
31
|
+
|
32
|
+
# Attribute type mapping.
|
33
|
+
def self.swagger_types
|
34
|
+
{
|
35
|
+
:'campaigns' => :'Array<String>',
|
36
|
+
:'coupons' => :'Array<String>'
|
37
|
+
}
|
38
|
+
end
|
39
|
+
|
40
|
+
# Initializes the object
|
41
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
42
|
+
def initialize(attributes = {})
|
43
|
+
return unless attributes.is_a?(Hash)
|
44
|
+
|
45
|
+
# convert string to symbol for hash key
|
46
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
47
|
+
|
48
|
+
if attributes.has_key?(:'campaigns')
|
49
|
+
if (value = attributes[:'campaigns']).is_a?(Array)
|
50
|
+
self.campaigns = value
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
if attributes.has_key?(:'coupons')
|
55
|
+
if (value = attributes[:'coupons']).is_a?(Array)
|
56
|
+
self.coupons = value
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
62
|
+
# @return Array for valid properties with the reasons
|
63
|
+
def list_invalid_properties
|
64
|
+
invalid_properties = Array.new
|
65
|
+
invalid_properties
|
66
|
+
end
|
67
|
+
|
68
|
+
# Check to see if the all the properties in the model are valid
|
69
|
+
# @return true if the model is valid
|
70
|
+
def valid?
|
71
|
+
true
|
72
|
+
end
|
73
|
+
|
74
|
+
# Checks equality by comparing each attribute.
|
75
|
+
# @param [Object] Object to be compared
|
76
|
+
def ==(o)
|
77
|
+
return true if self.equal?(o)
|
78
|
+
self.class == o.class &&
|
79
|
+
campaigns == o.campaigns &&
|
80
|
+
coupons == o.coupons
|
81
|
+
end
|
82
|
+
|
83
|
+
# @see the `==` method
|
84
|
+
# @param [Object] Object to be compared
|
85
|
+
def eql?(o)
|
86
|
+
self == o
|
87
|
+
end
|
88
|
+
|
89
|
+
# Calculates hash code according to all attributes.
|
90
|
+
# @return [Fixnum] Hash code
|
91
|
+
def hash
|
92
|
+
[campaigns, coupons].hash
|
93
|
+
end
|
94
|
+
|
95
|
+
# Builds the object from hash
|
96
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
97
|
+
# @return [Object] Returns the model itself
|
98
|
+
def build_from_hash(attributes)
|
99
|
+
return nil unless attributes.is_a?(Hash)
|
100
|
+
self.class.swagger_types.each_pair do |key, type|
|
101
|
+
if type =~ /\AArray<(.*)>/i
|
102
|
+
# check to ensure the input is an array given that the the attribute
|
103
|
+
# is documented as an array but the input is not
|
104
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
105
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
106
|
+
end
|
107
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
108
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
109
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
110
|
+
end
|
111
|
+
|
112
|
+
self
|
113
|
+
end
|
114
|
+
|
115
|
+
# Deserializes the data based on type
|
116
|
+
# @param string type Data type
|
117
|
+
# @param string value Value to be deserialized
|
118
|
+
# @return [Object] Deserialized data
|
119
|
+
def _deserialize(type, value)
|
120
|
+
case type.to_sym
|
121
|
+
when :DateTime
|
122
|
+
DateTime.parse(value)
|
123
|
+
when :Date
|
124
|
+
Date.parse(value)
|
125
|
+
when :String
|
126
|
+
value.to_s
|
127
|
+
when :Integer
|
128
|
+
value.to_i
|
129
|
+
when :Float
|
130
|
+
value.to_f
|
131
|
+
when :BOOLEAN
|
132
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
133
|
+
true
|
134
|
+
else
|
135
|
+
false
|
136
|
+
end
|
137
|
+
when :Object
|
138
|
+
# generic object (usually a Hash), return directly
|
139
|
+
value
|
140
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
141
|
+
inner_type = Regexp.last_match[:inner_type]
|
142
|
+
value.map { |v| _deserialize(inner_type, v) }
|
143
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
144
|
+
k_type = Regexp.last_match[:k_type]
|
145
|
+
v_type = Regexp.last_match[:v_type]
|
146
|
+
{}.tap do |hash|
|
147
|
+
value.each do |k, v|
|
148
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
149
|
+
end
|
150
|
+
end
|
151
|
+
else # model
|
152
|
+
temp_model = TalonOne.const_get(type).new
|
153
|
+
temp_model.build_from_hash(value)
|
154
|
+
end
|
155
|
+
end
|
156
|
+
|
157
|
+
# Returns the string representation of the object
|
158
|
+
# @return [String] String presentation of the object
|
159
|
+
def to_s
|
160
|
+
to_hash.to_s
|
161
|
+
end
|
162
|
+
|
163
|
+
# to_body is an alias to to_hash (backward compatibility)
|
164
|
+
# @return [Hash] Returns the object in the form of hash
|
165
|
+
def to_body
|
166
|
+
to_hash
|
167
|
+
end
|
168
|
+
|
169
|
+
# Returns the object in the form of hash
|
170
|
+
# @return [Hash] Returns the object in the form of hash
|
171
|
+
def to_hash
|
172
|
+
hash = {}
|
173
|
+
self.class.attribute_map.each_pair do |attr, param|
|
174
|
+
value = self.send(attr)
|
175
|
+
next if value.nil?
|
176
|
+
hash[param] = _to_hash(value)
|
177
|
+
end
|
178
|
+
hash
|
179
|
+
end
|
180
|
+
|
181
|
+
# Outputs non-array value in the form of hash
|
182
|
+
# For object, use to_hash. Otherwise, just return the value
|
183
|
+
# @param [Object] value Any valid value
|
184
|
+
# @return [Hash] Returns the value in the form of hash
|
185
|
+
def _to_hash(value)
|
186
|
+
if value.is_a?(Array)
|
187
|
+
value.compact.map { |v| _to_hash(v) }
|
188
|
+
elsif value.is_a?(Hash)
|
189
|
+
{}.tap do |hash|
|
190
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
191
|
+
end
|
192
|
+
elsif value.respond_to? :to_hash
|
193
|
+
value.to_hash
|
194
|
+
else
|
195
|
+
value
|
196
|
+
end
|
197
|
+
end
|
198
|
+
end
|
199
|
+
end
|
@@ -0,0 +1,184 @@
|
|
1
|
+
=begin
|
2
|
+
#Talon.One API
|
3
|
+
|
4
|
+
#The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
|
5
|
+
|
6
|
+
OpenAPI spec version: 1.0.0
|
7
|
+
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
9
|
+
Swagger Codegen version: 2.4.7
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module TalonOne
|
16
|
+
# Arbitrary settings associated with attributes.
|
17
|
+
class AttributesSettings
|
18
|
+
attr_accessor :mandatory
|
19
|
+
|
20
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
21
|
+
def self.attribute_map
|
22
|
+
{
|
23
|
+
:'mandatory' => :'mandatory'
|
24
|
+
}
|
25
|
+
end
|
26
|
+
|
27
|
+
# Attribute type mapping.
|
28
|
+
def self.swagger_types
|
29
|
+
{
|
30
|
+
:'mandatory' => :'AttributesMandatory'
|
31
|
+
}
|
32
|
+
end
|
33
|
+
|
34
|
+
# Initializes the object
|
35
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
36
|
+
def initialize(attributes = {})
|
37
|
+
return unless attributes.is_a?(Hash)
|
38
|
+
|
39
|
+
# convert string to symbol for hash key
|
40
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
41
|
+
|
42
|
+
if attributes.has_key?(:'mandatory')
|
43
|
+
self.mandatory = attributes[:'mandatory']
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
48
|
+
# @return Array for valid properties with the reasons
|
49
|
+
def list_invalid_properties
|
50
|
+
invalid_properties = Array.new
|
51
|
+
invalid_properties
|
52
|
+
end
|
53
|
+
|
54
|
+
# Check to see if the all the properties in the model are valid
|
55
|
+
# @return true if the model is valid
|
56
|
+
def valid?
|
57
|
+
true
|
58
|
+
end
|
59
|
+
|
60
|
+
# Checks equality by comparing each attribute.
|
61
|
+
# @param [Object] Object to be compared
|
62
|
+
def ==(o)
|
63
|
+
return true if self.equal?(o)
|
64
|
+
self.class == o.class &&
|
65
|
+
mandatory == o.mandatory
|
66
|
+
end
|
67
|
+
|
68
|
+
# @see the `==` method
|
69
|
+
# @param [Object] Object to be compared
|
70
|
+
def eql?(o)
|
71
|
+
self == o
|
72
|
+
end
|
73
|
+
|
74
|
+
# Calculates hash code according to all attributes.
|
75
|
+
# @return [Fixnum] Hash code
|
76
|
+
def hash
|
77
|
+
[mandatory].hash
|
78
|
+
end
|
79
|
+
|
80
|
+
# Builds the object from hash
|
81
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
82
|
+
# @return [Object] Returns the model itself
|
83
|
+
def build_from_hash(attributes)
|
84
|
+
return nil unless attributes.is_a?(Hash)
|
85
|
+
self.class.swagger_types.each_pair do |key, type|
|
86
|
+
if type =~ /\AArray<(.*)>/i
|
87
|
+
# check to ensure the input is an array given that the the attribute
|
88
|
+
# is documented as an array but the input is not
|
89
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
90
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
91
|
+
end
|
92
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
93
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
94
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
95
|
+
end
|
96
|
+
|
97
|
+
self
|
98
|
+
end
|
99
|
+
|
100
|
+
# Deserializes the data based on type
|
101
|
+
# @param string type Data type
|
102
|
+
# @param string value Value to be deserialized
|
103
|
+
# @return [Object] Deserialized data
|
104
|
+
def _deserialize(type, value)
|
105
|
+
case type.to_sym
|
106
|
+
when :DateTime
|
107
|
+
DateTime.parse(value)
|
108
|
+
when :Date
|
109
|
+
Date.parse(value)
|
110
|
+
when :String
|
111
|
+
value.to_s
|
112
|
+
when :Integer
|
113
|
+
value.to_i
|
114
|
+
when :Float
|
115
|
+
value.to_f
|
116
|
+
when :BOOLEAN
|
117
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
118
|
+
true
|
119
|
+
else
|
120
|
+
false
|
121
|
+
end
|
122
|
+
when :Object
|
123
|
+
# generic object (usually a Hash), return directly
|
124
|
+
value
|
125
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
126
|
+
inner_type = Regexp.last_match[:inner_type]
|
127
|
+
value.map { |v| _deserialize(inner_type, v) }
|
128
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
129
|
+
k_type = Regexp.last_match[:k_type]
|
130
|
+
v_type = Regexp.last_match[:v_type]
|
131
|
+
{}.tap do |hash|
|
132
|
+
value.each do |k, v|
|
133
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
134
|
+
end
|
135
|
+
end
|
136
|
+
else # model
|
137
|
+
temp_model = TalonOne.const_get(type).new
|
138
|
+
temp_model.build_from_hash(value)
|
139
|
+
end
|
140
|
+
end
|
141
|
+
|
142
|
+
# Returns the string representation of the object
|
143
|
+
# @return [String] String presentation of the object
|
144
|
+
def to_s
|
145
|
+
to_hash.to_s
|
146
|
+
end
|
147
|
+
|
148
|
+
# to_body is an alias to to_hash (backward compatibility)
|
149
|
+
# @return [Hash] Returns the object in the form of hash
|
150
|
+
def to_body
|
151
|
+
to_hash
|
152
|
+
end
|
153
|
+
|
154
|
+
# Returns the object in the form of hash
|
155
|
+
# @return [Hash] Returns the object in the form of hash
|
156
|
+
def to_hash
|
157
|
+
hash = {}
|
158
|
+
self.class.attribute_map.each_pair do |attr, param|
|
159
|
+
value = self.send(attr)
|
160
|
+
next if value.nil?
|
161
|
+
hash[param] = _to_hash(value)
|
162
|
+
end
|
163
|
+
hash
|
164
|
+
end
|
165
|
+
|
166
|
+
# Outputs non-array value in the form of hash
|
167
|
+
# For object, use to_hash. Otherwise, just return the value
|
168
|
+
# @param [Object] value Any valid value
|
169
|
+
# @return [Hash] Returns the value in the form of hash
|
170
|
+
def _to_hash(value)
|
171
|
+
if value.is_a?(Array)
|
172
|
+
value.compact.map { |v| _to_hash(v) }
|
173
|
+
elsif value.is_a?(Hash)
|
174
|
+
{}.tap do |hash|
|
175
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
176
|
+
end
|
177
|
+
elsif value.respond_to? :to_hash
|
178
|
+
value.to_hash
|
179
|
+
else
|
180
|
+
value
|
181
|
+
end
|
182
|
+
end
|
183
|
+
end
|
184
|
+
end
|