rbflagr 0.1.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +9 -7
  3. data/docs/CreateFlagRequest.md +1 -0
  4. data/docs/Distribution.md +0 -1
  5. data/docs/EvalContext.md +3 -2
  6. data/docs/EvalResult.md +1 -0
  7. data/docs/EvaluationBatchRequest.md +2 -1
  8. data/docs/EvaluationEntity.md +1 -1
  9. data/docs/ExportApi.md +49 -0
  10. data/docs/Flag.md +5 -0
  11. data/docs/FlagApi.md +41 -0
  12. data/docs/HealthApi.md +7 -5
  13. data/docs/PutFlagRequest.md +4 -1
  14. data/docs/PutVariantRequest.md +1 -1
  15. data/lib/rbflagr.rb +3 -2
  16. data/lib/rbflagr/api/constraint_api.rb +2 -2
  17. data/lib/rbflagr/api/distribution_api.rb +2 -2
  18. data/lib/rbflagr/api/evaluation_api.rb +2 -2
  19. data/lib/rbflagr/api/export_api.rb +69 -0
  20. data/lib/rbflagr/api/flag_api.rb +49 -2
  21. data/lib/rbflagr/api/health_api.rb +9 -7
  22. data/lib/rbflagr/api/segment_api.rb +2 -2
  23. data/lib/rbflagr/api/variant_api.rb +2 -2
  24. data/lib/rbflagr/api_client.rb +2 -2
  25. data/lib/rbflagr/api_error.rb +2 -2
  26. data/lib/rbflagr/configuration.rb +2 -2
  27. data/lib/rbflagr/models/constraint.rb +2 -2
  28. data/lib/rbflagr/models/create_constraint_request.rb +2 -2
  29. data/lib/rbflagr/models/create_flag_request.rb +16 -6
  30. data/lib/rbflagr/models/create_segment_request.rb +2 -2
  31. data/lib/rbflagr/models/create_variant_request.rb +2 -2
  32. data/lib/rbflagr/models/distribution.rb +3 -27
  33. data/lib/rbflagr/models/error.rb +2 -2
  34. data/lib/rbflagr/models/eval_context.rb +20 -42
  35. data/lib/rbflagr/models/eval_debug_log.rb +2 -2
  36. data/lib/rbflagr/models/eval_result.rb +17 -3
  37. data/lib/rbflagr/models/evaluation_batch_request.rb +19 -11
  38. data/lib/rbflagr/models/evaluation_batch_response.rb +2 -2
  39. data/lib/rbflagr/models/evaluation_entity.rb +2 -26
  40. data/lib/rbflagr/models/flag.rb +68 -6
  41. data/lib/rbflagr/models/flag_snapshot.rb +2 -2
  42. data/lib/rbflagr/models/put_distributions_request.rb +2 -2
  43. data/lib/rbflagr/models/put_flag_request.rb +37 -18
  44. data/lib/rbflagr/models/put_segment_reorder_request.rb +2 -2
  45. data/lib/rbflagr/models/put_segment_request.rb +2 -2
  46. data/lib/rbflagr/models/put_variant_request.rb +2 -7
  47. data/lib/rbflagr/models/segment.rb +2 -2
  48. data/lib/rbflagr/models/segment_debug_log.rb +2 -2
  49. data/lib/rbflagr/models/set_flag_enabled_request.rb +2 -2
  50. data/lib/rbflagr/models/variant.rb +2 -2
  51. data/lib/rbflagr/version.rb +3 -3
  52. data/rbflagr.gemspec +3 -3
  53. data/spec/api/export_api_spec.rb +45 -0
  54. data/swagger.yaml +115 -35
  55. data/swagger_ruby.json +1 -1
  56. metadata +8 -3
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.0.13
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.0-SNAPSHOT
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.0.13
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.0-SNAPSHOT
@@ -16,6 +16,8 @@ module Flagr
16
16
  class EvalResult
17
17
  attr_accessor :flag_id
18
18
 
19
+ attr_accessor :flag_key
20
+
19
21
  attr_accessor :flag_snapshot_id
20
22
 
21
23
  attr_accessor :segment_id
@@ -36,6 +38,7 @@ module Flagr
36
38
  def self.attribute_map
