rbflagr 0.1.2

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.
Files changed (112) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +7 -0
  3. data/Makefile +9 -0
  4. data/README.md +143 -0
  5. data/Rakefile +8 -0
  6. data/docs/Constraint.md +11 -0
  7. data/docs/ConstraintApi.md +211 -0
  8. data/docs/CreateConstraintRequest.md +10 -0
  9. data/docs/CreateFlagRequest.md +8 -0
  10. data/docs/CreateSegmentRequest.md +9 -0
  11. data/docs/CreateVariantRequest.md +9 -0
  12. data/docs/Distribution.md +12 -0
  13. data/docs/DistributionApi.md +109 -0
  14. data/docs/Error.md +8 -0
  15. data/docs/EvalContext.md +12 -0
  16. data/docs/EvalDebugLog.md +9 -0
  17. data/docs/EvalResult.md +16 -0
  18. data/docs/EvaluationApi.md +98 -0
  19. data/docs/EvaluationBatchRequest.md +10 -0
  20. data/docs/EvaluationBatchResponse.md +8 -0
  21. data/docs/EvaluationEntity.md +10 -0
  22. data/docs/Flag.md +13 -0
  23. data/docs/FlagApi.md +337 -0
  24. data/docs/FlagSnapshot.md +11 -0
  25. data/docs/HealthApi.md +46 -0
  26. data/docs/PutDistributionsRequest.md +8 -0
  27. data/docs/PutFlagRequest.md +9 -0
  28. data/docs/PutSegmentReorderRequest.md +8 -0
  29. data/docs/PutSegmentRequest.md +9 -0
  30. data/docs/PutVariantRequest.md +9 -0
  31. data/docs/Segment.md +13 -0
  32. data/docs/SegmentApi.md +246 -0
  33. data/docs/SegmentDebugLog.md +9 -0
  34. data/docs/SetFlagEnabledRequest.md +8 -0
  35. data/docs/Variant.md +10 -0
  36. data/docs/VariantApi.md +199 -0
  37. data/git_push.sh +55 -0
  38. data/lib/rbflagr.rb +70 -0
  39. data/lib/rbflagr/api/constraint_api.rb +310 -0
  40. data/lib/rbflagr/api/distribution_api.rb +159 -0
  41. data/lib/rbflagr/api/evaluation_api.rb +123 -0
  42. data/lib/rbflagr/api/flag_api.rb +413 -0
  43. data/lib/rbflagr/api/health_api.rb +66 -0
  44. data/lib/rbflagr/api/segment_api.rb +329 -0
  45. data/lib/rbflagr/api/variant_api.rb +270 -0
  46. data/lib/rbflagr/api_client.rb +388 -0
  47. data/lib/rbflagr/api_error.rb +38 -0
  48. data/lib/rbflagr/configuration.rb +202 -0
  49. data/lib/rbflagr/models/constraint.rb +317 -0
  50. data/lib/rbflagr/models/create_constraint_request.rb +273 -0
  51. data/lib/rbflagr/models/create_flag_request.rb +207 -0
  52. data/lib/rbflagr/models/create_segment_request.rb +249 -0
  53. data/lib/rbflagr/models/create_variant_request.rb +216 -0
  54. data/lib/rbflagr/models/distribution.rb +330 -0
  55. data/lib/rbflagr/models/error.rb +207 -0
  56. data/lib/rbflagr/models/eval_context.rb +268 -0
  57. data/lib/rbflagr/models/eval_debug_log.rb +194 -0
  58. data/lib/rbflagr/models/eval_result.rb +385 -0
  59. data/lib/rbflagr/models/evaluation_batch_request.rb +215 -0
  60. data/lib/rbflagr/models/evaluation_batch_response.rb +190 -0
  61. data/lib/rbflagr/models/evaluation_entity.rb +225 -0
  62. data/lib/rbflagr/models/flag.rb +282 -0
  63. data/lib/rbflagr/models/flag_snapshot.rb +263 -0
  64. data/lib/rbflagr/models/put_distributions_request.rb +190 -0
  65. data/lib/rbflagr/models/put_flag_request.rb +217 -0
  66. data/lib/rbflagr/models/put_segment_reorder_request.rb +190 -0
  67. data/lib/rbflagr/models/put_segment_request.rb +249 -0
  68. data/lib/rbflagr/models/put_variant_request.rb +221 -0
  69. data/lib/rbflagr/models/segment.rb +328 -0
  70. data/lib/rbflagr/models/segment_debug_log.rb +207 -0
  71. data/lib/rbflagr/models/set_flag_enabled_request.rb +188 -0
  72. data/lib/rbflagr/models/variant.rb +240 -0
  73. data/lib/rbflagr/version.rb +15 -0
  74. data/rbflagr.gemspec +45 -0
  75. data/spec/api/constraint_api_spec.rb +91 -0
  76. data/spec/api/distribution_api_spec.rb +62 -0
  77. data/spec/api/evaluation_api_spec.rb +47 -0
  78. data/spec/api/flag_api_spec.rb +108 -0
  79. data/spec/api/health_api_spec.rb +44 -0
  80. data/spec/api/segment_api_spec.rb +87 -0
  81. data/spec/api/variant_api_spec.rb +87 -0
  82. data/spec/api_client_spec.rb +226 -0
  83. data/spec/configuration_spec.rb +42 -0
  84. data/spec/models/constraint_spec.rb +64 -0
  85. data/spec/models/create_constraint_request_spec.rb +54 -0
  86. data/spec/models/create_flag_request_spec.rb +42 -0
  87. data/spec/models/create_segment_request_spec.rb +48 -0
  88. data/spec/models/create_variant_request_spec.rb +48 -0
  89. data/spec/models/distribution_spec.rb +66 -0
  90. data/spec/models/error_spec.rb +42 -0
  91. data/spec/models/eval_context_spec.rb +66 -0
  92. data/spec/models/eval_debug_log_spec.rb +48 -0
  93. data/spec/models/eval_result_spec.rb +78 -0
  94. data/spec/models/evaluation_batch_request_spec.rb +54 -0
  95. data/spec/models/evaluation_batch_response_spec.rb +42 -0
  96. data/spec/models/evaluation_entity_spec.rb +54 -0
  97. data/spec/models/flag_snapshot_spec.rb +60 -0
  98. data/spec/models/flag_spec.rb +66 -0
  99. data/spec/models/put_distributions_request_spec.rb +42 -0
  100. data/spec/models/put_flag_request_spec.rb +42 -0
  101. data/spec/models/put_segment_reorder_request_spec.rb +42 -0
  102. data/spec/models/put_segment_request_spec.rb +48 -0
  103. data/spec/models/put_variant_request_spec.rb +48 -0
  104. data/spec/models/segment_debug_log_spec.rb +48 -0
  105. data/spec/models/segment_spec.rb +72 -0
  106. data/spec/models/set_flag_enabled_request_spec.rb +42 -0
  107. data/spec/models/variant_spec.rb +54 -0
  108. data/spec/spec_helper.rb +111 -0
  109. data/swagger.yaml +1135 -0
  110. data/swagger_ruby.json +6 -0
  111. data/tags +618 -0
  112. metadata +362 -0
