launchdarkly_api 3.7.1 → 3.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (283) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +211 -198
  3. data/docs/HierarchicalLinks.md +9 -0
  4. data/docs/Integration.md +9 -0
  5. data/docs/IntegrationLinks.md +8 -0
  6. data/docs/IntegrationSubscription.md +16 -0
  7. data/docs/IntegrationSubscriptionStatus.md +10 -0
  8. data/docs/Integrations.md +9 -0
  9. data/docs/IntegrationsApi.md +334 -0
  10. data/docs/SubscriptionBody.md +12 -0
  11. data/launchdarkly_api.gemspec +1 -1
  12. data/lib/launchdarkly_api.rb +9 -1
  13. data/lib/launchdarkly_api/api/access_tokens_api.rb +1 -1
  14. data/lib/launchdarkly_api/api/audit_log_api.rb +1 -1
  15. data/lib/launchdarkly_api/api/custom_roles_api.rb +1 -1
  16. data/lib/launchdarkly_api/api/customer_metrics_api.rb +1 -1
  17. data/lib/launchdarkly_api/api/data_export_destinations_api.rb +1 -1
  18. data/lib/launchdarkly_api/api/environments_api.rb +1 -1
  19. data/lib/launchdarkly_api/api/feature_flags_api.rb +1 -1
  20. data/lib/launchdarkly_api/api/integrations_api.rb +358 -0
  21. data/lib/launchdarkly_api/api/projects_api.rb +1 -1
  22. data/lib/launchdarkly_api/api/relay_proxy_configurations_api.rb +1 -1
  23. data/lib/launchdarkly_api/api/root_api.rb +1 -1
  24. data/lib/launchdarkly_api/api/team_members_api.rb +1 -1
  25. data/lib/launchdarkly_api/api/user_segments_api.rb +1 -1
  26. data/lib/launchdarkly_api/api/user_settings_api.rb +1 -1
  27. data/lib/launchdarkly_api/api/users_api.rb +1 -1
  28. data/lib/launchdarkly_api/api/webhooks_api.rb +1 -1
  29. data/lib/launchdarkly_api/api_client.rb +1 -1
  30. data/lib/launchdarkly_api/api_error.rb +1 -1
  31. data/lib/launchdarkly_api/configuration.rb +1 -1
  32. data/lib/launchdarkly_api/models/audit_log_entries.rb +1 -1
  33. data/lib/launchdarkly_api/models/audit_log_entry.rb +1 -1
  34. data/lib/launchdarkly_api/models/audit_log_entry_target.rb +1 -1
  35. data/lib/launchdarkly_api/models/clause.rb +1 -1
  36. data/lib/launchdarkly_api/models/client_side_availability.rb +1 -1
  37. data/lib/launchdarkly_api/models/copy_actions.rb +1 -1
  38. data/lib/launchdarkly_api/models/custom_property.rb +1 -1
  39. data/lib/launchdarkly_api/models/custom_property_values.rb +1 -1
  40. data/lib/launchdarkly_api/models/custom_role.rb +1 -1
  41. data/lib/launchdarkly_api/models/custom_role_body.rb +1 -1
  42. data/lib/launchdarkly_api/models/custom_roles.rb +1 -1
  43. data/lib/launchdarkly_api/models/defaults.rb +1 -1
  44. data/lib/launchdarkly_api/models/destination.rb +1 -1
  45. data/lib/launchdarkly_api/models/destination_amazon_kinesis.rb +1 -1
  46. data/lib/launchdarkly_api/models/destination_body.rb +1 -1
  47. data/lib/launchdarkly_api/models/destination_google_pub_sub.rb +1 -1
  48. data/lib/launchdarkly_api/models/destination_m_particle.rb +1 -1
  49. data/lib/launchdarkly_api/models/destination_segment.rb +1 -1
  50. data/lib/launchdarkly_api/models/destinations.rb +1 -1
  51. data/lib/launchdarkly_api/models/environment.rb +1 -1
  52. data/lib/launchdarkly_api/models/environment_post.rb +1 -1
  53. data/lib/launchdarkly_api/models/evaluation_usage_error.rb +1 -1
  54. data/lib/launchdarkly_api/models/events.rb +1 -1
  55. data/lib/launchdarkly_api/models/fallthrough.rb +1 -1
  56. data/lib/launchdarkly_api/models/feature_flag.rb +1 -1
  57. data/lib/launchdarkly_api/models/feature_flag_body.rb +1 -1
  58. data/lib/launchdarkly_api/models/feature_flag_config.rb +1 -1
  59. data/lib/launchdarkly_api/models/feature_flag_copy_body.rb +1 -1
  60. data/lib/launchdarkly_api/models/feature_flag_copy_object.rb +1 -1
  61. data/lib/launchdarkly_api/models/feature_flag_scheduled_change.rb +1 -1
  62. data/lib/launchdarkly_api/models/feature_flag_scheduled_changes.rb +1 -1
  63. data/lib/launchdarkly_api/models/feature_flag_scheduled_changes_conflicts.rb +1 -1
  64. data/lib/launchdarkly_api/models/feature_flag_scheduled_changes_conflicts_instructions.rb +1 -1
  65. data/lib/launchdarkly_api/models/feature_flag_status.rb +1 -1
  66. data/lib/launchdarkly_api/models/feature_flag_status_across_environments.rb +1 -1
  67. data/lib/launchdarkly_api/models/feature_flag_status_for_queried_environment.rb +1 -1
  68. data/lib/launchdarkly_api/models/feature_flag_statuses.rb +1 -1
  69. data/lib/launchdarkly_api/models/feature_flags.rb +1 -1
  70. data/lib/launchdarkly_api/models/flag_list_item.rb +1 -1
  71. data/lib/launchdarkly_api/models/hierarchical_links.rb +192 -0
  72. data/lib/launchdarkly_api/models/id.rb +1 -1
  73. data/lib/launchdarkly_api/models/integration.rb +194 -0
  74. data/lib/launchdarkly_api/models/integration__links.rb +183 -0
  75. data/lib/launchdarkly_api/models/integration_subscription.rb +264 -0
  76. data/lib/launchdarkly_api/models/integration_subscription__status.rb +202 -0
  77. data/lib/launchdarkly_api/models/integrations.rb +195 -0
  78. data/lib/launchdarkly_api/models/link.rb +1 -1
  79. data/lib/launchdarkly_api/models/links.rb +1 -1
  80. data/lib/launchdarkly_api/models/ma_uby_category.rb +1 -1
  81. data/lib/launchdarkly_api/models/mau.rb +1 -1
  82. data/lib/launchdarkly_api/models/mau_metadata.rb +1 -1
  83. data/lib/launchdarkly_api/models/member.rb +1 -1
  84. data/lib/launchdarkly_api/models/members.rb +1 -1
  85. data/lib/launchdarkly_api/models/members_body.rb +1 -1
  86. data/lib/launchdarkly_api/models/patch_comment.rb +1 -1
  87. data/lib/launchdarkly_api/models/patch_operation.rb +1 -1
  88. data/lib/launchdarkly_api/models/policy.rb +1 -1
  89. data/lib/launchdarkly_api/models/prerequisite.rb +1 -1
  90. data/lib/launchdarkly_api/models/project.rb +1 -1
  91. data/lib/launchdarkly_api/models/project_body.rb +1 -1
  92. data/lib/launchdarkly_api/models/projects.rb +1 -1
  93. data/lib/launchdarkly_api/models/relay_proxy_config.rb +1 -1
  94. data/lib/launchdarkly_api/models/relay_proxy_config_body.rb +1 -1
  95. data/lib/launchdarkly_api/models/relay_proxy_configs.rb +1 -1
  96. data/lib/launchdarkly_api/models/role.rb +1 -1
  97. data/lib/launchdarkly_api/models/rollout.rb +1 -1
  98. data/lib/launchdarkly_api/models/rule.rb +1 -1
  99. data/lib/launchdarkly_api/models/scheduled_changes_feature_flag_conflict.rb +1 -1
  100. data/lib/launchdarkly_api/models/semantic_patch_instruction.rb +1 -1
  101. data/lib/launchdarkly_api/models/semantic_patch_instruction_inner.rb +1 -1
  102. data/lib/launchdarkly_api/models/semantic_patch_operation.rb +1 -1
  103. data/lib/launchdarkly_api/models/site.rb +1 -1
  104. data/lib/launchdarkly_api/models/statement.rb +1 -1
  105. data/lib/launchdarkly_api/models/stream.rb +1 -1
  106. data/lib/launchdarkly_api/models/stream_by_sdk.rb +1 -1
  107. data/lib/launchdarkly_api/models/stream_by_sdk_links.rb +1 -1
  108. data/lib/launchdarkly_api/models/stream_by_sdk_links_metadata.rb +1 -1
  109. data/lib/launchdarkly_api/models/stream_links.rb +1 -1
  110. data/lib/launchdarkly_api/models/stream_sdk_version.rb +1 -1
  111. data/lib/launchdarkly_api/models/stream_sdk_version_data.rb +1 -1
  112. data/lib/launchdarkly_api/models/stream_usage_error.rb +1 -1
  113. data/lib/launchdarkly_api/models/stream_usage_links.rb +1 -1
  114. data/lib/launchdarkly_api/models/stream_usage_metadata.rb +1 -1
  115. data/lib/launchdarkly_api/models/stream_usage_series.rb +1 -1
  116. data/lib/launchdarkly_api/models/streams.rb +1 -1
  117. data/lib/launchdarkly_api/models/subscription_body.rb +237 -0
  118. data/lib/launchdarkly_api/models/target.rb +1 -1
  119. data/lib/launchdarkly_api/models/token.rb +1 -1
  120. data/lib/launchdarkly_api/models/token_body.rb +1 -1
  121. data/lib/launchdarkly_api/models/tokens.rb +1 -1
  122. data/lib/launchdarkly_api/models/unbounded_segment_target_changes.rb +1 -1
  123. data/lib/launchdarkly_api/models/unbounded_segment_targets_body.rb +1 -1
  124. data/lib/launchdarkly_api/models/usage.rb +1 -1
  125. data/lib/launchdarkly_api/models/usage_error.rb +1 -1
  126. data/lib/launchdarkly_api/models/usage_links.rb +1 -1
  127. data/lib/launchdarkly_api/models/user.rb +1 -1
  128. data/lib/launchdarkly_api/models/user_flag_setting.rb +1 -1
  129. data/lib/launchdarkly_api/models/user_flag_settings.rb +1 -1
  130. data/lib/launchdarkly_api/models/user_record.rb +1 -1
  131. data/lib/launchdarkly_api/models/user_segment.rb +1 -1
  132. data/lib/launchdarkly_api/models/user_segment_body.rb +1 -1
  133. data/lib/launchdarkly_api/models/user_segment_rule.rb +1 -1
  134. data/lib/launchdarkly_api/models/user_segments.rb +1 -1
  135. data/lib/launchdarkly_api/models/user_settings_body.rb +1 -1
  136. data/lib/launchdarkly_api/models/user_targeting_expiration_for_flag.rb +1 -1
  137. data/lib/launchdarkly_api/models/user_targeting_expiration_for_flags.rb +1 -1
  138. data/lib/launchdarkly_api/models/user_targeting_expiration_for_segment.rb +1 -1
  139. data/lib/launchdarkly_api/models/user_targeting_expiration_on_flags_for_user.rb +1 -1
  140. data/lib/launchdarkly_api/models/user_targeting_expiration_resource_id_for_flag.rb +1 -1
  141. data/lib/launchdarkly_api/models/users.rb +1 -1
  142. data/lib/launchdarkly_api/models/variation.rb +1 -1
  143. data/lib/launchdarkly_api/models/webhook.rb +1 -1
  144. data/lib/launchdarkly_api/models/webhook_body.rb +1 -1
  145. data/lib/launchdarkly_api/models/webhooks.rb +1 -1
  146. data/lib/launchdarkly_api/models/weighted_variation.rb +1 -1
  147. data/lib/launchdarkly_api/version.rb +2 -2
  148. data/openapi.yml +239 -1
  149. data/spec/api/access_tokens_api_spec.rb +1 -1
  150. data/spec/api/audit_log_api_spec.rb +1 -1
  151. data/spec/api/custom_roles_api_spec.rb +1 -1
  152. data/spec/api/customer_metrics_api_spec.rb +1 -1
  153. data/spec/api/data_export_destinations_api_spec.rb +1 -1
  154. data/spec/api/environments_api_spec.rb +1 -1
  155. data/spec/api/feature_flags_api_spec.rb +1 -1
  156. data/spec/api/integrations_api_spec.rb +105 -0
  157. data/spec/api/projects_api_spec.rb +1 -1
  158. data/spec/api/relay_proxy_configurations_api_spec.rb +1 -1
  159. data/spec/api/root_api_spec.rb +1 -1
  160. data/spec/api/team_members_api_spec.rb +1 -1
  161. data/spec/api/user_segments_api_spec.rb +1 -1
  162. data/spec/api/user_settings_api_spec.rb +1 -1
  163. data/spec/api/users_api_spec.rb +1 -1
  164. data/spec/api/webhooks_api_spec.rb +1 -1
  165. data/spec/api_client_spec.rb +1 -1
  166. data/spec/configuration_spec.rb +1 -1
  167. data/spec/models/audit_log_entries_spec.rb +1 -1
  168. data/spec/models/audit_log_entry_spec.rb +1 -1
  169. data/spec/models/audit_log_entry_target_spec.rb +1 -1
  170. data/spec/models/clause_spec.rb +1 -1
  171. data/spec/models/client_side_availability_spec.rb +1 -1
  172. data/spec/models/copy_actions_spec.rb +1 -1
  173. data/spec/models/custom_property_spec.rb +1 -1
  174. data/spec/models/custom_property_values_spec.rb +1 -1
  175. data/spec/models/custom_role_body_spec.rb +1 -1
  176. data/spec/models/custom_role_spec.rb +1 -1
  177. data/spec/models/custom_roles_spec.rb +1 -1
  178. data/spec/models/defaults_spec.rb +1 -1
  179. data/spec/models/destination_amazon_kinesis_spec.rb +1 -1
  180. data/spec/models/destination_body_spec.rb +1 -1
  181. data/spec/models/destination_google_pub_sub_spec.rb +1 -1
  182. data/spec/models/destination_m_particle_spec.rb +1 -1
  183. data/spec/models/destination_segment_spec.rb +1 -1
  184. data/spec/models/destination_spec.rb +1 -1
  185. data/spec/models/destinations_spec.rb +1 -1
  186. data/spec/models/environment_post_spec.rb +1 -1
  187. data/spec/models/environment_spec.rb +1 -1
  188. data/spec/models/evaluation_usage_error_spec.rb +1 -1
  189. data/spec/models/events_spec.rb +1 -1
  190. data/spec/models/fallthrough_spec.rb +1 -1
  191. data/spec/models/feature_flag_body_spec.rb +1 -1
  192. data/spec/models/feature_flag_config_spec.rb +1 -1
  193. data/spec/models/feature_flag_copy_body_spec.rb +1 -1
  194. data/spec/models/feature_flag_copy_object_spec.rb +1 -1
  195. data/spec/models/feature_flag_scheduled_change_spec.rb +1 -1
  196. data/spec/models/feature_flag_scheduled_changes_conflicts_instructions_spec.rb +1 -1
  197. data/spec/models/feature_flag_scheduled_changes_conflicts_spec.rb +1 -1
  198. data/spec/models/feature_flag_scheduled_changes_spec.rb +1 -1
  199. data/spec/models/feature_flag_spec.rb +1 -1
  200. data/spec/models/feature_flag_status_across_environments_spec.rb +1 -1
  201. data/spec/models/feature_flag_status_for_queried_environment_spec.rb +1 -1
  202. data/spec/models/feature_flag_status_spec.rb +1 -1
  203. data/spec/models/feature_flag_statuses_spec.rb +1 -1
  204. data/spec/models/feature_flags_spec.rb +1 -1
  205. data/spec/models/flag_list_item_spec.rb +1 -1
  206. data/spec/models/hierarchical_links_spec.rb +47 -0
  207. data/spec/models/id_spec.rb +1 -1
  208. data/spec/models/integration__links_spec.rb +41 -0
  209. data/spec/models/integration_spec.rb +47 -0
  210. data/spec/models/integration_subscription__status_spec.rb +53 -0
  211. data/spec/models/integration_subscription_spec.rb +89 -0
  212. data/spec/models/integrations_spec.rb +47 -0
  213. data/spec/models/link_spec.rb +1 -1
  214. data/spec/models/links_spec.rb +1 -1
  215. data/spec/models/ma_uby_category_spec.rb +1 -1
  216. data/spec/models/mau_metadata_spec.rb +1 -1
  217. data/spec/models/mau_spec.rb +1 -1
  218. data/spec/models/member_spec.rb +1 -1
  219. data/spec/models/members_body_spec.rb +1 -1
  220. data/spec/models/members_spec.rb +1 -1
  221. data/spec/models/patch_comment_spec.rb +1 -1
  222. data/spec/models/patch_operation_spec.rb +1 -1
  223. data/spec/models/policy_spec.rb +1 -1
  224. data/spec/models/prerequisite_spec.rb +1 -1
  225. data/spec/models/project_body_spec.rb +1 -1
  226. data/spec/models/project_spec.rb +1 -1
  227. data/spec/models/projects_spec.rb +1 -1
  228. data/spec/models/relay_proxy_config_body_spec.rb +1 -1
  229. data/spec/models/relay_proxy_config_spec.rb +1 -1
  230. data/spec/models/relay_proxy_configs_spec.rb +1 -1
  231. data/spec/models/role_spec.rb +1 -1
  232. data/spec/models/rollout_spec.rb +1 -1
  233. data/spec/models/rule_spec.rb +1 -1
  234. data/spec/models/scheduled_changes_feature_flag_conflict_spec.rb +1 -1
  235. data/spec/models/semantic_patch_instruction_inner_spec.rb +1 -1
  236. data/spec/models/semantic_patch_instruction_spec.rb +1 -1
  237. data/spec/models/semantic_patch_operation_spec.rb +1 -1
  238. data/spec/models/site_spec.rb +1 -1
  239. data/spec/models/statement_spec.rb +1 -1
  240. data/spec/models/stream_by_sdk_links_metadata_spec.rb +1 -1
  241. data/spec/models/stream_by_sdk_links_spec.rb +1 -1
  242. data/spec/models/stream_by_sdk_spec.rb +1 -1
  243. data/spec/models/stream_links_spec.rb +1 -1
  244. data/spec/models/stream_sdk_version_data_spec.rb +1 -1
  245. data/spec/models/stream_sdk_version_spec.rb +1 -1
  246. data/spec/models/stream_spec.rb +1 -1
  247. data/spec/models/stream_usage_error_spec.rb +1 -1
  248. data/spec/models/stream_usage_links_spec.rb +1 -1
  249. data/spec/models/stream_usage_metadata_spec.rb +1 -1
  250. data/spec/models/stream_usage_series_spec.rb +1 -1
  251. data/spec/models/streams_spec.rb +1 -1
  252. data/spec/models/subscription_body_spec.rb +65 -0
  253. data/spec/models/target_spec.rb +1 -1
  254. data/spec/models/token_body_spec.rb +1 -1
  255. data/spec/models/token_spec.rb +1 -1
  256. data/spec/models/tokens_spec.rb +1 -1
  257. data/spec/models/unbounded_segment_target_changes_spec.rb +1 -1
  258. data/spec/models/unbounded_segment_targets_body_spec.rb +1 -1
  259. data/spec/models/usage_error_spec.rb +1 -1
  260. data/spec/models/usage_links_spec.rb +1 -1
  261. data/spec/models/usage_spec.rb +1 -1
  262. data/spec/models/user_flag_setting_spec.rb +1 -1
  263. data/spec/models/user_flag_settings_spec.rb +1 -1
  264. data/spec/models/user_record_spec.rb +1 -1
  265. data/spec/models/user_segment_body_spec.rb +1 -1
  266. data/spec/models/user_segment_rule_spec.rb +1 -1
  267. data/spec/models/user_segment_spec.rb +1 -1
  268. data/spec/models/user_segments_spec.rb +1 -1
  269. data/spec/models/user_settings_body_spec.rb +1 -1
  270. data/spec/models/user_spec.rb +1 -1
  271. data/spec/models/user_targeting_expiration_for_flag_spec.rb +1 -1
  272. data/spec/models/user_targeting_expiration_for_flags_spec.rb +1 -1
  273. data/spec/models/user_targeting_expiration_for_segment_spec.rb +1 -1
  274. data/spec/models/user_targeting_expiration_on_flags_for_user_spec.rb +1 -1
  275. data/spec/models/user_targeting_expiration_resource_id_for_flag_spec.rb +1 -1
  276. data/spec/models/users_spec.rb +1 -1
  277. data/spec/models/variation_spec.rb +1 -1
  278. data/spec/models/webhook_body_spec.rb +1 -1
  279. data/spec/models/webhook_spec.rb +1 -1
  280. data/spec/models/webhooks_spec.rb +1 -1
  281. data/spec/models/weighted_variation_spec.rb +1 -1
  282. data/spec/spec_helper.rb +1 -1
  283. metadata +135 -103