37
39
  {
38
40
  :'flag_id' => :'flagID',
41
+ :'flag_key' => :'flagKey',
39
42
  :'flag_snapshot_id' => :'flagSnapshotID',
40
43
  :'segment_id' => :'segmentID',
41
44
  :'variant_id' => :'variantID',
@@ -51,6 +54,7 @@ module Flagr
51
54
  def self.swagger_types
52
55
  {
53
56
  :'flag_id' => :'Integer',
57
+ :'flag_key' => :'String',
54
58
  :'flag_snapshot_id' => :'Integer',
55
59
  :'segment_id' => :'Integer',
56
60
  :'variant_id' => :'Integer',
@@ -74,6 +78,10 @@ module Flagr
74
78
  self.flag_id = attributes[:'flagID']
75
79
  end
76
80
 
81
+ if attributes.has_key?(:'flagKey')
82
+ self.flag_key = attributes[:'flagKey']
83
+ end
84
+
77
85
  if attributes.has_key?(:'flagSnapshotID')
78
86
  self.flag_snapshot_id = attributes[:'flagSnapshotID']
79
87
  end
@@ -119,6 +127,10 @@ module Flagr
119
127
  invalid_properties.push('invalid value for "flag_id", must be greater than or equal to 1.')
120
128
  end
121
129
 
130
+ if @flag_key.nil?
131
+ invalid_properties.push('invalid value for "flag_key", flag_key cannot be nil.')
132
+ end
133
+
122
134
  if @segment_id.nil?
123
135
  invalid_properties.push('invalid value for "segment_id", segment_id cannot be nil.')
124
136
  end
@@ -167,6 +179,7 @@ module Flagr
167
179
  def valid?
168
180
  return false if @flag_id.nil?
169
181
  return false if @flag_id < 1
182
+ return false if @flag_key.nil?
170
183
  return false if @segment_id.nil?
171
184
  return false if @segment_id < 1
172
185
  return false if @variant_id.nil?
@@ -256,6 +269,7 @@ module Flagr
256
269
  return true if self.equal?(o)
257
270
  self.class == o.class &&
258
271
  flag_id == o.flag_id &&
272
+ flag_key == o.flag_key &&
259
273
  flag_snapshot_id == o.flag_snapshot_id &&
260
274
  segment_id == o.segment_id &&
261
275
  variant_id == o.variant_id &&
@@ -275,7 +289,7 @@ module Flagr
275
289
  # Calculates hash code according to all attributes.
276
290
  # @return [Fixnum] Hash code
277
291
  def hash
278
- [flag_id, flag_snapshot_id, segment_id, variant_id, variant_key, variant_attachment, eval_context, timestamp, eval_debug_log].hash
292
+ [flag_id, flag_key, flag_snapshot_id, segment_id, variant_id, variant_key, variant_attachment, eval_context, timestamp, eval_debug_log].hash
279
293
  end
280
294
 
281
295
  # Builds the object from hash
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.0.13
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.0-SNAPSHOT
@@ -18,14 +18,19 @@ module Flagr
18
18
 
19
19
  attr_accessor :enable_debug
20
20
 
21
+ # flagIDs
21
22
  attr_accessor :flag_i_ds
22
23
 
24
+ # flagKeys. Either flagIDs or flagKeys works. If pass in both, Flagr may return duplicate results.
25
+ attr_accessor :flag_keys
26
+
23
27
  # Attribute mapping from ruby-style variable name to JSON key.
24
28
  def self.attribute_map
25
29
  {
26
30
  :'entities' => :'entities',
27
31
  :'enable_debug' => :'enableDebug',
28
- :'flag_i_ds' => :'flagIDs'
32
+ :'flag_i_ds' => :'flagIDs',
33
+ :'flag_keys' => :'flagKeys'
29
34
  }
30
35
  end
31
36
 
@@ -34,7 +39,8 @@ module Flagr
34
39
  {
35
40
  :'entities' => :'Array<EvaluationEntity>',
36
41
  :'enable_debug' => :'BOOLEAN',
37
- :'flag_i_ds' => :'Array<Integer>'
42
+ :'flag_i_ds' => :'Array<Integer>',
43
+ :'flag_keys' => :'Array<String>'
38
44
  }
39
45
  end
40
46
 
@@ -61,6 +67,12 @@ module Flagr
61
67
  self.flag_i_ds = value
62
68
  end
63
69
  end
70
+
71
+ if attributes.has_key?(:'flagKeys')
72
+ if (value = attributes[:'flagKeys']).is_a?(Array)
73
+ self.flag_keys = value
74
+ end
75
+ end
64
76
  end
65
77
 
66
78
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -71,10 +83,6 @@ module Flagr
71
83
  invalid_properties.push('invalid value for "entities", entities cannot be nil.')
72
84
  end
73
85
 
74
- if @flag_i_ds.nil?
75
- invalid_properties.push('invalid value for "flag_i_ds", flag_i_ds cannot be nil.')
76
- end
77
-
78
86
  invalid_properties
79
87
  end
80
88
 
@@ -82,7 +90,6 @@ module Flagr
82
90
  # @return true if the model is valid
83
91
  def valid?
84
92
  return false if @entities.nil?
85
- return false if @flag_i_ds.nil?
86
93
  true
87
94
  end
88
95
 
@@ -93,7 +100,8 @@ module Flagr
93
100
  self.class == o.class &&
94
101
  entities == o.entities &&
95
102
  enable_debug == o.enable_debug &&
96
- flag_i_ds == o.flag_i_ds
103
+ flag_i_ds == o.flag_i_ds &&
104
+ flag_keys == o.flag_keys
97
105
  end
98
106
 
99
107
  # @see the `==` method
@@ -105,7 +113,7 @@ module Flagr
105
113
  # Calculates hash code according to all attributes.
106
114
  # @return [Fixnum] Hash code
107
115
  def hash
108
- [entities, enable_debug, flag_i_ds].hash
116
+ [entities, enable_debug, flag_i_ds, flag_keys].hash
109
117
  end
110
118
 
111
119
  # Builds the object from hash
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.0.13
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.0-SNAPSHOT
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.0.13
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.0-SNAPSHOT
@@ -63,39 +63,15 @@ module Flagr
63
63
  # @return Array for valid properties with the reasons
64
64
  def list_invalid_properties
65
65
  invalid_properties = Array.new
66
- if @entity_type.nil?
67
- invalid_properties.push('invalid value for "entity_type", entity_type cannot be nil.')
68
- end
69
-
70
- if @entity_type.to_s.length < 1
71
- invalid_properties.push('invalid value for "entity_type", the character length must be great than or equal to 1.')
72
- end
73
-
74
66
  invalid_properties
75
67
  end
76
68
 
77
69
  # Check to see if the all the properties in the model are valid
78
70
  # @return true if the model is valid
79
71
  def valid?
80
- return false if @entity_type.nil?
81
- return false if @entity_type.to_s.length < 1
82
72
  true
83
73
  end
84
74
 
85
- # Custom attribute writer method with validation
86
- # @param [Object] entity_type Value to be assigned
87
- def entity_type=(entity_type)
88
- if entity_type.nil?
89
- fail ArgumentError, 'entity_type cannot be nil'
90
- end
91
-
92
- if entity_type.to_s.length < 1
93
- fail ArgumentError, 'invalid value for "entity_type", the character length must be great than or equal to 1.'
94
- end
95
-
96
- @entity_type = entity_type
97
- end
98
-
99
75
  # Checks equality by comparing each attribute.
100
76
  # @param [Object] Object to be compared
101
77
  def ==(o)
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.0.13
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.0-SNAPSHOT
@@ -16,6 +16,9 @@ module Flagr
16
16
  class Flag
17
17
  attr_accessor :id
18
18
 
19
+ # unique key representation of the flag
20
+ attr_accessor :key
21
+
19
22
  attr_accessor :description
20
23
 
21
24
  attr_accessor :enabled
@@ -27,15 +30,29 @@ module Flagr
27
30
  # enabled data records will get data logging in the metrics pipeline, for example, kafka.
28
31
  attr_accessor :data_records_enabled
29
32
 
33
+ # it will override the entityType in the evaluation logs if it's not empty
34
+ attr_accessor :entity_type
35
+
36
+ attr_accessor :created_by
37
+
38
+ attr_accessor :updated_by
39
+
40
+ attr_accessor :updated_at
41
+
30
42
  # Attribute mapping from ruby-style variable name to JSON key.
31
43
  def self.attribute_map
32
44
  {
33
45
  :'id' => :'id',
46
+ :'key' => :'key',
34
47
  :'description' => :'description',
35
48
  :'enabled' => :'enabled',
36
49
  :'segments' => :'segments',
37
50
  :'variants' => :'variants',
38
- :'data_records_enabled' => :'dataRecordsEnabled'
51
+ :'data_records_enabled' => :'dataRecordsEnabled',
52
+ :'entity_type' => :'entityType',
53
+ :'created_by' => :'createdBy',
54
+ :'updated_by' => :'updatedBy',
55
+ :'updated_at' => :'updatedAt'
39
56
  }
40
57
  end
41
58
 
@@ -43,11 +60,16 @@ module Flagr
43
60
  def self.swagger_types
44
61
  {
45
62
  :'id' => :'Integer',
63
+ :'key' => :'String',
46
64
  :'description' => :'String',
47
65
  :'enabled' => :'BOOLEAN',
48
66
  :'segments' => :'Array<Segment>',
49
67
  :'variants' => :'Array<Variant>',
50
- :'data_records_enabled' => :'BOOLEAN'
68
+ :'data_records_enabled' => :'BOOLEAN',
69
+ :'entity_type' => :'String',
70
+ :'created_by' => :'String',
71
+ :'updated_by' => :'String',
72
+ :'updated_at' => :'DateTime'
51
73
  }
52
74
  end
53
75
 
@@ -63,6 +85,10 @@ module Flagr
63
85
  self.id = attributes[:'id']
64
86
  end
65
87
 
88
+ if attributes.has_key?(:'key')
89
+ self.key = attributes[:'key']
90
+ end
91
+
66
92
  if attributes.has_key?(:'description')
67
93
  self.description = attributes[:'description']
68
94
  end
@@ -86,6 +112,22 @@ module Flagr
86
112
  if attributes.has_key?(:'dataRecordsEnabled')
87
113
  self.data_records_enabled = attributes[:'dataRecordsEnabled']
88
114
  end
115
+
116
+ if attributes.has_key?(:'entityType')
117
+ self.entity_type = attributes[:'entityType']
118
+ end
119
+
120
+ if attributes.has_key?(:'createdBy')
121
+ self.created_by = attributes[:'createdBy']
122
+ end
123
+
124
+ if attributes.has_key?(:'updatedBy')
125
+ self.updated_by = attributes[:'updatedBy']
126
+ end
127
+
128
+ if attributes.has_key?(:'updatedAt')
129
+ self.updated_at = attributes[:'updatedAt']
130
+ end
89
131
  end
90
132
 
91
133
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -96,6 +138,10 @@ module Flagr
96
138
  invalid_properties.push('invalid value for "id", must be greater than or equal to 1.')
97
139
  end
98
140
 
141
+ if !@key.nil? && @key.to_s.length < 1
142
+ invalid_properties.push('invalid value for "key", the character length must be great than or equal to 1.')
143
+ end
144
+
99
145
  if @description.nil?
100
146
  invalid_properties.push('invalid value for "description", description cannot be nil.')
101
147
  end
@@ -119,6 +165,7 @@ module Flagr
119
165
  # @return true if the model is valid
120
166
  def valid?
121
167
  return false if !@id.nil? && @id < 1
168
+ return false if !@key.nil? && @key.to_s.length < 1
122
169
  return false if @description.nil?
123
170
  return false if @description.to_s.length < 1
124
171
  return false if @enabled.nil?
@@ -136,6 +183,16 @@ module Flagr
136
183
  @id = id
137
184
  end
138
185
 
186
+ # Custom attribute writer method with validation
187
+ # @param [Object] key Value to be assigned
188
+ def key=(key)
189
+ if !key.nil? && key.to_s.length < 1
190
+ fail ArgumentError, 'invalid value for "key", the character length must be great than or equal to 1.'
191
+ end
192
+
193
+ @key = key
194
+ end
195
+
139
196
  # Custom attribute writer method with validation
140
197
  # @param [Object] description Value to be assigned
141
198
  def description=(description)
@@ -156,11 +213,16 @@ module Flagr
156
213
  return true if self.equal?(o)
157
214
  self.class == o.class &&
158
215
  id == o.id &&
216
+ key == o.key &&
159
217
  description == o.description &&
160
218
  enabled == o.enabled &&
161
219
  segments == o.segments &&
162
220
  variants == o.variants &&
163
- data_records_enabled == o.data_records_enabled
221
+ data_records_enabled == o.data_records_enabled &&
222
+ entity_type == o.entity_type &&
223
+ created_by == o.created_by &&
224
+ updated_by == o.updated_by &&
225
+ updated_at == o.updated_at
164
226
  end
165
227
 
166
228
  # @see the `==` method
@@ -172,7 +234,7 @@ module Flagr
172
234
  # Calculates hash code according to all attributes.
173
235
  # @return [Fixnum] Hash code
174
236
  def hash
175
- [id, description, enabled, segments, variants, data_records_enabled].hash
237
+ [id, key, description, enabled, segments, variants, data_records_enabled, entity_type, created_by, updated_by, updated_at].hash
176
238
  end
177
239
 
178
240
  # Builds the object from hash
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.0.13
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.0-SNAPSHOT
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.0.13
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.0-SNAPSHOT
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.0.13
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
  Swagger Codegen version: 2.4.0-SNAPSHOT
@@ -19,11 +19,21 @@ module Flagr
19
19
  # enabled data records will get data logging in the metrics pipeline, for example, kafka.
20
20
  attr_accessor :data_records_enabled
21
21
 
22
+ # it will overwrite entityType into evaluation logs if it's not empty
23
+ attr_accessor :entity_type
24
+
25
+ attr_accessor :enabled
26
+
27
+ attr_accessor :key
28
+
22
29
  # Attribute mapping from ruby-style variable name to JSON key.
23
30
  def self.attribute_map
24
31
  {
25
32
  :'description' => :'description',
26
- :'data_records_enabled' => :'dataRecordsEnabled'
33
+ :'data_records_enabled' => :'dataRecordsEnabled',
34
+ :'entity_type' => :'entityType',
35
+ :'enabled' => :'enabled',
36
+ :'key' => :'key'
27
37
  }
28
38
  end
29
39
 
@@ -31,7 +41,10 @@ module Flagr
31
41
  def self.swagger_types
32
42
  {
33
43
  :'description' => :'String',
34
- :'data_records_enabled' => :'BOOLEAN'
44
+ :'data_records_enabled' => :'BOOLEAN',
45
+ :'entity_type' => :'String',
46
+ :'enabled' => :'BOOLEAN',
47
+ :'key' => :'String'
35
48
  }
36
49
  end
37
50
 
@@ -50,17 +63,25 @@ module Flagr
50
63
  if attributes.has_key?(:'dataRecordsEnabled')
51
64
  self.data_records_enabled = attributes[:'dataRecordsEnabled']
52
65
  end
66
+
67
+ if attributes.has_key?(:'entityType')
68
+ self.entity_type = attributes[:'entityType']
69
+ end
70
+
71
+ if attributes.has_key?(:'enabled')
72
+ self.enabled = attributes[:'enabled']
73
+ end
74
+
75
+ if attributes.has_key?(:'key')
76
+ self.key = attributes[:'key']
77
+ end
53
78
  end
54
79
 
55
80
  # Show invalid properties with the reasons. Usually used together with valid?
56
81
  # @return Array for valid properties with the reasons
57
82
  def list_invalid_properties
58
83
  invalid_properties = Array.new
59
- if @description.nil?
60
- invalid_properties.push('invalid value for "description", description cannot be nil.')
61
- end
62
-
63
- if @description.to_s.length < 1
84
+ if !@description.nil? && @description.to_s.length < 1
64
85
  invalid_properties.push('invalid value for "description", the character length must be great than or equal to 1.')
65
86
  end
66
87
 
@@ -70,19 +91,14 @@ module Flagr
70
91
  # Check to see if the all the properties in the model are valid
71
92
  # @return true if the model is valid
72
93
  def valid?
73
- return false if @description.nil?
74
- return false if @description.to_s.length < 1
94
+ return false if !@description.nil? && @description.to_s.length < 1
75
95
  true
76
96
  end
77
97
 
78
98
  # Custom attribute writer method with validation
79
99
  # @param [Object] description Value to be assigned
80
100
  def description=(description)
81
- if description.nil?
82
- fail ArgumentError, 'description cannot be nil'
83
- end
84
-
85
- if description.to_s.length < 1
101
+ if !description.nil? && description.to_s.length < 1
86
102
  fail ArgumentError, 'invalid value for "description", the character length must be great than or equal to 1.'
87
103
  end
88
104
 
@@ -95,7 +111,10 @@ module Flagr
95
111
  return true if self.equal?(o)
96
112
  self.class == o.class &&
97
113
  description == o.description &&
98
- data_records_enabled == o.data_records_enabled
114
+ data_records_enabled == o.data_records_enabled &&
115
+ entity_type == o.entity_type &&
116
+ enabled == o.enabled &&
117
+ key == o.key
99
118
  end
100
119
 
101
120
  # @see the `==` method
@@ -107,7 +126,7 @@ module Flagr
107
126
  # Calculates hash code according to all attributes.
108
127
  # @return [Fixnum] Hash code
109
128
  def hash
110
- [description, data_records_enabled].hash
129
+ [description, data_records_enabled, entity_type, enabled, key].hash
111
130
  end
112
131
 
113
132
  # Builds the object from hash