launchdarkly_api 5.0.2 → 5.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 +248 -235
- data/docs/ApprovalRequest.md +4 -1
- data/docs/ApprovalRequestConfigBody.md +2 -0
- data/docs/ApprovalRequestFlagConfigCopyBody.md +13 -0
- data/docs/{UnboundedSegmentTargetChanges.md → BigSegmentTargetChanges.md} +1 -1
- data/docs/BigSegmentTargetsBody.md +9 -0
- data/docs/DependentFlag.md +11 -0
- data/docs/DependentFlagEnvironment.md +11 -0
- data/docs/DependentFlagEnvironmentLinks.md +9 -0
- data/docs/{IntegrationLinks.md → DependentFlagLinks.md} +1 -1
- data/docs/DependentFlagsByEnvironment.md +10 -0
- data/docs/DependentFlagsLinks.md +9 -0
- data/docs/EnvironmentApprovalSettings.md +2 -1
- data/docs/EnvironmentsApi.md +3 -3
- data/docs/FeatureFlagStatus.md +1 -1
- data/docs/FeatureFlagStatusAcrossEnvironments.md +1 -1
- data/docs/FeatureFlagStatusLinks.md +9 -0
- data/docs/FeatureFlagStatuses.md +1 -1
- data/docs/FeatureFlagsApi.md +184 -6
- data/docs/Integration.md +1 -1
- data/docs/MultiEnvironmentDependentFlag.md +12 -0
- data/docs/MultiEnvironmentDependentFlags.md +10 -0
- data/docs/Source.md +9 -0
- data/docs/UserSegment.md +1 -1
- data/docs/UserSegmentBody.md +1 -1
- data/docs/UserSegmentsApi.md +9 -9
- data/launchdarkly_api.gemspec +1 -1
- data/lib/launchdarkly_api.rb +14 -4
- data/lib/launchdarkly_api/api/access_tokens_api.rb +1 -1
- data/lib/launchdarkly_api/api/audit_log_api.rb +1 -1
- data/lib/launchdarkly_api/api/custom_roles_api.rb +1 -1
- data/lib/launchdarkly_api/api/customer_metrics_api.rb +1 -1
- data/lib/launchdarkly_api/api/data_export_destinations_api.rb +1 -1
- data/lib/launchdarkly_api/api/environments_api.rb +3 -3
- data/lib/launchdarkly_api/api/feature_flags_api.rb +198 -10
- data/lib/launchdarkly_api/api/integrations_api.rb +1 -1
- data/lib/launchdarkly_api/api/projects_api.rb +1 -1
- data/lib/launchdarkly_api/api/relay_proxy_configurations_api.rb +1 -1
- data/lib/launchdarkly_api/api/root_api.rb +1 -1
- data/lib/launchdarkly_api/api/team_members_api.rb +1 -1
- data/lib/launchdarkly_api/api/user_segments_api.rb +18 -18
- data/lib/launchdarkly_api/api/user_settings_api.rb +1 -1
- data/lib/launchdarkly_api/api/users_api.rb +1 -1
- data/lib/launchdarkly_api/api/webhooks_api.rb +1 -1
- data/lib/launchdarkly_api/api_client.rb +1 -1
- data/lib/launchdarkly_api/api_error.rb +1 -1
- data/lib/launchdarkly_api/configuration.rb +1 -1
- data/lib/launchdarkly_api/models/approval_request.rb +37 -8
- data/lib/launchdarkly_api/models/approval_request_apply_config_body.rb +1 -1
- data/lib/launchdarkly_api/models/approval_request_config_body.rb +25 -5
- data/lib/launchdarkly_api/models/approval_request_flag_config_copy_body.rb +254 -0
- data/lib/launchdarkly_api/models/approval_request_review.rb +1 -1
- data/lib/launchdarkly_api/models/approval_request_review_config_body.rb +1 -1
- data/lib/launchdarkly_api/models/approval_request_review_status.rb +1 -1
- data/lib/launchdarkly_api/models/approval_requests.rb +1 -1
- data/lib/launchdarkly_api/models/audit_log_entries.rb +1 -1
- data/lib/launchdarkly_api/models/audit_log_entry.rb +1 -1
- data/lib/launchdarkly_api/models/audit_log_entry_target.rb +1 -1
- data/lib/launchdarkly_api/models/{unbounded_segment_target_changes.rb → big_segment_target_changes.rb} +2 -2
- data/lib/launchdarkly_api/models/{unbounded_segment_targets_body.rb → big_segment_targets_body.rb} +4 -4
- data/lib/launchdarkly_api/models/clause.rb +1 -1
- data/lib/launchdarkly_api/models/client_side_availability.rb +1 -1
- data/lib/launchdarkly_api/models/copy_actions.rb +1 -1
- data/lib/launchdarkly_api/models/custom_property.rb +1 -1
- data/lib/launchdarkly_api/models/custom_property_values.rb +1 -1
- data/lib/launchdarkly_api/models/custom_role.rb +1 -1
- data/lib/launchdarkly_api/models/custom_role_body.rb +1 -1
- data/lib/launchdarkly_api/models/custom_roles.rb +1 -1
- data/lib/launchdarkly_api/models/defaults.rb +1 -1
- data/lib/launchdarkly_api/models/dependent_flag.rb +211 -0
- data/lib/launchdarkly_api/models/{integration__links.rb → dependent_flag__links.rb} +2 -2
- data/lib/launchdarkly_api/models/dependent_flag_environment.rb +211 -0
- data/lib/launchdarkly_api/models/dependent_flag_environment__links.rb +193 -0
- data/lib/launchdarkly_api/models/dependent_flags_by_environment.rb +204 -0
- data/lib/launchdarkly_api/models/dependent_flags_links.rb +193 -0
- data/lib/launchdarkly_api/models/destination.rb +1 -1
- data/lib/launchdarkly_api/models/destination_amazon_kinesis.rb +1 -1
- data/lib/launchdarkly_api/models/destination_body.rb +1 -1
- data/lib/launchdarkly_api/models/destination_google_pub_sub.rb +1 -1
- data/lib/launchdarkly_api/models/destination_m_particle.rb +1 -1
- data/lib/launchdarkly_api/models/destination_segment.rb +1 -1
- data/lib/launchdarkly_api/models/destinations.rb +1 -1
- data/lib/launchdarkly_api/models/environment.rb +1 -1
- data/lib/launchdarkly_api/models/environment_approval_settings.rb +18 -6
- data/lib/launchdarkly_api/models/environment_post.rb +1 -1
- data/lib/launchdarkly_api/models/evaluation_usage_error.rb +1 -1
- data/lib/launchdarkly_api/models/events.rb +1 -1
- data/lib/launchdarkly_api/models/fallthrough.rb +1 -1
- data/lib/launchdarkly_api/models/feature_flag.rb +1 -1
- data/lib/launchdarkly_api/models/feature_flag_body.rb +1 -1
- data/lib/launchdarkly_api/models/feature_flag_config.rb +1 -1
- data/lib/launchdarkly_api/models/feature_flag_copy_body.rb +1 -1
- data/lib/launchdarkly_api/models/feature_flag_copy_object.rb +1 -1
- data/lib/launchdarkly_api/models/feature_flag_scheduled_change.rb +1 -1
- data/lib/launchdarkly_api/models/feature_flag_scheduled_changes.rb +1 -1
- data/lib/launchdarkly_api/models/feature_flag_scheduled_changes_conflicts.rb +1 -1
- data/lib/launchdarkly_api/models/feature_flag_scheduled_changes_conflicts_instructions.rb +1 -1
- data/lib/launchdarkly_api/models/feature_flag_status.rb +2 -2
- data/lib/launchdarkly_api/models/feature_flag_status_across_environments.rb +2 -2
- data/lib/launchdarkly_api/models/feature_flag_status_for_queried_environment.rb +1 -1
- data/lib/launchdarkly_api/models/feature_flag_status_links.rb +193 -0
- data/lib/launchdarkly_api/models/feature_flag_statuses.rb +2 -2
- data/lib/launchdarkly_api/models/feature_flags.rb +1 -1
- data/lib/launchdarkly_api/models/flag_config_scheduled_changes_conflicts_body.rb +1 -1
- data/lib/launchdarkly_api/models/flag_config_scheduled_changes_patch_body.rb +1 -1
- data/lib/launchdarkly_api/models/flag_config_scheduled_changes_post_body.rb +1 -1
- data/lib/launchdarkly_api/models/flag_list_item.rb +1 -1
- data/lib/launchdarkly_api/models/hierarchical_links.rb +1 -1
- data/lib/launchdarkly_api/models/id.rb +1 -1
- data/lib/launchdarkly_api/models/integration.rb +2 -2
- data/lib/launchdarkly_api/models/integration_subscription.rb +1 -1
- data/lib/launchdarkly_api/models/integration_subscription__status.rb +1 -1
- data/lib/launchdarkly_api/models/integrations.rb +1 -1
- data/lib/launchdarkly_api/models/link.rb +1 -1
- data/lib/launchdarkly_api/models/links.rb +1 -1
- data/lib/launchdarkly_api/models/ma_uby_category.rb +1 -1
- data/lib/launchdarkly_api/models/mau.rb +1 -1
- data/lib/launchdarkly_api/models/mau_metadata.rb +1 -1
- data/lib/launchdarkly_api/models/member.rb +1 -1
- data/lib/launchdarkly_api/models/member__last_seen_metadata.rb +1 -1
- data/lib/launchdarkly_api/models/members.rb +1 -1
- data/lib/launchdarkly_api/models/members_body.rb +1 -1
- data/lib/launchdarkly_api/models/multi_environment_dependent_flag.rb +222 -0
- data/lib/launchdarkly_api/models/multi_environment_dependent_flags.rb +204 -0
- data/lib/launchdarkly_api/models/patch_comment.rb +1 -1
- data/lib/launchdarkly_api/models/patch_operation.rb +1 -1
- data/lib/launchdarkly_api/models/policy.rb +1 -1
- data/lib/launchdarkly_api/models/prerequisite.rb +1 -1
- data/lib/launchdarkly_api/models/project.rb +1 -1
- data/lib/launchdarkly_api/models/project_body.rb +1 -1
- data/lib/launchdarkly_api/models/projects.rb +1 -1
- data/lib/launchdarkly_api/models/relay_proxy_config.rb +1 -1
- data/lib/launchdarkly_api/models/relay_proxy_config_body.rb +1 -1
- data/lib/launchdarkly_api/models/relay_proxy_configs.rb +1 -1
- data/lib/launchdarkly_api/models/role.rb +1 -1
- data/lib/launchdarkly_api/models/rollout.rb +1 -1
- data/lib/launchdarkly_api/models/rule.rb +1 -1
- data/lib/launchdarkly_api/models/scheduled_changes_feature_flag_conflict.rb +1 -1
- data/lib/launchdarkly_api/models/semantic_patch_instruction.rb +1 -1
- data/lib/launchdarkly_api/models/semantic_patch_instruction_inner.rb +1 -1
- data/lib/launchdarkly_api/models/semantic_patch_operation.rb +1 -1
- data/lib/launchdarkly_api/models/site.rb +1 -1
- data/lib/launchdarkly_api/models/source.rb +195 -0
- data/lib/launchdarkly_api/models/statement.rb +1 -1
- data/lib/launchdarkly_api/models/stream.rb +1 -1
- data/lib/launchdarkly_api/models/stream_by_sdk.rb +1 -1
- data/lib/launchdarkly_api/models/stream_by_sdk_links.rb +1 -1
- data/lib/launchdarkly_api/models/stream_by_sdk_links_metadata.rb +1 -1
- data/lib/launchdarkly_api/models/stream_links.rb +1 -1
- data/lib/launchdarkly_api/models/stream_sdk_version.rb +1 -1
- data/lib/launchdarkly_api/models/stream_sdk_version_data.rb +1 -1
- data/lib/launchdarkly_api/models/stream_usage_error.rb +1 -1
- data/lib/launchdarkly_api/models/stream_usage_links.rb +1 -1
- data/lib/launchdarkly_api/models/stream_usage_metadata.rb +1 -1
- data/lib/launchdarkly_api/models/stream_usage_series.rb +1 -1
- data/lib/launchdarkly_api/models/streams.rb +1 -1
- data/lib/launchdarkly_api/models/subscription_body.rb +1 -1
- data/lib/launchdarkly_api/models/target.rb +1 -1
- data/lib/launchdarkly_api/models/token.rb +1 -1
- data/lib/launchdarkly_api/models/token_body.rb +1 -1
- data/lib/launchdarkly_api/models/tokens.rb +1 -1
- data/lib/launchdarkly_api/models/usage.rb +1 -1
- data/lib/launchdarkly_api/models/usage_error.rb +1 -1
- data/lib/launchdarkly_api/models/usage_links.rb +1 -1
- data/lib/launchdarkly_api/models/user.rb +1 -1
- data/lib/launchdarkly_api/models/user_flag_setting.rb +1 -1
- data/lib/launchdarkly_api/models/user_flag_settings.rb +1 -1
- data/lib/launchdarkly_api/models/user_record.rb +1 -1
- data/lib/launchdarkly_api/models/user_segment.rb +2 -2
- data/lib/launchdarkly_api/models/user_segment_body.rb +2 -2
- data/lib/launchdarkly_api/models/user_segment_rule.rb +1 -1
- data/lib/launchdarkly_api/models/user_segments.rb +1 -1
- data/lib/launchdarkly_api/models/user_settings_body.rb +1 -1
- data/lib/launchdarkly_api/models/user_targeting_expiration_for_flag.rb +1 -1
- data/lib/launchdarkly_api/models/user_targeting_expiration_for_flags.rb +1 -1
- data/lib/launchdarkly_api/models/user_targeting_expiration_for_segment.rb +1 -1
- data/lib/launchdarkly_api/models/user_targeting_expiration_on_flags_for_user.rb +1 -1
- data/lib/launchdarkly_api/models/user_targeting_expiration_resource_id_for_flag.rb +1 -1
- data/lib/launchdarkly_api/models/users.rb +1 -1
- data/lib/launchdarkly_api/models/variation.rb +1 -1
- data/lib/launchdarkly_api/models/webhook.rb +1 -1
- data/lib/launchdarkly_api/models/webhook_body.rb +1 -1
- data/lib/launchdarkly_api/models/webhooks.rb +1 -1
- data/lib/launchdarkly_api/models/weighted_variation.rb +1 -1
- data/lib/launchdarkly_api/version.rb +2 -2
- data/openapi.yml +262 -32
- data/spec/api/access_tokens_api_spec.rb +1 -1
- data/spec/api/audit_log_api_spec.rb +1 -1
- data/spec/api/custom_roles_api_spec.rb +1 -1
- data/spec/api/customer_metrics_api_spec.rb +1 -1
- data/spec/api/data_export_destinations_api_spec.rb +1 -1
- data/spec/api/environments_api_spec.rb +2 -2
- data/spec/api/feature_flags_api_spec.rb +43 -4
- data/spec/api/integrations_api_spec.rb +1 -1
- data/spec/api/projects_api_spec.rb +1 -1
- data/spec/api/relay_proxy_configurations_api_spec.rb +1 -1
- data/spec/api/root_api_spec.rb +1 -1
- data/spec/api/team_members_api_spec.rb +1 -1
- data/spec/api/user_segments_api_spec.rb +5 -5
- data/spec/api/user_settings_api_spec.rb +1 -1
- data/spec/api/users_api_spec.rb +1 -1
- data/spec/api/webhooks_api_spec.rb +1 -1
- data/spec/api_client_spec.rb +1 -1
- data/spec/configuration_spec.rb +1 -1
- data/spec/models/approval_request_apply_config_body_spec.rb +1 -1
- data/spec/models/approval_request_config_body_spec.rb +13 -1
- data/spec/models/approval_request_flag_config_copy_body_spec.rb +71 -0
- data/spec/models/approval_request_review_config_body_spec.rb +1 -1
- data/spec/models/approval_request_review_spec.rb +1 -1
- data/spec/models/approval_request_review_status_spec.rb +1 -1
- data/spec/models/approval_request_spec.rb +20 -2
- data/spec/models/approval_requests_spec.rb +1 -1
- data/spec/models/audit_log_entries_spec.rb +1 -1
- data/spec/models/audit_log_entry_spec.rb +1 -1
- data/spec/models/audit_log_entry_target_spec.rb +1 -1
- data/spec/models/{unbounded_segment_target_changes_spec.rb → big_segment_target_changes_spec.rb} +7 -7
- data/spec/models/{unbounded_segment_targets_body_spec.rb → big_segment_targets_body_spec.rb} +7 -7
- data/spec/models/clause_spec.rb +1 -1
- data/spec/models/client_side_availability_spec.rb +1 -1
- data/spec/models/copy_actions_spec.rb +1 -1
- data/spec/models/custom_property_spec.rb +1 -1
- data/spec/models/custom_property_values_spec.rb +1 -1
- data/spec/models/custom_role_body_spec.rb +1 -1
- data/spec/models/custom_role_spec.rb +1 -1
- data/spec/models/custom_roles_spec.rb +1 -1
- data/spec/models/defaults_spec.rb +1 -1
- data/spec/models/{integration__links_spec.rb → dependent_flag__links_spec.rb} +7 -7
- data/spec/models/dependent_flag_environment__links_spec.rb +47 -0
- data/spec/models/dependent_flag_environment_spec.rb +59 -0
- data/spec/models/dependent_flag_spec.rb +59 -0
- data/spec/models/dependent_flags_by_environment_spec.rb +53 -0
- data/spec/models/dependent_flags_links_spec.rb +47 -0
- data/spec/models/destination_amazon_kinesis_spec.rb +1 -1
- data/spec/models/destination_body_spec.rb +1 -1
- data/spec/models/destination_google_pub_sub_spec.rb +1 -1
- data/spec/models/destination_m_particle_spec.rb +1 -1
- data/spec/models/destination_segment_spec.rb +1 -1
- data/spec/models/destination_spec.rb +1 -1
- data/spec/models/destinations_spec.rb +1 -1
- data/spec/models/environment_approval_settings_spec.rb +7 -1
- data/spec/models/environment_post_spec.rb +1 -1
- data/spec/models/environment_spec.rb +1 -1
- data/spec/models/evaluation_usage_error_spec.rb +1 -1
- data/spec/models/events_spec.rb +1 -1
- data/spec/models/fallthrough_spec.rb +1 -1
- data/spec/models/feature_flag_body_spec.rb +1 -1
- data/spec/models/feature_flag_config_spec.rb +1 -1
- data/spec/models/feature_flag_copy_body_spec.rb +1 -1
- data/spec/models/feature_flag_copy_object_spec.rb +1 -1
- data/spec/models/feature_flag_scheduled_change_spec.rb +1 -1
- data/spec/models/feature_flag_scheduled_changes_conflicts_instructions_spec.rb +1 -1
- data/spec/models/feature_flag_scheduled_changes_conflicts_spec.rb +1 -1
- data/spec/models/feature_flag_scheduled_changes_spec.rb +1 -1
- data/spec/models/feature_flag_spec.rb +1 -1
- data/spec/models/feature_flag_status_across_environments_spec.rb +1 -1
- data/spec/models/feature_flag_status_for_queried_environment_spec.rb +1 -1
- data/spec/models/feature_flag_status_links_spec.rb +47 -0
- data/spec/models/feature_flag_status_spec.rb +1 -1
- data/spec/models/feature_flag_statuses_spec.rb +1 -1
- data/spec/models/feature_flags_spec.rb +1 -1
- data/spec/models/flag_config_scheduled_changes_conflicts_body_spec.rb +1 -1
- data/spec/models/flag_config_scheduled_changes_patch_body_spec.rb +1 -1
- data/spec/models/flag_config_scheduled_changes_post_body_spec.rb +1 -1
- data/spec/models/flag_list_item_spec.rb +1 -1
- data/spec/models/hierarchical_links_spec.rb +1 -1
- data/spec/models/id_spec.rb +1 -1
- data/spec/models/integration_spec.rb +1 -1
- data/spec/models/integration_subscription__status_spec.rb +1 -1
- data/spec/models/integration_subscription_spec.rb +1 -1
- data/spec/models/integrations_spec.rb +1 -1
- data/spec/models/link_spec.rb +1 -1
- data/spec/models/links_spec.rb +1 -1
- data/spec/models/ma_uby_category_spec.rb +1 -1
- data/spec/models/mau_metadata_spec.rb +1 -1
- data/spec/models/mau_spec.rb +1 -1
- data/spec/models/member__last_seen_metadata_spec.rb +1 -1
- data/spec/models/member_spec.rb +1 -1
- data/spec/models/members_body_spec.rb +1 -1
- data/spec/models/members_spec.rb +1 -1
- data/spec/models/multi_environment_dependent_flag_spec.rb +65 -0
- data/spec/models/multi_environment_dependent_flags_spec.rb +53 -0
- data/spec/models/patch_comment_spec.rb +1 -1
- data/spec/models/patch_operation_spec.rb +1 -1
- data/spec/models/policy_spec.rb +1 -1
- data/spec/models/prerequisite_spec.rb +1 -1
- data/spec/models/project_body_spec.rb +1 -1
- data/spec/models/project_spec.rb +1 -1
- data/spec/models/projects_spec.rb +1 -1
- data/spec/models/relay_proxy_config_body_spec.rb +1 -1
- data/spec/models/relay_proxy_config_spec.rb +1 -1
- data/spec/models/relay_proxy_configs_spec.rb +1 -1
- data/spec/models/role_spec.rb +1 -1
- data/spec/models/rollout_spec.rb +1 -1
- data/spec/models/rule_spec.rb +1 -1
- data/spec/models/scheduled_changes_feature_flag_conflict_spec.rb +1 -1
- data/spec/models/semantic_patch_instruction_inner_spec.rb +1 -1
- data/spec/models/semantic_patch_instruction_spec.rb +1 -1
- data/spec/models/semantic_patch_operation_spec.rb +1 -1
- data/spec/models/site_spec.rb +1 -1
- data/spec/models/source_spec.rb +47 -0
- data/spec/models/statement_spec.rb +1 -1
- data/spec/models/stream_by_sdk_links_metadata_spec.rb +1 -1
- data/spec/models/stream_by_sdk_links_spec.rb +1 -1
- data/spec/models/stream_by_sdk_spec.rb +1 -1
- data/spec/models/stream_links_spec.rb +1 -1
- data/spec/models/stream_sdk_version_data_spec.rb +1 -1
- data/spec/models/stream_sdk_version_spec.rb +1 -1
- data/spec/models/stream_spec.rb +1 -1
- data/spec/models/stream_usage_error_spec.rb +1 -1
- data/spec/models/stream_usage_links_spec.rb +1 -1
- data/spec/models/stream_usage_metadata_spec.rb +1 -1
- data/spec/models/stream_usage_series_spec.rb +1 -1
- data/spec/models/streams_spec.rb +1 -1
- data/spec/models/subscription_body_spec.rb +1 -1
- data/spec/models/target_spec.rb +1 -1
- data/spec/models/token_body_spec.rb +1 -1
- data/spec/models/token_spec.rb +1 -1
- data/spec/models/tokens_spec.rb +1 -1
- data/spec/models/usage_error_spec.rb +1 -1
- data/spec/models/usage_links_spec.rb +1 -1
- data/spec/models/usage_spec.rb +1 -1
- data/spec/models/user_flag_setting_spec.rb +1 -1
- data/spec/models/user_flag_settings_spec.rb +1 -1
- data/spec/models/user_record_spec.rb +1 -1
- data/spec/models/user_segment_body_spec.rb +1 -1
- data/spec/models/user_segment_rule_spec.rb +1 -1
- data/spec/models/user_segment_spec.rb +1 -1
- data/spec/models/user_segments_spec.rb +1 -1
- data/spec/models/user_settings_body_spec.rb +1 -1
- data/spec/models/user_spec.rb +1 -1
- data/spec/models/user_targeting_expiration_for_flag_spec.rb +1 -1
- data/spec/models/user_targeting_expiration_for_flags_spec.rb +1 -1
- data/spec/models/user_targeting_expiration_for_segment_spec.rb +1 -1
- data/spec/models/user_targeting_expiration_on_flags_for_user_spec.rb +1 -1
- data/spec/models/user_targeting_expiration_resource_id_for_flag_spec.rb +1 -1
- data/spec/models/users_spec.rb +1 -1
- data/spec/models/variation_spec.rb +1 -1
- data/spec/models/webhook_body_spec.rb +1 -1
- data/spec/models/webhook_spec.rb +1 -1
- data/spec/models/webhooks_spec.rb +1 -1
- data/spec/models/weighted_variation_spec.rb +1 -1
- data/spec/spec_helper.rb +1 -1
- metadata +54 -14
- data/docs/UnboundedSegmentTargetsBody.md +0 -9
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#Build custom integrations with the LaunchDarkly REST API
|
|
5
5
|
|
|
6
|
-
OpenAPI spec version: 5.0
|
|
6
|
+
OpenAPI spec version: 5.4.0
|
|
7
7
|
Contact: support@launchdarkly.com
|
|
8
8
|
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
|
9
9
|
Swagger Codegen version: 2.4.17
|
|
@@ -475,47 +475,47 @@ module LaunchDarklyApi
|
|
|
475
475
|
end
|
|
476
476
|
return data, status_code, headers
|
|
477
477
|
end
|
|
478
|
-
# Update targets included or excluded in
|
|
478
|
+
# Update targets included or excluded in a big segment
|
|
479
479
|
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
480
480
|
# @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
|
|
481
481
|
# @param user_segment_key The user segment's key. The key identifies the user segment in your code.
|
|
482
|
-
# @param
|
|
482
|
+
# @param big_segment_targets_body Add or remove user targets to the included or excluded lists on a big segment. Contact your account manager for early access to this feature.
|
|
483
483
|
# @param [Hash] opts the optional parameters
|
|
484
484
|
# @return [nil]
|
|
485
|
-
def
|
|
486
|
-
|
|
485
|
+
def update_big_segment_targets(project_key, environment_key, user_segment_key, big_segment_targets_body, opts = {})
|
|
486
|
+
update_big_segment_targets_with_http_info(project_key, environment_key, user_segment_key, big_segment_targets_body, opts)
|
|
487
487
|
nil
|
|
488
488
|
end
|
|
489
489
|
|
|
490
|
-
# Update targets included or excluded in
|
|
490
|
+
# Update targets included or excluded in a big segment
|
|
491
491
|
# @param project_key The project key, used to tie the flags together under one project so they can be managed together.
|
|
492
492
|
# @param environment_key The environment key, used to tie together flag configuration and users under one environment so they can be managed together.
|
|
493
493
|
# @param user_segment_key The user segment's key. The key identifies the user segment in your code.
|
|
494
|
-
# @param
|
|
494
|
+
# @param big_segment_targets_body Add or remove user targets to the included or excluded lists on a big segment. Contact your account manager for early access to this feature.
|
|
495
495
|
# @param [Hash] opts the optional parameters
|
|
496
496
|
# @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
|
|
497
|
-
def
|
|
497
|
+
def update_big_segment_targets_with_http_info(project_key, environment_key, user_segment_key, big_segment_targets_body, opts = {})
|
|
498
498
|
if @api_client.config.debugging
|
|
499
|
-
@api_client.config.logger.debug 'Calling API: UserSegmentsApi.
|
|
499
|
+
@api_client.config.logger.debug 'Calling API: UserSegmentsApi.update_big_segment_targets ...'
|
|
500
500
|
end
|
|
501
501
|
# verify the required parameter 'project_key' is set
|
|
502
502
|
if @api_client.config.client_side_validation && project_key.nil?
|
|
503
|
-
fail ArgumentError, "Missing the required parameter 'project_key' when calling UserSegmentsApi.
|
|
503
|
+
fail ArgumentError, "Missing the required parameter 'project_key' when calling UserSegmentsApi.update_big_segment_targets"
|
|
504
504
|
end
|
|
505
505
|
# verify the required parameter 'environment_key' is set
|
|
506
506
|
if @api_client.config.client_side_validation && environment_key.nil?
|
|
507
|
-
fail ArgumentError, "Missing the required parameter 'environment_key' when calling UserSegmentsApi.
|
|
507
|
+
fail ArgumentError, "Missing the required parameter 'environment_key' when calling UserSegmentsApi.update_big_segment_targets"
|
|
508
508
|
end
|
|
509
509
|
# verify the required parameter 'user_segment_key' is set
|
|
510
510
|
if @api_client.config.client_side_validation && user_segment_key.nil?
|
|
511
|
-
fail ArgumentError, "Missing the required parameter 'user_segment_key' when calling UserSegmentsApi.
|
|
511
|
+
fail ArgumentError, "Missing the required parameter 'user_segment_key' when calling UserSegmentsApi.update_big_segment_targets"
|
|
512
512
|
end
|
|
513
|
-
# verify the required parameter '
|
|
514
|
-
if @api_client.config.client_side_validation &&
|
|
515
|
-
fail ArgumentError, "Missing the required parameter '
|
|
513
|
+
# verify the required parameter 'big_segment_targets_body' is set
|
|
514
|
+
if @api_client.config.client_side_validation && big_segment_targets_body.nil?
|
|
515
|
+
fail ArgumentError, "Missing the required parameter 'big_segment_targets_body' when calling UserSegmentsApi.update_big_segment_targets"
|
|
516
516
|
end
|
|
517
517
|
# resource path
|
|
518
|
-
local_var_path = '/segments/{projectKey}/{environmentKey}/{userSegmentKey}/
|
|
518
|
+
local_var_path = '/segments/{projectKey}/{environmentKey}/{userSegmentKey}/users'.sub('{' + 'projectKey' + '}', project_key.to_s).sub('{' + 'environmentKey' + '}', environment_key.to_s).sub('{' + 'userSegmentKey' + '}', user_segment_key.to_s)
|
|
519
519
|
|
|
520
520
|
# query parameters
|
|
521
521
|
query_params = {}
|
|
@@ -531,7 +531,7 @@ module LaunchDarklyApi
|
|
|
531
531
|
form_params = {}
|
|
532
532
|
|
|
533
533
|
# http body (model)
|
|
534
|
-
post_body = @api_client.object_to_http_body(
|
|
534
|
+
post_body = @api_client.object_to_http_body(big_segment_targets_body)
|
|
535
535
|
auth_names = ['Token']
|
|
536
536
|
data, status_code, headers = @api_client.call_api(:POST, local_var_path,
|
|
537
537
|
:header_params => header_params,
|
|
@@ -540,7 +540,7 @@ module LaunchDarklyApi
|
|
|
540
540
|
:body => post_body,
|
|
541
541
|
:auth_names => auth_names)
|
|
542
542
|
if @api_client.config.debugging
|
|
543
|
-
@api_client.config.logger.debug "API called: UserSegmentsApi#
|
|
543
|
+
@api_client.config.logger.debug "API called: UserSegmentsApi#update_big_segment_targets\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
544
544
|
end
|
|
545
545
|
return data, status_code, headers
|
|
546
546
|
end
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#Build custom integrations with the LaunchDarkly REST API
|
|
5
5
|
|
|
6
|
-
OpenAPI spec version: 5.0
|
|
6
|
+
OpenAPI spec version: 5.4.0
|
|
7
7
|
Contact: support@launchdarkly.com
|
|
8
8
|
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
|
9
9
|
Swagger Codegen version: 2.4.17
|
|
@@ -26,7 +26,7 @@ module LaunchDarklyApi
|
|
|
26
26
|
|
|
27
27
|
attr_accessor :review_status
|
|
28
28
|
|
|
29
|
-
# | Name
|
|
29
|
+
# | Name | Description | | ---------:| ----------- | | pending | the approval request has not been applied yet | | completed | the approval request has been applied successfully | | scheduled | the approval request for a scheduled change has been applied successfully | | failed | the approval request has been applied but the changes were not applied successfully |
|
|
30
30
|
attr_accessor :status
|
|
31
31
|
|
|
32
32
|
# The id of the member that applied the approval request
|
|
@@ -41,6 +41,14 @@ module LaunchDarklyApi
|
|
|
41
41
|
|
|
42
42
|
attr_accessor :instructions
|
|
43
43
|
|
|
44
|
+
# Timestamp for when instructions will be executed
|
|
45
|
+
attr_accessor :execution_date
|
|
46
|
+
|
|
47
|
+
# ID of scheduled change to edit or delete
|
|
48
|
+
attr_accessor :operating_on_id
|
|
49
|
+
|
|
50
|
+
attr_accessor :source
|
|
51
|
+
|
|
44
52
|
class EnumAttributeValidator
|
|
45
53
|
attr_reader :datatype
|
|
46
54
|
attr_reader :allowable_values
|
|
@@ -76,7 +84,10 @@ module LaunchDarklyApi
|
|
|
76
84
|
:'applied_date' => :'appliedDate',
|
|
77
85
|
:'all_reviews' => :'allReviews',
|
|
78
86
|
:'notify_member_ids' => :'notifyMemberIds',
|
|
79
|
-
:'instructions' => :'instructions'
|
|
87
|
+
:'instructions' => :'instructions',
|
|
88
|
+
:'execution_date' => :'executionDate',
|
|
89
|
+
:'operating_on_id' => :'operatingOnId',
|
|
90
|
+
:'source' => :'source'
|
|
80
91
|
}
|
|
81
92
|
end
|
|
82
93
|
|
|
@@ -93,7 +104,10 @@ module LaunchDarklyApi
|
|
|
93
104
|
:'applied_date' => :'Integer',
|
|
94
105
|
:'all_reviews' => :'Array<ApprovalRequestReview>',
|
|
95
106
|
:'notify_member_ids' => :'Array<String>',
|
|
96
|
-
:'instructions' => :'SemanticPatchInstruction'
|
|
107
|
+
:'instructions' => :'SemanticPatchInstruction',
|
|
108
|
+
:'execution_date' => :'Integer',
|
|
109
|
+
:'operating_on_id' => :'String',
|
|
110
|
+
:'source' => :'Source'
|
|
97
111
|
}
|
|
98
112
|
end
|
|
99
113
|
|
|
@@ -152,6 +166,18 @@ module LaunchDarklyApi
|
|
|
152
166
|
if attributes.has_key?(:'instructions')
|
|
153
167
|
self.instructions = attributes[:'instructions']
|
|
154
168
|
end
|
|
169
|
+
|
|
170
|
+
if attributes.has_key?(:'executionDate')
|
|
171
|
+
self.execution_date = attributes[:'executionDate']
|
|
172
|
+
end
|
|
173
|
+
|
|
174
|
+
if attributes.has_key?(:'operatingOnId')
|
|
175
|
+
self.operating_on_id = attributes[:'operatingOnId']
|
|
176
|
+
end
|
|
177
|
+
|
|
178
|
+
if attributes.has_key?(:'source')
|
|
179
|
+
self.source = attributes[:'source']
|
|
180
|
+
end
|
|
155
181
|
end
|
|
156
182
|
|
|
157
183
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -164,7 +190,7 @@ module LaunchDarklyApi
|
|
|
164
190
|
# Check to see if the all the properties in the model are valid
|
|
165
191
|
# @return true if the model is valid
|
|
166
192
|
def valid?
|
|
167
|
-
status_validator = EnumAttributeValidator.new('String', ['pending', 'completed', 'failed'])
|
|
193
|
+
status_validator = EnumAttributeValidator.new('String', ['pending', 'completed', 'scheduled', 'failed'])
|
|
168
194
|
return false unless status_validator.valid?(@status)
|
|
169
195
|
true
|
|
170
196
|
end
|
|
@@ -172,7 +198,7 @@ module LaunchDarklyApi
|
|
|
172
198
|
# Custom attribute writer method checking allowed values (enum).
|
|
173
199
|
# @param [Object] status Object to be assigned
|
|
174
200
|
def status=(status)
|
|
175
|
-
validator = EnumAttributeValidator.new('String', ['pending', 'completed', 'failed'])
|
|
201
|
+
validator = EnumAttributeValidator.new('String', ['pending', 'completed', 'scheduled', 'failed'])
|
|
176
202
|
unless validator.valid?(status)
|
|
177
203
|
fail ArgumentError, 'invalid value for "status", must be one of #{validator.allowable_values}.'
|
|
178
204
|
end
|
|
@@ -194,7 +220,10 @@ module LaunchDarklyApi
|
|
|
194
220
|
applied_date == o.applied_date &&
|
|
195
221
|
all_reviews == o.all_reviews &&
|
|
196
222
|
notify_member_ids == o.notify_member_ids &&
|
|
197
|
-
instructions == o.instructions
|
|
223
|
+
instructions == o.instructions &&
|
|
224
|
+
execution_date == o.execution_date &&
|
|
225
|
+
operating_on_id == o.operating_on_id &&
|
|
226
|
+
source == o.source
|
|
198
227
|
end
|
|
199
228
|
|
|
200
229
|
# @see the `==` method
|
|
@@ -206,7 +235,7 @@ module LaunchDarklyApi
|
|
|
206
235
|
# Calculates hash code according to all attributes.
|
|
207
236
|
# @return [Fixnum] Hash code
|
|
208
237
|
def hash
|
|
209
|
-
[_id, _version, creation_date, requestor_id, review_status, status, applied_by_member_id, applied_date, all_reviews, notify_member_ids, instructions].hash
|
|
238
|
+
[_id, _version, creation_date, requestor_id, review_status, status, applied_by_member_id, applied_date, all_reviews, notify_member_ids, instructions, execution_date, operating_on_id, source].hash
|
|
210
239
|
end
|
|
211
240
|
|
|
212
241
|
# Builds the object from hash
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#Build custom integrations with the LaunchDarkly REST API
|
|
5
5
|
|
|
6
|
-
OpenAPI spec version: 5.0
|
|
6
|
+
OpenAPI spec version: 5.4.0
|
|
7
7
|
Contact: support@launchdarkly.com
|
|
8
8
|
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
|
9
9
|
Swagger Codegen version: 2.4.17
|
|
@@ -24,13 +24,21 @@ module LaunchDarklyApi
|
|
|
24
24
|
# comment will be included in audit log item for change.
|
|
25
25
|
attr_accessor :comment
|
|
26
26
|
|
|
27
|
+
# Timestamp for when instructions will be executed
|
|
28
|
+
attr_accessor :execution_date
|
|
29
|
+
|
|
30
|
+
# ID of scheduled change to edit or delete
|
|
31
|
+
attr_accessor :operating_on_id
|
|
32
|
+
|
|
27
33
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
28
34
|
def self.attribute_map
|
|
29
35
|
{
|
|
30
36
|
:'description' => :'description',
|
|
31
37
|
:'instructions' => :'instructions',
|
|
32
38
|
:'notify_member_ids' => :'notifyMemberIds',
|
|
33
|
-
:'comment' => :'comment'
|
|
39
|
+
:'comment' => :'comment',
|
|
40
|
+
:'execution_date' => :'executionDate',
|
|
41
|
+
:'operating_on_id' => :'operatingOnId'
|
|
34
42
|
}
|
|
35
43
|
end
|
|
36
44
|
|
|
@@ -40,7 +48,9 @@ module LaunchDarklyApi
|
|
|
40
48
|
:'description' => :'String',
|
|
41
49
|
:'instructions' => :'SemanticPatchInstruction',
|
|
42
50
|
:'notify_member_ids' => :'Array<String>',
|
|
43
|
-
:'comment' => :'String'
|
|
51
|
+
:'comment' => :'String',
|
|
52
|
+
:'execution_date' => :'Integer',
|
|
53
|
+
:'operating_on_id' => :'String'
|
|
44
54
|
}
|
|
45
55
|
end
|
|
46
56
|
|
|
@@ -69,6 +79,14 @@ module LaunchDarklyApi
|
|
|
69
79
|
if attributes.has_key?(:'comment')
|
|
70
80
|
self.comment = attributes[:'comment']
|
|
71
81
|
end
|
|
82
|
+
|
|
83
|
+
if attributes.has_key?(:'executionDate')
|
|
84
|
+
self.execution_date = attributes[:'executionDate']
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
if attributes.has_key?(:'operatingOnId')
|
|
88
|
+
self.operating_on_id = attributes[:'operatingOnId']
|
|
89
|
+
end
|
|
72
90
|
end
|
|
73
91
|
|
|
74
92
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -107,7 +125,9 @@ module LaunchDarklyApi
|
|
|
107
125
|
description == o.description &&
|
|
108
126
|
instructions == o.instructions &&
|
|
109
127
|
notify_member_ids == o.notify_member_ids &&
|
|
110
|
-
comment == o.comment
|
|
128
|
+
comment == o.comment &&
|
|
129
|
+
execution_date == o.execution_date &&
|
|
130
|
+
operating_on_id == o.operating_on_id
|
|
111
131
|
end
|
|
112
132
|
|
|
113
133
|
# @see the `==` method
|
|
@@ -119,7 +139,7 @@ module LaunchDarklyApi
|
|
|
119
139
|
# Calculates hash code according to all attributes.
|
|
120
140
|
# @return [Fixnum] Hash code
|
|
121
141
|
def hash
|
|
122
|
-
[description, instructions, notify_member_ids, comment].hash
|
|
142
|
+
[description, instructions, notify_member_ids, comment, execution_date, operating_on_id].hash
|
|
123
143
|
end
|
|
124
144
|
|
|
125
145
|
# Builds the object from hash
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#LaunchDarkly REST API
|
|
3
|
+
|
|
4
|
+
#Build custom integrations with the LaunchDarkly REST API
|
|
5
|
+
|
|
6
|
+
OpenAPI spec version: 5.4.0
|
|
7
|
+
Contact: support@launchdarkly.com
|
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
|
9
|
+
Swagger Codegen version: 2.4.17
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'date'
|
|
14
|
+
|
|
15
|
+
module LaunchDarklyApi
|
|
16
|
+
class ApprovalRequestFlagConfigCopyBody
|
|
17
|
+
# A name that describes the changes you would like to apply to a feature flag configuration
|
|
18
|
+
attr_accessor :description
|
|
19
|
+
|
|
20
|
+
attr_accessor :notify_member_ids
|
|
21
|
+
|
|
22
|
+
attr_accessor :source
|
|
23
|
+
|
|
24
|
+
# comment will be included in audit log item for change.
|
|
25
|
+
attr_accessor :comment
|
|
26
|
+
|
|
27
|
+
# Define the parts of the flag configuration that will be copied.
|
|
28
|
+
attr_accessor :included_actions
|
|
29
|
+
|
|
30
|
+
# Define the parts of the flag configuration that will not be copied.
|
|
31
|
+
attr_accessor :excluded_actions
|
|
32
|
+
|
|
33
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
34
|
+
def self.attribute_map
|
|
35
|
+
{
|
|
36
|
+
:'description' => :'description',
|
|
37
|
+
:'notify_member_ids' => :'notifyMemberIds',
|
|
38
|
+
:'source' => :'source',
|
|
39
|
+
:'comment' => :'comment',
|
|
40
|
+
:'included_actions' => :'includedActions',
|
|
41
|
+
:'excluded_actions' => :'excludedActions'
|
|
42
|
+
}
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
# Attribute type mapping.
|
|
46
|
+
def self.swagger_types
|
|
47
|
+
{
|
|
48
|
+
:'description' => :'String',
|
|
49
|
+
:'notify_member_ids' => :'Array<String>',
|
|
50
|
+
:'source' => :'Source',
|
|
51
|
+
:'comment' => :'String',
|
|
52
|
+
:'included_actions' => :'Array<CopyActions>',
|
|
53
|
+
:'excluded_actions' => :'Array<CopyActions>'
|
|
54
|
+
}
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
# Initializes the object
|
|
58
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
59
|
+
def initialize(attributes = {})
|
|
60
|
+
return unless attributes.is_a?(Hash)
|
|
61
|
+
|
|
62
|
+
# convert string to symbol for hash key
|
|
63
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
|
64
|
+
|
|
65
|
+
if attributes.has_key?(:'description')
|
|
66
|
+
self.description = attributes[:'description']
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
if attributes.has_key?(:'notifyMemberIds')
|
|
70
|
+
if (value = attributes[:'notifyMemberIds']).is_a?(Array)
|
|
71
|
+
self.notify_member_ids = value
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
if attributes.has_key?(:'source')
|
|
76
|
+
self.source = attributes[:'source']
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
if attributes.has_key?(:'comment')
|
|
80
|
+
self.comment = attributes[:'comment']
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
if attributes.has_key?(:'includedActions')
|
|
84
|
+
if (value = attributes[:'includedActions']).is_a?(Array)
|
|
85
|
+
self.included_actions = value
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
if attributes.has_key?(:'excludedActions')
|
|
90
|
+
if (value = attributes[:'excludedActions']).is_a?(Array)
|
|
91
|
+
self.excluded_actions = value
|
|
92
|
+
end
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
|
97
|
+
# @return Array for valid properties with the reasons
|
|
98
|
+
def list_invalid_properties
|
|
99
|
+
invalid_properties = Array.new
|
|
100
|
+
if @description.nil?
|
|
101
|
+
invalid_properties.push('invalid value for "description", description cannot be nil.')
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
if @notify_member_ids.nil?
|
|
105
|
+
invalid_properties.push('invalid value for "notify_member_ids", notify_member_ids cannot be nil.')
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
if @source.nil?
|
|
109
|
+
invalid_properties.push('invalid value for "source", source cannot be nil.')
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
invalid_properties
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
# Check to see if the all the properties in the model are valid
|
|
116
|
+
# @return true if the model is valid
|
|
117
|
+
def valid?
|
|
118
|
+
return false if @description.nil?
|
|
119
|
+
return false if @notify_member_ids.nil?
|
|
120
|
+
return false if @source.nil?
|
|
121
|
+
true
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
# Checks equality by comparing each attribute.
|
|
125
|
+
# @param [Object] Object to be compared
|
|
126
|
+
def ==(o)
|
|
127
|
+
return true if self.equal?(o)
|
|
128
|
+
self.class == o.class &&
|
|
129
|
+
description == o.description &&
|
|
130
|
+
notify_member_ids == o.notify_member_ids &&
|
|
131
|
+
source == o.source &&
|
|
132
|
+
comment == o.comment &&
|
|
133
|
+
included_actions == o.included_actions &&
|
|
134
|
+
excluded_actions == o.excluded_actions
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
# @see the `==` method
|
|
138
|
+
# @param [Object] Object to be compared
|
|
139
|
+
def eql?(o)
|
|
140
|
+
self == o
|
|
141
|
+
end
|
|
142
|
+
|
|
143
|
+
# Calculates hash code according to all attributes.
|
|
144
|
+
# @return [Fixnum] Hash code
|
|
145
|
+
def hash
|
|
146
|
+
[description, notify_member_ids, source, comment, included_actions, excluded_actions].hash
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
# Builds the object from hash
|
|
150
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
151
|
+
# @return [Object] Returns the model itself
|
|
152
|
+
def build_from_hash(attributes)
|
|
153
|
+
return nil unless attributes.is_a?(Hash)
|
|
154
|
+
self.class.swagger_types.each_pair do |key, type|
|
|
155
|
+
if type =~ /\AArray<(.*)>/i
|
|
156
|
+
# check to ensure the input is an array given that the attribute
|
|
157
|
+
# is documented as an array but the input is not
|
|
158
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
159
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
|
160
|
+
end
|
|
161
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
162
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
|
163
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
|
164
|
+
end
|
|
165
|
+
|
|
166
|
+
self
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
# Deserializes the data based on type
|
|
170
|
+
# @param string type Data type
|
|
171
|
+
# @param string value Value to be deserialized
|
|
172
|
+
# @return [Object] Deserialized data
|
|
173
|
+
def _deserialize(type, value)
|
|
174
|
+
case type.to_sym
|
|
175
|
+
when :DateTime
|
|
176
|
+
DateTime.parse(value)
|
|
177
|
+
when :Date
|
|
178
|
+
Date.parse(value)
|
|
179
|
+
when :String
|
|
180
|
+
value.to_s
|
|
181
|
+
when :Integer
|
|
182
|
+
value.to_i
|
|
183
|
+
when :Float
|
|
184
|
+
value.to_f
|
|
185
|
+
when :BOOLEAN
|
|
186
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
|
187
|
+
true
|
|
188
|
+
else
|
|
189
|
+
false
|
|
190
|
+
end
|
|
191
|
+
when :Object
|
|
192
|
+
# generic object (usually a Hash), return directly
|
|
193
|
+
value
|
|
194
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
|
195
|
+
inner_type = Regexp.last_match[:inner_type]
|
|
196
|
+
value.map { |v| _deserialize(inner_type, v) }
|
|
197
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
|
198
|
+
k_type = Regexp.last_match[:k_type]
|
|
199
|
+
v_type = Regexp.last_match[:v_type]
|
|
200
|
+
{}.tap do |hash|
|
|
201
|
+
value.each do |k, v|
|
|
202
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
|
203
|
+
end
|
|
204
|
+
end
|
|
205
|
+
else # model
|
|
206
|
+
temp_model = LaunchDarklyApi.const_get(type).new
|
|
207
|
+
temp_model.build_from_hash(value)
|
|
208
|
+
end
|
|
209
|
+
end
|
|
210
|
+
|
|
211
|
+
# Returns the string representation of the object
|
|
212
|
+
# @return [String] String presentation of the object
|
|
213
|
+
def to_s
|
|
214
|
+
to_hash.to_s
|
|
215
|
+
end
|
|
216
|
+
|
|
217
|
+
# to_body is an alias to to_hash (backward compatibility)
|
|
218
|
+
# @return [Hash] Returns the object in the form of hash
|
|
219
|
+
def to_body
|
|
220
|
+
to_hash
|
|
221
|
+
end
|
|
222
|
+
|
|
223
|
+
# Returns the object in the form of hash
|
|
224
|
+
# @return [Hash] Returns the object in the form of hash
|
|
225
|
+
def to_hash
|
|
226
|
+
hash = {}
|
|
227
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
228
|
+
value = self.send(attr)
|
|
229
|
+
next if value.nil?
|
|
230
|
+
hash[param] = _to_hash(value)
|
|
231
|
+
end
|
|
232
|
+
hash
|
|
233
|
+
end
|
|
234
|
+
|
|
235
|
+
# Outputs non-array value in the form of hash
|
|
236
|
+
# For object, use to_hash. Otherwise, just return the value
|
|
237
|
+
# @param [Object] value Any valid value
|
|
238
|
+
# @return [Hash] Returns the value in the form of hash
|
|
239
|
+
def _to_hash(value)
|
|
240
|
+
if value.is_a?(Array)
|
|
241
|
+
value.compact.map { |v| _to_hash(v) }
|
|
242
|
+
elsif value.is_a?(Hash)
|
|
243
|
+
{}.tap do |hash|
|
|
244
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
245
|
+
end
|
|
246
|
+
elsif value.respond_to? :to_hash
|
|
247
|
+
value.to_hash
|
|
248
|
+
else
|
|
249
|
+
value
|
|
250
|
+
end
|
|
251
|
+
end
|
|
252
|
+
|
|
253
|
+
end
|
|
254
|
+
end
|