@@ -0,0 +1,264 @@
1
+ =begin
2
+ #LaunchDarkly REST API
3
+
4
+ #Build custom integrations with the LaunchDarkly REST API
5
+
6
+ OpenAPI spec version: 3.8.0
7
+ Contact: support@launchdarkly.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.8
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module LaunchDarklyApi
16
+ class IntegrationSubscription
17
+ attr_accessor :_links
18
+
19
+ attr_accessor :_id
20
+
21
+ # The type of integration associated with this configuration.
22
+ attr_accessor :kind
23
+
24
+ # The user-defined name associated with this configuration.
25
+ attr_accessor :name
26
+
27
+ # A key-value mapping of configuration fields.
28
+ attr_accessor :config
29
+
30
+ attr_accessor :statements
31
+
32
+ # Whether or not the integration is currently active.
33
+ attr_accessor :on
34
+
35
+ # An array of tags for this integration configuration.
36
+ attr_accessor :tags
37
+
38
+ attr_accessor :_status
39
+
40
+ # Attribute mapping from ruby-style variable name to JSON key.
41
+ def self.attribute_map
42
+ {
43
+ :'_links' => :'_links',
44
+ :'_id' => :'_id',
45
+ :'kind' => :'kind',
46
+ :'name' => :'name',
47
+ :'config' => :'config',
48
+ :'statements' => :'statements',
49
+ :'on' => :'on',
50
+ :'tags' => :'tags',
51
+ :'_status' => :'_status'
52
+ }
53
+ end
54
+
55
+ # Attribute type mapping.
56
+ def self.swagger_types
57
+ {
58
+ :'_links' => :'HierarchicalLinks',
59
+ :'_id' => :'Id',
60
+ :'kind' => :'String',
61
+ :'name' => :'String',
62
+ :'config' => :'Object',
63
+ :'statements' => :'Array<Statement>',
64
+ :'on' => :'BOOLEAN',
65
+ :'tags' => :'Array<String>',
66
+ :'_status' => :'IntegrationSubscriptionStatus'
67
+ }
68
+ end
69
+
70
+ # Initializes the object
71
+ # @param [Hash] attributes Model attributes in the form of hash
72
+ def initialize(attributes = {})
73
+ return unless attributes.is_a?(Hash)
74
+
75
+ # convert string to symbol for hash key
76
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
77
+
78
+ if attributes.has_key?(:'_links')
79
+ self._links = attributes[:'_links']
80
+ end
81
+
82
+ if attributes.has_key?(:'_id')
83
+ self._id = attributes[:'_id']
84
+ end
85
+
86
+ if attributes.has_key?(:'kind')
87
+ self.kind = attributes[:'kind']
88
+ end
89
+
90
+ if attributes.has_key?(:'name')
91
+ self.name = attributes[:'name']
92
+ end
93
+
94
+ if attributes.has_key?(:'config')
95
+ self.config = attributes[:'config']
96
+ end
97
+
98
+ if attributes.has_key?(:'statements')
99
+ if (value = attributes[:'statements']).is_a?(Array)
100
+ self.statements = value
101
+ end
102
+ end
103
+
104
+ if attributes.has_key?(:'on')
105
+ self.on = attributes[:'on']
106
+ end
107
+
108
+ if attributes.has_key?(:'tags')
109
+ if (value = attributes[:'tags']).is_a?(Array)
110
+ self.tags = value
111
+ end
112
+ end
113
+
114
+ if attributes.has_key?(:'_status')
115
+ self._status = attributes[:'_status']
116
+ end
117
+ end
118
+
119
+ # Show invalid properties with the reasons. Usually used together with valid?
120
+ # @return Array for valid properties with the reasons
121
+ def list_invalid_properties
122
+ invalid_properties = Array.new
123
+ invalid_properties
124
+ end
125
+
126
+ # Check to see if the all the properties in the model are valid
127
+ # @return true if the model is valid
128
+ def valid?
129
+ true
130
+ end
131
+
132
+ # Checks equality by comparing each attribute.
133
+ # @param [Object] Object to be compared
134
+ def ==(o)
135
+ return true if self.equal?(o)
136
+ self.class == o.class &&
137
+ _links == o._links &&
138
+ _id == o._id &&
139
+ kind == o.kind &&
140
+ name == o.name &&
141
+ config == o.config &&
142
+ statements == o.statements &&
143
+ on == o.on &&
144
+ tags == o.tags &&
145
+ _status == o._status
146
+ end
147
+
148
+ # @see the `==` method
149
+ # @param [Object] Object to be compared
150
+ def eql?(o)
151
+ self == o
152
+ end
153
+
154
+ # Calculates hash code according to all attributes.
155
+ # @return [Fixnum] Hash code
156
+ def hash
157
+ [_links, _id, kind, name, config, statements, on, tags, _status].hash
158
+ end
159
+
160
+ # Builds the object from hash
161
+ # @param [Hash] attributes Model attributes in the form of hash
162
+ # @return [Object] Returns the model itself
163
+ def build_from_hash(attributes)
164
+ return nil unless attributes.is_a?(Hash)
165
+ self.class.swagger_types.each_pair do |key, type|
166
+ if type =~ /\AArray<(.*)>/i
167
+ # check to ensure the input is an array given that the the attribute
168
+ # is documented as an array but the input is not
169
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
170
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
171
+ end
172
+ elsif !attributes[self.class.attribute_map[key]].nil?
173
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
174
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
175
+ end
176
+
177
+ self
178
+ end
179
+
180
+ # Deserializes the data based on type
181
+ # @param string type Data type
182
+ # @param string value Value to be deserialized
183
+ # @return [Object] Deserialized data
184
+ def _deserialize(type, value)
185
+ case type.to_sym
186
+ when :DateTime
187
+ DateTime.parse(value)
188
+ when :Date
189
+ Date.parse(value)
190
+ when :String
191
+ value.to_s
192
+ when :Integer
193
+ value.to_i
194
+ when :Float
195
+ value.to_f
196
+ when :BOOLEAN
197
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
198
+ true
199
+ else
200
+ false
201
+ end
202
+ when :Object
203
+ # generic object (usually a Hash), return directly
204
+ value
205
+ when /\AArray<(?<inner_type>.+)>\z/
206
+ inner_type = Regexp.last_match[:inner_type]
207
+ value.map { |v| _deserialize(inner_type, v) }
208
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
209
+ k_type = Regexp.last_match[:k_type]
210
+ v_type = Regexp.last_match[:v_type]
211
+ {}.tap do |hash|
212
+ value.each do |k, v|
213
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
214
+ end
215
+ end
216
+ else # model
217
+ temp_model = LaunchDarklyApi.const_get(type).new
218
+ temp_model.build_from_hash(value)
219
+ end
220
+ end
221
+
222
+ # Returns the string representation of the object
223
+ # @return [String] String presentation of the object
224
+ def to_s
225
+ to_hash.to_s
226
+ end
227
+
228
+ # to_body is an alias to to_hash (backward compatibility)
229
+ # @return [Hash] Returns the object in the form of hash
230
+ def to_body
231
+ to_hash
232
+ end
233
+
234
+ # Returns the object in the form of hash
235
+ # @return [Hash] Returns the object in the form of hash
236
+ def to_hash
237
+ hash = {}
238
+ self.class.attribute_map.each_pair do |attr, param|
239
+ value = self.send(attr)
240
+ next if value.nil?
241
+ hash[param] = _to_hash(value)
242
+ end
243
+ hash
244
+ end
245
+
246
+ # Outputs non-array value in the form of hash
247
+ # For object, use to_hash. Otherwise, just return the value
248
+ # @param [Object] value Any valid value
249
+ # @return [Hash] Returns the value in the form of hash
250
+ def _to_hash(value)
251
+ if value.is_a?(Array)
252
+ value.compact.map { |v| _to_hash(v) }
253
+ elsif value.is_a?(Hash)
254
+ {}.tap do |hash|
255
+ value.each { |k, v| hash[k] = _to_hash(v) }
256
+ end
257
+ elsif value.respond_to? :to_hash
258
+ value.to_hash
259
+ else
260
+ value
261
+ end
262
+ end
263
+ end
264
+ end
@@ -0,0 +1,202 @@
1
+ =begin
2
+ #LaunchDarkly REST API
3
+
4
+ #Build custom integrations with the LaunchDarkly REST API
5
+
6
+ OpenAPI spec version: 3.8.0
7
+ Contact: support@launchdarkly.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.8
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module LaunchDarklyApi
16
+ class IntegrationSubscriptionStatus
17
+ attr_accessor :success_count
18
+
19
+ # A unix epoch time in milliseconds specifying the last time this integration was successfully used.
20
+ attr_accessor :last_success
21
+
22
+ attr_accessor :error_count
23
+
24
+ # Attribute mapping from ruby-style variable name to JSON key.
25
+ def self.attribute_map
26
+ {
27
+ :'success_count' => :'successCount',
28
+ :'last_success' => :'lastSuccess',
29
+ :'error_count' => :'errorCount'
30
+ }
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.swagger_types
35
+ {
36
+ :'success_count' => :'Integer',
37
+ :'last_success' => :'Integer',
38
+ :'error_count' => :'Integer'
39
+ }
40
+ end
41
+
42
+ # Initializes the object
43
+ # @param [Hash] attributes Model attributes in the form of hash
44
+ def initialize(attributes = {})
45
+ return unless attributes.is_a?(Hash)
46
+
47
+ # convert string to symbol for hash key
48
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
49
+
50
+ if attributes.has_key?(:'successCount')
51
+ self.success_count = attributes[:'successCount']
52
+ end
53
+
54
+ if attributes.has_key?(:'lastSuccess')
55
+ self.last_success = attributes[:'lastSuccess']
56
+ end
57
+
58
+ if attributes.has_key?(:'errorCount')
59
+ self.error_count = attributes[:'errorCount']
60
+ end
61
+ end
62
+
63
+ # Show invalid properties with the reasons. Usually used together with valid?
64
+ # @return Array for valid properties with the reasons
65
+ def list_invalid_properties
66
+ invalid_properties = Array.new
67
+ invalid_properties
68
+ end
69
+
70
+ # Check to see if the all the properties in the model are valid
71
+ # @return true if the model is valid
72
+ def valid?
73
+ true
74
+ end
75
+
76
+ # Checks equality by comparing each attribute.
77
+ # @param [Object] Object to be compared
78
+ def ==(o)
79
+ return true if self.equal?(o)
80
+ self.class == o.class &&
81
+ success_count == o.success_count &&
82
+ last_success == o.last_success &&
83
+ error_count == o.error_count
84
+ end
85
+
86
+ # @see the `==` method
87
+ # @param [Object] Object to be compared
88
+ def eql?(o)
89
+ self == o
90
+ end
91
+
92
+ # Calculates hash code according to all attributes.
93
+ # @return [Fixnum] Hash code
94
+ def hash
95
+ [success_count, last_success, error_count].hash
96
+ end
97
+
98
+ # Builds the object from hash
99
+ # @param [Hash] attributes Model attributes in the form of hash
100
+ # @return [Object] Returns the model itself
101
+ def build_from_hash(attributes)
102
+ return nil unless attributes.is_a?(Hash)
103
+ self.class.swagger_types.each_pair do |key, type|
104
+ if type =~ /\AArray<(.*)>/i
105
+ # check to ensure the input is an array given that the the attribute
106
+ # is documented as an array but the input is not
107
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
108
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
109
+ end
110
+ elsif !attributes[self.class.attribute_map[key]].nil?
111
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
112
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
113
+ end
114
+
115
+ self
116
+ end
117
+
118
+ # Deserializes the data based on type
119
+ # @param string type Data type
120
+ # @param string value Value to be deserialized
121
+ # @return [Object] Deserialized data
122
+ def _deserialize(type, value)
123
+ case type.to_sym
124
+ when :DateTime
125
+ DateTime.parse(value)
126
+ when :Date
127
+ Date.parse(value)
128
+ when :String
129
+ value.to_s
130
+ when :Integer
131
+ value.to_i
132
+ when :Float
133
+ value.to_f
134
+ when :BOOLEAN
135
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
136
+ true
137
+ else
138
+ false
139
+ end
140
+ when :Object
141
+ # generic object (usually a Hash), return directly
142
+ value
143
+ when /\AArray<(?<inner_type>.+)>\z/
144
+ inner_type = Regexp.last_match[:inner_type]
145
+ value.map { |v| _deserialize(inner_type, v) }
146
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
147
+ k_type = Regexp.last_match[:k_type]
148
+ v_type = Regexp.last_match[:v_type]
149
+ {}.tap do |hash|
150
+ value.each do |k, v|
151
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
152
+ end
153
+ end
154
+ else # model
155
+ temp_model = LaunchDarklyApi.const_get(type).new
156
+ temp_model.build_from_hash(value)
157
+ end
158
+ end
159
+
160
+ # Returns the string representation of the object
161
+ # @return [String] String presentation of the object
162
+ def to_s
163
+ to_hash.to_s
164
+ end
165
+
166
+ # to_body is an alias to to_hash (backward compatibility)
167
+ # @return [Hash] Returns the object in the form of hash
168
+ def to_body
169
+ to_hash
170
+ end
171
+
172
+ # Returns the object in the form of hash
173
+ # @return [Hash] Returns the object in the form of hash
174
+ def to_hash
175
+ hash = {}
176
+ self.class.attribute_map.each_pair do |attr, param|
177
+ value = self.send(attr)
178
+ next if value.nil?
179
+ hash[param] = _to_hash(value)
180
+ end
181
+ hash
182
+ end
183
+
184
+ # Outputs non-array value in the form of hash
185
+ # For object, use to_hash. Otherwise, just return the value
186
+ # @param [Object] value Any valid value
187
+ # @return [Hash] Returns the value in the form of hash
188
+ def _to_hash(value)
189
+ if value.is_a?(Array)
190
+ value.compact.map { |v| _to_hash(v) }
191
+ elsif value.is_a?(Hash)
192
+ {}.tap do |hash|
193
+ value.each { |k, v| hash[k] = _to_hash(v) }
194
+ end
195
+ elsif value.respond_to? :to_hash
196
+ value.to_hash
197
+ else
198
+ value
199
+ end
200
+ end
201
+ end
202
+ end