@@ -0,0 +1,123 @@
1
+ =begin
2
+ #Flagr
3
+
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
5
+
6
+ OpenAPI spec version: 1.0.8
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'uri'
14
+
15
+ module Flagr
16
+ class EvaluationApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # @param body evalution context
23
+ # @param [Hash] opts the optional parameters
24
+ # @return [EvalResult]
25
+ def post_evaluation(body, opts = {})
26
+ data, _status_code, _headers = post_evaluation_with_http_info(body, opts)
27
+ data
28
+ end
29
+
30
+ # @param body evalution context
31
+ # @param [Hash] opts the optional parameters
32
+ # @return [Array<(EvalResult, Fixnum, Hash)>] EvalResult data, response status code and response headers
33
+ def post_evaluation_with_http_info(body, opts = {})
34
+ if @api_client.config.debugging
35
+ @api_client.config.logger.debug 'Calling API: EvaluationApi.post_evaluation ...'
36
+ end
37
+ # verify the required parameter 'body' is set
38
+ if @api_client.config.client_side_validation && body.nil?
39
+ fail ArgumentError, "Missing the required parameter 'body' when calling EvaluationApi.post_evaluation"
40
+ end
41
+ # resource path
42
+ local_var_path = '/evaluation'
43
+
44
+ # query parameters
45
+ query_params = {}
46
+
47
+ # header parameters
48
+ header_params = {}
49
+ # HTTP header 'Accept' (if needed)
50
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
51
+ # HTTP header 'Content-Type'
52
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
53
+
54
+ # form parameters
55
+ form_params = {}
56
+
57
+ # http body (model)
58
+ post_body = @api_client.object_to_http_body(body)
59
+ auth_names = []
60
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
61
+ :header_params => header_params,
62
+ :query_params => query_params,
63
+ :form_params => form_params,
64
+ :body => post_body,
65
+ :auth_names => auth_names,
66
+ :return_type => 'EvalResult')
67
+ if @api_client.config.debugging
68
+ @api_client.config.logger.debug "API called: EvaluationApi#post_evaluation\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
69
+ end
70
+ return data, status_code, headers
71
+ end
72
+ # @param body evalution batch request
73
+ # @param [Hash] opts the optional parameters
74
+ # @return [EvaluationBatchResponse]
75
+ def post_evaluation_batch(body, opts = {})
76
+ data, _status_code, _headers = post_evaluation_batch_with_http_info(body, opts)
77
+ data
78
+ end
79
+
80
+ # @param body evalution batch request
81
+ # @param [Hash] opts the optional parameters
82
+ # @return [Array<(EvaluationBatchResponse, Fixnum, Hash)>] EvaluationBatchResponse data, response status code and response headers
83
+ def post_evaluation_batch_with_http_info(body, opts = {})
84
+ if @api_client.config.debugging
85
+ @api_client.config.logger.debug 'Calling API: EvaluationApi.post_evaluation_batch ...'
86
+ end
87
+ # verify the required parameter 'body' is set
88
+ if @api_client.config.client_side_validation && body.nil?
89
+ fail ArgumentError, "Missing the required parameter 'body' when calling EvaluationApi.post_evaluation_batch"
90
+ end
91
+ # resource path
92
+ local_var_path = '/evaluation/batch'
93
+
94
+ # query parameters
95
+ query_params = {}
96
+
97
+ # header parameters
98
+ header_params = {}
99
+ # HTTP header 'Accept' (if needed)
100
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
101
+ # HTTP header 'Content-Type'
102
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
103
+
104
+ # form parameters
105
+ form_params = {}
106
+
107
+ # http body (model)
108
+ post_body = @api_client.object_to_http_body(body)
109
+ auth_names = []
110
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
111
+ :header_params => header_params,
112
+ :query_params => query_params,
113
+ :form_params => form_params,
114
+ :body => post_body,
115
+ :auth_names => auth_names,
116
+ :return_type => 'EvaluationBatchResponse')
117
+ if @api_client.config.debugging
118
+ @api_client.config.logger.debug "API called: EvaluationApi#post_evaluation_batch\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
119
+ end
120
+ return data, status_code, headers
121
+ end
122
+ end
123
+ end
@@ -0,0 +1,413 @@
1
+ =begin
2
+ #Flagr
3
+
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
5
+
6
+ OpenAPI spec version: 1.0.8
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'uri'
14
+
15
+ module Flagr
16
+ class FlagApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # @param body create a flag
23
+ # @param [Hash] opts the optional parameters
24
+ # @return [Flag]
25
+ def create_flag(body, opts = {})
26
+ data, _status_code, _headers = create_flag_with_http_info(body, opts)
27
+ data
28
+ end
29
+
30
+ # @param body create a flag
31
+ # @param [Hash] opts the optional parameters
32
+ # @return [Array<(Flag, Fixnum, Hash)>] Flag data, response status code and response headers
33
+ def create_flag_with_http_info(body, opts = {})
34
+ if @api_client.config.debugging
35
+ @api_client.config.logger.debug 'Calling API: FlagApi.create_flag ...'
36
+ end
37
+ # verify the required parameter 'body' is set
38
+ if @api_client.config.client_side_validation && body.nil?
39
+ fail ArgumentError, "Missing the required parameter 'body' when calling FlagApi.create_flag"
40
+ end
41
+ # resource path
42
+ local_var_path = '/flags'
43
+
44
+ # query parameters
45
+ query_params = {}
46
+
47
+ # header parameters
48
+ header_params = {}
49
+ # HTTP header 'Accept' (if needed)
50
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
51
+ # HTTP header 'Content-Type'
52
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
53
+
54
+ # form parameters
55
+ form_params = {}
56
+
57
+ # http body (model)
58
+ post_body = @api_client.object_to_http_body(body)
59
+ auth_names = []
60
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
61
+ :header_params => header_params,
62
+ :query_params => query_params,
63
+ :form_params => form_params,
64
+ :body => post_body,
65
+ :auth_names => auth_names,
66
+ :return_type => 'Flag')
67
+ if @api_client.config.debugging
68
+ @api_client.config.logger.debug "API called: FlagApi#create_flag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
69
+ end
70
+ return data, status_code, headers
71
+ end
72
+ # @param flag_id numeric ID of the flag
73
+ # @param [Hash] opts the optional parameters
74
+ # @return [nil]
75
+ def delete_flag(flag_id, opts = {})
76
+ delete_flag_with_http_info(flag_id, opts)
77
+ nil
78
+ end
79
+
80
+ # @param flag_id numeric ID of the flag
81
+ # @param [Hash] opts the optional parameters
82
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
83
+ def delete_flag_with_http_info(flag_id, opts = {})
84
+ if @api_client.config.debugging
85
+ @api_client.config.logger.debug 'Calling API: FlagApi.delete_flag ...'
86
+ end
87
+ # verify the required parameter 'flag_id' is set
88
+ if @api_client.config.client_side_validation && flag_id.nil?
89
+ fail ArgumentError, "Missing the required parameter 'flag_id' when calling FlagApi.delete_flag"
90
+ end
91
+ if @api_client.config.client_side_validation && flag_id < 1
92
+ fail ArgumentError, 'invalid value for "flag_id" when calling FlagApi.delete_flag, must be greater than or equal to 1.'
93
+ end
94
+
95
+ # resource path
96
+ local_var_path = '/flags/{flagID}'.sub('{' + 'flagID' + '}', flag_id.to_s)
97
+
98
+ # query parameters
99
+ query_params = {}
100
+
101
+ # header parameters
102
+ header_params = {}
103
+ # HTTP header 'Accept' (if needed)
104
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
105
+ # HTTP header 'Content-Type'
106
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
107
+
108
+ # form parameters
109
+ form_params = {}
110
+
111
+ # http body (model)
112
+ post_body = nil
113
+ auth_names = []
114
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
115
+ :header_params => header_params,
116
+ :query_params => query_params,
117
+ :form_params => form_params,
118
+ :body => post_body,
119
+ :auth_names => auth_names)
120
+ if @api_client.config.debugging
121
+ @api_client.config.logger.debug "API called: FlagApi#delete_flag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
122
+ end
123
+ return data, status_code, headers
124
+ end
125
+ # @param [Hash] opts the optional parameters
126
+ # @option opts [Integer] :limit the numbers of flags to return
127
+ # @option opts [BOOLEAN] :enabled return flags having given enabled status
128
+ # @option opts [String] :description return flags exactly matching given description
129
+ # @option opts [String] :description_like return flags partially matching given description
130
+ # @option opts [Integer] :offset return flags given the offset, it should usually set together with limit
131
+ # @return [Array<Flag>]
132
+ def find_flags(opts = {})
133
+ data, _status_code, _headers = find_flags_with_http_info(opts)
134
+ data
135
+ end
136
+
137
+ # @param [Hash] opts the optional parameters
138
+ # @option opts [Integer] :limit the numbers of flags to return
139
+ # @option opts [BOOLEAN] :enabled return flags having given enabled status
140
+ # @option opts [String] :description return flags exactly matching given description
141
+ # @option opts [String] :description_like return flags partially matching given description
142
+ # @option opts [Integer] :offset return flags given the offset, it should usually set together with limit
143
+ # @return [Array<(Array<Flag>, Fixnum, Hash)>] Array<Flag> data, response status code and response headers
144
+ def find_flags_with_http_info(opts = {})
145
+ if @api_client.config.debugging
146
+ @api_client.config.logger.debug 'Calling API: FlagApi.find_flags ...'
147
+ end
148
+ # resource path
149
+ local_var_path = '/flags'
150
+
151
+ # query parameters
152
+ query_params = {}
153
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
154
+ query_params[:'enabled'] = opts[:'enabled'] if !opts[:'enabled'].nil?
155
+ query_params[:'description'] = opts[:'description'] if !opts[:'description'].nil?
156
+ query_params[:'description_like'] = opts[:'description_like'] if !opts[:'description_like'].nil?
157
+ query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
158
+
159
+ # header parameters
160
+ header_params = {}
161
+ # HTTP header 'Accept' (if needed)
162
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
163
+ # HTTP header 'Content-Type'
164
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
165
+
166
+ # form parameters
167
+ form_params = {}
168
+
169
+ # http body (model)
170
+ post_body = nil
171
+ auth_names = []
172
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
173
+ :header_params => header_params,
174
+ :query_params => query_params,
175
+ :form_params => form_params,
176
+ :body => post_body,
177
+ :auth_names => auth_names,
178
+ :return_type => 'Array<Flag>')
179
+ if @api_client.config.debugging
180
+ @api_client.config.logger.debug "API called: FlagApi#find_flags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
181
+ end
182
+ return data, status_code, headers
183
+ end
184
+ # @param flag_id numeric ID of the flag to get
185
+ # @param [Hash] opts the optional parameters
186
+ # @return [Flag]
187
+ def get_flag(flag_id, opts = {})
188
+ data, _status_code, _headers = get_flag_with_http_info(flag_id, opts)
189
+ data
190
+ end
191
+
192
+ # @param flag_id numeric ID of the flag to get
193
+ # @param [Hash] opts the optional parameters
194
+ # @return [Array<(Flag, Fixnum, Hash)>] Flag data, response status code and response headers
195
+ def get_flag_with_http_info(flag_id, opts = {})
196
+ if @api_client.config.debugging
197
+ @api_client.config.logger.debug 'Calling API: FlagApi.get_flag ...'
198
+ end
199
+ # verify the required parameter 'flag_id' is set
200
+ if @api_client.config.client_side_validation && flag_id.nil?
201
+ fail ArgumentError, "Missing the required parameter 'flag_id' when calling FlagApi.get_flag"
202
+ end
203
+ if @api_client.config.client_side_validation && flag_id < 1
204
+ fail ArgumentError, 'invalid value for "flag_id" when calling FlagApi.get_flag, must be greater than or equal to 1.'
205
+ end
206
+
207
+ # resource path
208
+ local_var_path = '/flags/{flagID}'.sub('{' + 'flagID' + '}', flag_id.to_s)
209
+
210
+ # query parameters
211
+ query_params = {}
212
+
213
+ # header parameters
214
+ header_params = {}
215
+ # HTTP header 'Accept' (if needed)
216
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
217
+ # HTTP header 'Content-Type'
218
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
219
+
220
+ # form parameters
221
+ form_params = {}
222
+
223
+ # http body (model)
224
+ post_body = nil
225
+ auth_names = []
226
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
227
+ :header_params => header_params,
228
+ :query_params => query_params,
229
+ :form_params => form_params,
230
+ :body => post_body,
231
+ :auth_names => auth_names,
232
+ :return_type => 'Flag')
233
+ if @api_client.config.debugging
234
+ @api_client.config.logger.debug "API called: FlagApi#get_flag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
235
+ end
236
+ return data, status_code, headers
237
+ end
238
+ # @param flag_id numeric ID of the flag to get
239
+ # @param [Hash] opts the optional parameters
240
+ # @return [Array<FlagSnapshot>]
241
+ def get_flag_snapshots(flag_id, opts = {})
242
+ data, _status_code, _headers = get_flag_snapshots_with_http_info(flag_id, opts)
243
+ data
244
+ end
245
+
246
+ # @param flag_id numeric ID of the flag to get
247
+ # @param [Hash] opts the optional parameters
248
+ # @return [Array<(Array<FlagSnapshot>, Fixnum, Hash)>] Array<FlagSnapshot> data, response status code and response headers
249
+ def get_flag_snapshots_with_http_info(flag_id, opts = {})
250
+ if @api_client.config.debugging
251
+ @api_client.config.logger.debug 'Calling API: FlagApi.get_flag_snapshots ...'
252
+ end
253
+ # verify the required parameter 'flag_id' is set
254
+ if @api_client.config.client_side_validation && flag_id.nil?
255
+ fail ArgumentError, "Missing the required parameter 'flag_id' when calling FlagApi.get_flag_snapshots"
256
+ end
257
+ if @api_client.config.client_side_validation && flag_id < 1
258
+ fail ArgumentError, 'invalid value for "flag_id" when calling FlagApi.get_flag_snapshots, must be greater than or equal to 1.'
259
+ end
260
+
261
+ # resource path
262
+ local_var_path = '/flags/{flagID}/snapshots'.sub('{' + 'flagID' + '}', flag_id.to_s)
263
+
264
+ # query parameters
265
+ query_params = {}
266
+
267
+ # header parameters
268
+ header_params = {}
269
+ # HTTP header 'Accept' (if needed)
270
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
271
+ # HTTP header 'Content-Type'
272
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
273
+
274
+ # form parameters
275
+ form_params = {}
276
+
277
+ # http body (model)
278
+ post_body = nil
279
+ auth_names = []
280
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
281
+ :header_params => header_params,
282
+ :query_params => query_params,
283
+ :form_params => form_params,
284
+ :body => post_body,
285
+ :auth_names => auth_names,
286
+ :return_type => 'Array<FlagSnapshot>')
287
+ if @api_client.config.debugging
288
+ @api_client.config.logger.debug "API called: FlagApi#get_flag_snapshots\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
289
+ end
290
+ return data, status_code, headers
291
+ end
292
+ # @param flag_id numeric ID of the flag to get
293
+ # @param body update a flag
294
+ # @param [Hash] opts the optional parameters
295
+ # @return [Flag]
296
+ def put_flag(flag_id, body, opts = {})
297
+ data, _status_code, _headers = put_flag_with_http_info(flag_id, body, opts)
298
+ data
299
+ end
300
+
301
+ # @param flag_id numeric ID of the flag to get
302
+ # @param body update a flag
303
+ # @param [Hash] opts the optional parameters
304
+ # @return [Array<(Flag, Fixnum, Hash)>] Flag data, response status code and response headers
305
+ def put_flag_with_http_info(flag_id, body, opts = {})
306
+ if @api_client.config.debugging
307
+ @api_client.config.logger.debug 'Calling API: FlagApi.put_flag ...'
308
+ end
309
+ # verify the required parameter 'flag_id' is set
310
+ if @api_client.config.client_side_validation && flag_id.nil?
311
+ fail ArgumentError, "Missing the required parameter 'flag_id' when calling FlagApi.put_flag"
312
+ end
313
+ if @api_client.config.client_side_validation && flag_id < 1
314
+ fail ArgumentError, 'invalid value for "flag_id" when calling FlagApi.put_flag, must be greater than or equal to 1.'
315
+ end
316
+
317
+ # verify the required parameter 'body' is set
318
+ if @api_client.config.client_side_validation && body.nil?
319
+ fail ArgumentError, "Missing the required parameter 'body' when calling FlagApi.put_flag"
320
+ end
321
+ # resource path
322
+ local_var_path = '/flags/{flagID}'.sub('{' + 'flagID' + '}', flag_id.to_s)
323
+
324
+ # query parameters
325
+ query_params = {}
326
+
327
+ # header parameters
328
+ header_params = {}
329
+ # HTTP header 'Accept' (if needed)
330
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
331
+ # HTTP header 'Content-Type'
332
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
333
+
334
+ # form parameters
335
+ form_params = {}
336
+
337
+ # http body (model)
338
+ post_body = @api_client.object_to_http_body(body)
339
+ auth_names = []
340
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
341
+ :header_params => header_params,
342
+ :query_params => query_params,
343
+ :form_params => form_params,
344
+ :body => post_body,
345
+ :auth_names => auth_names,
346
+ :return_type => 'Flag')
347
+ if @api_client.config.debugging
348
+ @api_client.config.logger.debug "API called: FlagApi#put_flag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
349
+ end
350
+ return data, status_code, headers
351
+ end
352
+ # @param flag_id numeric ID of the flag to get
353
+ # @param body set flag enabled state
354
+ # @param [Hash] opts the optional parameters
355
+ # @return [Flag]
356
+ def set_flag_enabled(flag_id, body, opts = {})
357
+ data, _status_code, _headers = set_flag_enabled_with_http_info(flag_id, body, opts)
358
+ data
359
+ end
360
+
361
+ # @param flag_id numeric ID of the flag to get
362
+ # @param body set flag enabled state
363
+ # @param [Hash] opts the optional parameters
364
+ # @return [Array<(Flag, Fixnum, Hash)>] Flag data, response status code and response headers
365
+ def set_flag_enabled_with_http_info(flag_id, body, opts = {})
366
+ if @api_client.config.debugging
367
+ @api_client.config.logger.debug 'Calling API: FlagApi.set_flag_enabled ...'
368
+ end
369
+ # verify the required parameter 'flag_id' is set
370
+ if @api_client.config.client_side_validation && flag_id.nil?
371
+ fail ArgumentError, "Missing the required parameter 'flag_id' when calling FlagApi.set_flag_enabled"
372
+ end
373
+ if @api_client.config.client_side_validation && flag_id < 1
374
+ fail ArgumentError, 'invalid value for "flag_id" when calling FlagApi.set_flag_enabled, must be greater than or equal to 1.'
375
+ end
376
+
377
+ # verify the required parameter 'body' is set
378
+ if @api_client.config.client_side_validation && body.nil?
379
+ fail ArgumentError, "Missing the required parameter 'body' when calling FlagApi.set_flag_enabled"
380
+ end
381
+ # resource path
382
+ local_var_path = '/flags/{flagID}/enabled'.sub('{' + 'flagID' + '}', flag_id.to_s)
383
+
384
+ # query parameters
385
+ query_params = {}
386
+
387
+ # header parameters
388
+ header_params = {}
389
+ # HTTP header 'Accept' (if needed)
390
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
391
+ # HTTP header 'Content-Type'
392
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
393
+
394
+ # form parameters
395
+ form_params = {}
396
+
397
+ # http body (model)
398
+ post_body = @api_client.object_to_http_body(body)
399
+ auth_names = []
400
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
401
+ :header_params => header_params,
402
+ :query_params => query_params,
403
+ :form_params => form_params,
404
+ :body => post_body,
405
+ :auth_names => auth_names,
406
+ :return_type => 'Flag')
407
+ if @api_client.config.debugging
408
+ @api_client.config.logger.debug "API called: FlagApi#set_flag_enabled\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
409
+ end
410
+ return data, status_code, headers
411
+ end
412
+ end
413
+ end