datadog_api_client 2.55.0 → 2.56.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.
Files changed (298) hide show
  1. checksums.yaml +4 -4
  2. data/.generator/schemas/v1/openapi.yaml +186 -0
  3. data/.generator/schemas/v2/openapi.yaml +6914 -290
  4. data/CHANGELOG.md +35 -0
  5. data/examples/v1/logs-pipelines/CreateLogsPipeline_104735144.rb +32 -0
  6. data/examples/v1/logs-pipelines/CreateLogsPipeline_1185292896.rb +42 -0
  7. data/examples/v1/logs-pipelines/CreateLogsPipeline_2402034476.rb +29 -0
  8. data/examples/v1/logs-pipelines/CreateLogsPipeline_3996915493.rb +38 -0
  9. data/examples/v1/monitors/CreateMonitor_1539578087.rb +1 -0
  10. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_129899466.rb +1 -1
  11. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_4007074677.rb +23 -0
  12. data/examples/v2/cloud-cost-management/DeleteCustomForecast.rb +8 -0
  13. data/examples/v2/cloud-cost-management/UpsertBudget.rb +14 -0
  14. data/examples/v2/cloud-cost-management/UpsertCustomForecast.rb +30 -0
  15. data/examples/v2/code-coverage/GetCodeCoverageBranchSummary.rb +1 -0
  16. data/examples/v2/code-coverage/GetCodeCoverageCommitSummary.rb +1 -0
  17. data/examples/v2/feature-flags/CreateVariantForFeatureFlag.rb +11 -0
  18. data/examples/v2/feature-flags/DeleteVariantFromFeatureFlag.rb +5 -0
  19. data/examples/v2/feature-flags/UpdateVariantForFeatureFlag.rb +10 -0
  20. data/examples/v2/governance-controls/GetGovernanceControl.rb +8 -0
  21. data/examples/v2/governance-controls/ListGovernanceControls.rb +8 -0
  22. data/examples/v2/governance-controls/UpdateGovernanceControl.rb +22 -0
  23. data/examples/v2/governance-insights/ListGovernanceInsights.rb +8 -0
  24. data/examples/v2/metrics/CreateTagIndexingRule.rb +3 -0
  25. data/examples/v2/metrics/CreateTagIndexingRuleExemption.rb +3 -0
  26. data/examples/v2/metrics/DeleteTagIndexingRule.rb +3 -0
  27. data/examples/v2/metrics/DeleteTagIndexingRuleExemption.rb +3 -0
  28. data/examples/v2/metrics/GetTagIndexingRule.rb +3 -0
  29. data/examples/v2/metrics/GetTagIndexingRuleExemption.rb +3 -0
  30. data/examples/v2/metrics/ListTagIndexingRules.rb +3 -0
  31. data/examples/v2/metrics/ListTagIndexingRulesForMetric.rb +3 -0
  32. data/examples/v2/metrics/ReorderTagIndexingRules.rb +3 -0
  33. data/examples/v2/metrics/UpdateTagIndexingRule.rb +3 -0
  34. data/examples/v2/observability-pipelines/ValidatePipeline_1238441879.rb +61 -0
  35. data/examples/v2/observability-pipelines/ValidatePipeline_253109967.rb +83 -0
  36. data/examples/v2/observability-pipelines/ValidatePipeline_337125830.rb +56 -0
  37. data/examples/v2/observability-pipelines/ValidatePipeline_620504950.rb +66 -0
  38. data/examples/v2/report-schedules/CreateReportSchedule.rb +1 -1
  39. data/examples/v2/report-schedules/DeleteReportSchedule.rb +5 -0
  40. data/examples/v2/report-schedules/GetReportSchedule.rb +5 -0
  41. data/examples/v2/report-schedules/GetReportSchedulesForResource.rb +5 -0
  42. data/examples/v2/report-schedules/ListReportSchedules.rb +5 -0
  43. data/examples/v2/report-schedules/PatchReportSchedule.rb +1 -1
  44. data/examples/v2/report-schedules/ToggleReportSchedule.rb +14 -0
  45. data/examples/v2/rum-remote-config/GetRumSdkConfig.rb +8 -0
  46. data/examples/v2/rum-remote-config/UpdateRumSdkConfig.rb +94 -0
  47. data/examples/v2/security-monitoring/CreateSecurityFindingsAutomationDueDateRule.rb +33 -0
  48. data/examples/v2/security-monitoring/CreateSecurityFindingsAutomationMuteRule.rb +27 -0
  49. data/examples/v2/security-monitoring/CreateSecurityFindingsAutomationTicketCreationRule.rb +29 -0
  50. data/examples/v2/security-monitoring/DeleteSecurityFindingsAutomationDueDateRule.rb +11 -0
  51. data/examples/v2/security-monitoring/DeleteSecurityFindingsAutomationMuteRule.rb +11 -0
  52. data/examples/v2/security-monitoring/DeleteSecurityFindingsAutomationTicketCreationRule.rb +11 -0
  53. data/examples/v2/security-monitoring/GetSecurityFindingsAutomationDueDateRule.rb +11 -0
  54. data/examples/v2/security-monitoring/GetSecurityFindingsAutomationMuteRule.rb +11 -0
  55. data/examples/v2/security-monitoring/GetSecurityFindingsAutomationTicketCreationRule.rb +11 -0
  56. data/examples/v2/security-monitoring/ImportSecurityVulnerabilities.rb +77 -0
  57. data/examples/v2/security-monitoring/ListSecurityFindingsAutomationDueDateRules.rb +8 -0
  58. data/examples/v2/security-monitoring/ListSecurityFindingsAutomationMuteRules.rb +8 -0
  59. data/examples/v2/security-monitoring/ListSecurityFindingsAutomationTicketCreationRules.rb +8 -0
  60. data/examples/v2/security-monitoring/ReorderSecurityFindingsAutomationDueDateRules.rb +20 -0
  61. data/examples/v2/security-monitoring/ReorderSecurityFindingsAutomationMuteRules.rb +20 -0
  62. data/examples/v2/security-monitoring/ReorderSecurityFindingsAutomationTicketCreationRules.rb +20 -0
  63. data/examples/v2/security-monitoring/UpdateSecurityFindingsAutomationDueDateRule.rb +36 -0
  64. data/examples/v2/security-monitoring/UpdateSecurityFindingsAutomationMuteRule.rb +30 -0
  65. data/examples/v2/security-monitoring/UpdateSecurityFindingsAutomationTicketCreationRule.rb +32 -0
  66. data/examples/v2/status-pages/EditDegradationUpdate.rb +16 -0
  67. data/examples/v2/status-pages/SoftDeleteDegradationUpdate.rb +5 -0
  68. data/examples/v2/test-optimization/UpdateTestOptimizationServiceSettings.rb +7 -2
  69. data/examples/v2/workflow-automation/CreateWorkflow.rb +1 -1
  70. data/examples/v2/workflow-automation/UpdateWorkflow.rb +1 -1
  71. data/lib/datadog_api_client/configuration.rb +39 -1
  72. data/lib/datadog_api_client/inflector.rb +190 -0
  73. data/lib/datadog_api_client/v1/models/logs_array_map_arithmetic_sub_processor.rb +186 -0
  74. data/lib/datadog_api_client/v1/models/logs_array_map_attribute_remapper.rb +211 -0
  75. data/lib/datadog_api_client/v1/models/logs_array_map_category_sub_processor.rb +178 -0
  76. data/lib/datadog_api_client/v1/models/logs_array_map_processor.rb +228 -0
  77. data/lib/datadog_api_client/v1/models/logs_array_map_processor_type.rb +26 -0
  78. data/lib/datadog_api_client/v1/models/logs_array_map_string_builder_sub_processor.rb +186 -0
  79. data/lib/datadog_api_client/v1/models/logs_array_map_sub_processor.rb +67 -0
  80. data/lib/datadog_api_client/v1/models/logs_processor.rb +2 -1
  81. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +154 -1
  82. data/lib/datadog_api_client/v2/api/compliance_api.rb +5 -0
  83. data/lib/datadog_api_client/v2/api/feature_flags_api.rb +229 -0
  84. data/lib/datadog_api_client/v2/api/governance_controls_api.rb +246 -0
  85. data/lib/datadog_api_client/v2/api/governance_insights_api.rb +101 -0
  86. data/lib/datadog_api_client/v2/api/metrics_api.rb +67 -1
  87. data/lib/datadog_api_client/v2/api/report_schedules_api.rb +362 -0
  88. data/lib/datadog_api_client/v2/api/rum_remote_config_api.rb +176 -0
  89. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +1544 -119
  90. data/lib/datadog_api_client/v2/api/status_pages_api.rb +159 -0
  91. data/lib/datadog_api_client/v2/api/test_optimization_api.rb +3 -1
  92. data/lib/datadog_api_client/v2/models/automation_rule_actor_type.rb +27 -0
  93. data/lib/datadog_api_client/v2/models/automation_rule_created_by.rb +165 -0
  94. data/lib/datadog_api_client/v2/models/automation_rule_modified_by.rb +165 -0
  95. data/lib/datadog_api_client/v2/models/automation_rule_scope.rb +150 -0
  96. data/lib/datadog_api_client/v2/models/branch_coverage_summary_request_attributes.rb +27 -10
  97. data/lib/datadog_api_client/v2/models/budget_attributes.rb +41 -1
  98. data/lib/datadog_api_client/v2/models/budget_attributes_costs.rb +146 -0
  99. data/lib/datadog_api_client/v2/models/budget_attributes_costs_unit.rb +155 -0
  100. data/lib/datadog_api_client/v2/models/budget_with_entries_data_attributes_entries_items.rb +11 -1
  101. data/lib/datadog_api_client/v2/models/budget_with_entries_data_attributes_entries_items_costs.rb +157 -0
  102. data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_finished_job.rb +427 -0
  103. data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_in_progress_job.rb +406 -0
  104. data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_job.rb +36 -399
  105. data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_job_in_progress_status.rb +26 -0
  106. data/lib/datadog_api_client/v2/models/commit_coverage_summary_request_attributes.rb +27 -10
  107. data/lib/datadog_api_client/v2/models/create_backfilled_maintenance_request_data_attributes_updates_items.rb +1 -12
  108. data/lib/datadog_api_client/v2/models/create_maintenance_request_data_attributes.rb +1 -12
  109. data/lib/datadog_api_client/v2/models/create_status_page_request_data_attributes.rb +31 -1
  110. data/lib/datadog_api_client/v2/models/custom_forecast_entry.rb +167 -0
  111. data/lib/datadog_api_client/v2/models/custom_forecast_entry_tag_filter.rb +144 -0
  112. data/lib/datadog_api_client/v2/models/custom_forecast_response.rb +123 -0
  113. data/lib/datadog_api_client/v2/models/custom_forecast_response_data.rb +165 -0
  114. data/lib/datadog_api_client/v2/models/custom_forecast_response_data_attributes.rb +230 -0
  115. data/lib/datadog_api_client/v2/models/custom_forecast_type.rb +26 -0
  116. data/lib/datadog_api_client/v2/models/custom_forecast_upsert_request.rb +123 -0
  117. data/lib/datadog_api_client/v2/models/custom_forecast_upsert_request_data.rb +154 -0
  118. data/lib/datadog_api_client/v2/models/custom_forecast_upsert_request_data_attributes.rb +147 -0
  119. data/lib/datadog_api_client/v2/models/cyclone_dx_bom.rb +221 -0
  120. data/lib/datadog_api_client/v2/models/cyclone_dx_component.rb +196 -0
  121. data/lib/datadog_api_client/v2/models/cyclone_dx_component_type.rb +28 -0
  122. data/lib/datadog_api_client/v2/models/cyclone_dx_metadata.rb +144 -0
  123. data/lib/datadog_api_client/v2/models/cyclone_dx_metadata_component.rb +143 -0
  124. data/lib/datadog_api_client/v2/models/cyclone_dx_metadata_tools.rb +125 -0
  125. data/lib/datadog_api_client/v2/models/cyclone_dx_tool_component.rb +133 -0
  126. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability.rb +237 -0
  127. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_advisory.rb +105 -0
  128. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_affects.rb +123 -0
  129. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_analysis.rb +107 -0
  130. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_rating.rb +125 -0
  131. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_reference.rb +115 -0
  132. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_reference_source.rb +105 -0
  133. data/lib/datadog_api_client/v2/models/degradation_data_attributes_updates_items.rb +21 -1
  134. data/lib/datadog_api_client/v2/models/degradation_update.rb +117 -0
  135. data/lib/datadog_api_client/v2/models/degradation_update_data.rb +153 -0
  136. data/lib/datadog_api_client/v2/models/degradation_update_data_attributes.rb +167 -0
  137. data/lib/datadog_api_client/v2/models/degradation_update_data_attributes_components_affected_items.rb +154 -0
  138. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships.rb +145 -0
  139. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_degradation.rb +123 -0
  140. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_degradation_data.rb +144 -0
  141. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_status_page.rb +123 -0
  142. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_status_page_data.rb +144 -0
  143. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_user.rb +123 -0
  144. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_user_data.rb +144 -0
  145. data/lib/datadog_api_client/v2/models/degradation_update_included.rb +64 -0
  146. data/lib/datadog_api_client/v2/models/due_date_from.rb +27 -0
  147. data/lib/datadog_api_client/v2/models/due_date_per_severity_item.rb +152 -0
  148. data/lib/datadog_api_client/v2/models/due_date_rule_action.rb +167 -0
  149. data/lib/datadog_api_client/v2/models/due_date_rule_attributes_create.rb +183 -0
  150. data/lib/datadog_api_client/v2/models/due_date_rule_attributes_response.rb +278 -0
  151. data/lib/datadog_api_client/v2/models/due_date_rule_create_request.rb +123 -0
  152. data/lib/datadog_api_client/v2/models/due_date_rule_data_create.rb +144 -0
  153. data/lib/datadog_api_client/v2/models/due_date_rule_data_response.rb +165 -0
  154. data/lib/datadog_api_client/v2/models/due_date_rule_reorder_item.rb +144 -0
  155. data/lib/datadog_api_client/v2/models/due_date_rule_reorder_request.rb +125 -0
  156. data/lib/datadog_api_client/v2/models/due_date_rule_response.rb +123 -0
  157. data/lib/datadog_api_client/v2/models/due_date_rule_type.rb +26 -0
  158. data/lib/datadog_api_client/v2/models/due_date_rule_update_request.rb +123 -0
  159. data/lib/datadog_api_client/v2/models/due_date_rules_response.rb +167 -0
  160. data/lib/datadog_api_client/v2/models/due_date_severity.rb +32 -0
  161. data/lib/datadog_api_client/v2/models/governance_best_practice_definition.rb +379 -0
  162. data/lib/datadog_api_client/v2/models/governance_control_attributes.rb +739 -0
  163. data/lib/datadog_api_client/v2/models/governance_control_data.rb +165 -0
  164. data/lib/datadog_api_client/v2/models/governance_control_mitigation_definition.rb +309 -0
  165. data/lib/datadog_api_client/v2/models/governance_control_parameter_definition.rb +272 -0
  166. data/lib/datadog_api_client/v2/models/governance_control_resource_type.rb +26 -0
  167. data/lib/datadog_api_client/v2/models/governance_control_response.rb +123 -0
  168. data/lib/datadog_api_client/v2/models/governance_control_supported_value.rb +144 -0
  169. data/lib/datadog_api_client/v2/models/governance_control_update_attributes.rb +175 -0
  170. data/lib/datadog_api_client/v2/models/governance_control_update_data.rb +143 -0
  171. data/lib/datadog_api_client/v2/models/governance_control_update_request.rb +123 -0
  172. data/lib/datadog_api_client/v2/models/governance_controls_response.rb +125 -0
  173. data/lib/datadog_api_client/v2/models/governance_insight_attributes.rb +448 -0
  174. data/lib/datadog_api_client/v2/models/governance_insight_audit_compute.rb +175 -0
  175. data/lib/datadog_api_client/v2/models/governance_insight_audit_query.rb +188 -0
  176. data/lib/datadog_api_client/v2/models/governance_insight_data.rb +165 -0
  177. data/lib/datadog_api_client/v2/models/governance_insight_event_compute.rb +144 -0
  178. data/lib/datadog_api_client/v2/models/governance_insight_event_query.rb +156 -0
  179. data/lib/datadog_api_client/v2/models/governance_insight_metric_query.rb +165 -0
  180. data/lib/datadog_api_client/v2/models/governance_insight_percentage_query.rb +144 -0
  181. data/lib/datadog_api_client/v2/models/governance_insight_query_config.rb +175 -0
  182. data/lib/datadog_api_client/v2/models/governance_insight_resource_type.rb +26 -0
  183. data/lib/datadog_api_client/v2/models/governance_insight_usage_query.rb +144 -0
  184. data/lib/datadog_api_client/v2/models/governance_insights_response.rb +125 -0
  185. data/lib/datadog_api_client/v2/models/metric.rb +12 -2
  186. data/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume_attributes.rb +2 -2
  187. data/lib/datadog_api_client/v2/models/metric_relationships.rb +105 -0
  188. data/lib/datadog_api_client/v2/models/metric_tag_configuration.rb +11 -1
  189. data/lib/datadog_api_client/v2/models/metric_volumes_relationship.rb +105 -0
  190. data/lib/datadog_api_client/v2/models/metric_volumes_relationship_data.rb +115 -0
  191. data/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations_response.rb +13 -1
  192. data/lib/datadog_api_client/v2/models/mute_reason.rb +31 -0
  193. data/lib/datadog_api_client/v2/models/mute_rule_action.rb +154 -0
  194. data/lib/datadog_api_client/v2/models/mute_rule_attributes_create.rb +183 -0
  195. data/lib/datadog_api_client/v2/models/mute_rule_attributes_response.rb +278 -0
  196. data/lib/datadog_api_client/v2/models/mute_rule_create_request.rb +123 -0
  197. data/lib/datadog_api_client/v2/models/mute_rule_data_create.rb +144 -0
  198. data/lib/datadog_api_client/v2/models/mute_rule_data_response.rb +165 -0
  199. data/lib/datadog_api_client/v2/models/mute_rule_reorder_item.rb +144 -0
  200. data/lib/datadog_api_client/v2/models/mute_rule_reorder_request.rb +125 -0
  201. data/lib/datadog_api_client/v2/models/mute_rule_response.rb +123 -0
  202. data/lib/datadog_api_client/v2/models/mute_rule_type.rb +26 -0
  203. data/lib/datadog_api_client/v2/models/mute_rule_update_request.rb +123 -0
  204. data/lib/datadog_api_client/v2/models/mute_rules_response.rb +167 -0
  205. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination.rb +318 -0
  206. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_auth.rb +144 -0
  207. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_auth_strategy.rb +26 -0
  208. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_batch.rb +148 -0
  209. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_batch_encoding.rb +135 -0
  210. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_batch_encoding_codec.rb +26 -0
  211. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_compression.rb +65 -0
  212. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_compression_algorithm.rb +27 -0
  213. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_compression_object.rb +149 -0
  214. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_format.rb +33 -0
  215. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_type.rb +26 -0
  216. data/lib/datadog_api_client/v2/models/observability_pipeline_cloud_prem_destination.rb +11 -1
  217. data/lib/datadog_api_client/v2/models/observability_pipeline_config_destination_item.rb +1 -0
  218. data/lib/datadog_api_client/v2/models/observability_pipeline_config_source_item.rb +1 -0
  219. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source.rb +248 -0
  220. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_auth_strategy.rb +29 -0
  221. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls.rb +63 -0
  222. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls_enabled.rb +123 -0
  223. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls_enabled_mode.rb +26 -0
  224. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls_with_client_cert.rb +174 -0
  225. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls_with_client_cert_mode.rb +26 -0
  226. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_type.rb +26 -0
  227. data/lib/datadog_api_client/v2/models/patch_degradation_update_request.rb +105 -0
  228. data/lib/datadog_api_client/v2/models/patch_degradation_update_request_data.rb +143 -0
  229. data/lib/datadog_api_client/v2/models/patch_degradation_update_request_data_attributes.rb +115 -0
  230. data/lib/datadog_api_client/v2/models/patch_degradation_update_request_data_attributes_status.rb +28 -0
  231. data/lib/datadog_api_client/v2/models/patch_degradation_update_request_data_type.rb +26 -0
  232. data/lib/datadog_api_client/v2/models/patch_status_page_request_data_attributes.rb +21 -1
  233. data/lib/datadog_api_client/v2/models/report_schedule_included_resource.rb +2 -1
  234. data/lib/datadog_api_client/v2/models/report_schedule_included_resource_type.rb +26 -0
  235. data/lib/datadog_api_client/v2/models/report_schedule_index_template_variable.rb +150 -0
  236. data/lib/datadog_api_client/v2/models/report_schedule_list_resource_relationship.rb +123 -0
  237. data/lib/datadog_api_client/v2/models/report_schedule_list_resource_relationship_data.rb +144 -0
  238. data/lib/datadog_api_client/v2/models/report_schedule_list_response.rb +157 -0
  239. data/lib/datadog_api_client/v2/models/report_schedule_list_response_attributes.rb +335 -0
  240. data/lib/datadog_api_client/v2/models/report_schedule_list_response_data.rb +186 -0
  241. data/lib/datadog_api_client/v2/models/report_schedule_list_response_links.rb +157 -0
  242. data/lib/datadog_api_client/v2/models/report_schedule_list_response_meta.rb +105 -0
  243. data/lib/datadog_api_client/v2/models/report_schedule_list_response_pagination.rb +183 -0
  244. data/lib/datadog_api_client/v2/models/report_schedule_list_response_pagination_type.rb +26 -0
  245. data/lib/datadog_api_client/v2/models/report_schedule_list_response_relationships.rb +133 -0
  246. data/lib/datadog_api_client/v2/models/report_schedule_resource.rb +165 -0
  247. data/lib/datadog_api_client/v2/models/report_schedule_resource_attributes.rb +154 -0
  248. data/lib/datadog_api_client/v2/models/report_schedule_toggle_request.rb +123 -0
  249. data/lib/datadog_api_client/v2/models/report_schedule_toggle_request_attributes.rb +123 -0
  250. data/lib/datadog_api_client/v2/models/report_schedule_toggle_request_data.rb +144 -0
  251. data/lib/datadog_api_client/v2/models/rum_application_attributes.rb +11 -1
  252. data/lib/datadog_api_client/v2/models/rum_sdk_config_attributes.rb +123 -0
  253. data/lib/datadog_api_client/v2/models/rum_sdk_config_data.rb +175 -0
  254. data/lib/datadog_api_client/v2/models/rum_sdk_config_dynamic_option.rb +204 -0
  255. data/lib/datadog_api_client/v2/models/rum_sdk_config_dynamic_option_pair.rb +144 -0
  256. data/lib/datadog_api_client/v2/models/rum_sdk_config_dynamic_option_serialized_type.rb +26 -0
  257. data/lib/datadog_api_client/v2/models/rum_sdk_config_dynamic_option_strategy.rb +29 -0
  258. data/lib/datadog_api_client/v2/models/rum_sdk_config_match_option.rb +144 -0
  259. data/lib/datadog_api_client/v2/models/rum_sdk_config_match_option_serialized_type.rb +27 -0
  260. data/lib/datadog_api_client/v2/models/rum_sdk_config_meta.rb +144 -0
  261. data/lib/datadog_api_client/v2/models/rum_sdk_config_response.rb +123 -0
  262. data/lib/datadog_api_client/v2/models/rum_sdk_config_rum_attributes.rb +336 -0
  263. data/lib/datadog_api_client/v2/models/rum_sdk_config_rum_update_attributes.rb +315 -0
  264. data/lib/datadog_api_client/v2/models/rum_sdk_config_serialized_regex.rb +144 -0
  265. data/lib/datadog_api_client/v2/models/rum_sdk_config_serialized_regex_type.rb +26 -0
  266. data/lib/datadog_api_client/v2/models/rum_sdk_config_tracing_url_config.rb +146 -0
  267. data/lib/datadog_api_client/v2/models/rum_sdk_config_tracing_url_propagator_type.rb +29 -0
  268. data/lib/datadog_api_client/v2/models/rum_sdk_config_type.rb +26 -0
  269. data/lib/datadog_api_client/v2/models/rum_sdk_config_update_attributes.rb +123 -0
  270. data/lib/datadog_api_client/v2/models/rum_sdk_config_update_data.rb +165 -0
  271. data/lib/datadog_api_client/v2/models/rum_sdk_config_update_request.rb +123 -0
  272. data/lib/datadog_api_client/v2/models/security_automation_rules_links.rb +164 -0
  273. data/lib/datadog_api_client/v2/models/security_automation_rules_meta.rb +123 -0
  274. data/lib/datadog_api_client/v2/models/security_automation_rules_page_info.rb +123 -0
  275. data/lib/datadog_api_client/v2/models/security_finding_type.rb +36 -0
  276. data/lib/datadog_api_client/v2/models/security_monitoring_terraform_resource_type.rb +2 -0
  277. data/lib/datadog_api_client/v2/models/status_page_as_included_attributes.rb +21 -1
  278. data/lib/datadog_api_client/v2/models/status_page_data_attributes.rb +21 -1
  279. data/lib/datadog_api_client/v2/models/test_optimization_service_settings_attributes.rb +54 -4
  280. data/lib/datadog_api_client/v2/models/test_optimization_update_service_settings_request_attributes.rb +60 -9
  281. data/lib/datadog_api_client/v2/models/test_optimization_update_service_settings_request_data.rb +1 -0
  282. data/lib/datadog_api_client/v2/models/ticket_creation_rule_action.rb +193 -0
  283. data/lib/datadog_api_client/v2/models/ticket_creation_rule_action_response.rb +203 -0
  284. data/lib/datadog_api_client/v2/models/ticket_creation_rule_attributes_create.rb +183 -0
  285. data/lib/datadog_api_client/v2/models/ticket_creation_rule_attributes_response.rb +278 -0
  286. data/lib/datadog_api_client/v2/models/ticket_creation_rule_create_request.rb +123 -0
  287. data/lib/datadog_api_client/v2/models/ticket_creation_rule_data_create.rb +144 -0
  288. data/lib/datadog_api_client/v2/models/ticket_creation_rule_data_response.rb +165 -0
  289. data/lib/datadog_api_client/v2/models/ticket_creation_rule_reorder_item.rb +144 -0
  290. data/lib/datadog_api_client/v2/models/ticket_creation_rule_reorder_request.rb +125 -0
  291. data/lib/datadog_api_client/v2/models/ticket_creation_rule_response.rb +123 -0
  292. data/lib/datadog_api_client/v2/models/ticket_creation_rule_type.rb +26 -0
  293. data/lib/datadog_api_client/v2/models/ticket_creation_rule_update_request.rb +123 -0
  294. data/lib/datadog_api_client/v2/models/ticket_creation_rules_response.rb +167 -0
  295. data/lib/datadog_api_client/v2/models/ticket_creation_target.rb +27 -0
  296. data/lib/datadog_api_client/v2/models/update_variant_request.rb +115 -0
  297. data/lib/datadog_api_client/version.rb +1 -1
  298. metadata +237 -1
@@ -0,0 +1,448 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The attributes of a governance insight.
21
+ class GovernanceInsightAttributes
22
+ include BaseGenericModel
23
+
24
+ # An audit log query used to compute an insight value.
25
+ attr_reader :audit_query
26
+
27
+ # The best practice associated with an insight. Populated with the first active best practice
28
+ # matched to the insight; `null` when no best practice is attached.
29
+ attr_reader :best_practice
30
+
31
+ # A relative link to the product surface where the insight can be acted upon.
32
+ attr_reader :deep_link
33
+
34
+ # A human-readable description of what the insight measures.
35
+ attr_reader :description
36
+
37
+ # Human-readable name of the insight.
38
+ attr_reader :display_name
39
+
40
+ # An event query used to compute an insight value.
41
+ attr_reader :event_query
42
+
43
+ # A metric query used to compute an insight value.
44
+ attr_reader :metric_query
45
+
46
+ # The value of the insight over the previous comparison window. `null` when values were
47
+ # not requested or could not be computed.
48
+ attr_accessor :old_value
49
+
50
+ # A percentage query that computes an insight value as a ratio of two metric queries.
51
+ attr_reader :percentage_query
52
+
53
+ # The product the insight belongs to.
54
+ attr_reader :product
55
+
56
+ # Query execution context that allows the frontend to execute insight queries directly.
57
+ attr_accessor :query_config
58
+
59
+ # The relative order in which the insight should be displayed.
60
+ attr_accessor :sort_order
61
+
62
+ # The state of the insight. A `critical` insight receives extra UI treatment to draw
63
+ # attention to it.
64
+ attr_reader :state
65
+
66
+ # The sub-product the insight belongs to, if any.
67
+ attr_reader :sub_product
68
+
69
+ # The time range the insight value is computed over, if applicable.
70
+ attr_reader :time_range
71
+
72
+ # The unit that the insight's value is measured in.
73
+ attr_reader :unit_name
74
+
75
+ # A usage query used to compute an insight value.
76
+ attr_reader :usage_query
77
+
78
+ # The current value of the insight. `null` when values were not requested or could not be computed.
79
+ attr_accessor :value
80
+
81
+ attr_accessor :additional_properties
82
+
83
+ # Attribute mapping from ruby-style variable name to JSON key.
84
+ # @!visibility private
85
+ def self.attribute_map
86
+ {
87
+ :'audit_query' => :'audit_query',
88
+ :'best_practice' => :'best_practice',
89
+ :'deep_link' => :'deep_link',
90
+ :'description' => :'description',
91
+ :'display_name' => :'display_name',
92
+ :'event_query' => :'event_query',
93
+ :'metric_query' => :'metric_query',
94
+ :'old_value' => :'old_value',
95
+ :'percentage_query' => :'percentage_query',
96
+ :'product' => :'product',
97
+ :'query_config' => :'query_config',
98
+ :'sort_order' => :'sort_order',
99
+ :'state' => :'state',
100
+ :'sub_product' => :'sub_product',
101
+ :'time_range' => :'time_range',
102
+ :'unit_name' => :'unit_name',
103
+ :'usage_query' => :'usage_query',
104
+ :'value' => :'value'
105
+ }
106
+ end
107
+
108
+ # Attribute type mapping.
109
+ # @!visibility private
110
+ def self.openapi_types
111
+ {
112
+ :'audit_query' => :'GovernanceInsightAuditQuery',
113
+ :'best_practice' => :'GovernanceBestPracticeDefinition',
114
+ :'deep_link' => :'String',
115
+ :'description' => :'String',
116
+ :'display_name' => :'String',
117
+ :'event_query' => :'GovernanceInsightEventQuery',
118
+ :'metric_query' => :'GovernanceInsightMetricQuery',
119
+ :'old_value' => :'Float',
120
+ :'percentage_query' => :'GovernanceInsightPercentageQuery',
121
+ :'product' => :'String',
122
+ :'query_config' => :'GovernanceInsightQueryConfig',
123
+ :'sort_order' => :'Integer',
124
+ :'state' => :'String',
125
+ :'sub_product' => :'String',
126
+ :'time_range' => :'String',
127
+ :'unit_name' => :'String',
128
+ :'usage_query' => :'GovernanceInsightUsageQuery',
129
+ :'value' => :'Float'
130
+ }
131
+ end
132
+
133
+ # List of attributes with nullable: true
134
+ # @!visibility private
135
+ def self.openapi_nullable
136
+ Set.new([
137
+ :'old_value',
138
+ :'value',
139
+ ])
140
+ end
141
+
142
+ # Initializes the object
143
+ # @param attributes [Hash] Model attributes in the form of hash
144
+ # @!visibility private
145
+ def initialize(attributes = {})
146
+ if (!attributes.is_a?(Hash))
147
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::GovernanceInsightAttributes` initialize method"
148
+ end
149
+
150
+ self.additional_properties = {}
151
+ # check to see if the attribute exists and convert string to symbol for hash key
152
+ attributes = attributes.each_with_object({}) { |(k, v), h|
153
+ if (!self.class.attribute_map.key?(k.to_sym))
154
+ self.additional_properties[k.to_sym] = v
155
+ else
156
+ h[k.to_sym] = v
157
+ end
158
+ }
159
+
160
+ if attributes.key?(:'audit_query')
161
+ self.audit_query = attributes[:'audit_query']
162
+ end
163
+
164
+ if attributes.key?(:'best_practice')
165
+ self.best_practice = attributes[:'best_practice']
166
+ end
167
+
168
+ if attributes.key?(:'deep_link')
169
+ self.deep_link = attributes[:'deep_link']
170
+ end
171
+
172
+ if attributes.key?(:'description')
173
+ self.description = attributes[:'description']
174
+ end
175
+
176
+ if attributes.key?(:'display_name')
177
+ self.display_name = attributes[:'display_name']
178
+ end
179
+
180
+ if attributes.key?(:'event_query')
181
+ self.event_query = attributes[:'event_query']
182
+ end
183
+
184
+ if attributes.key?(:'metric_query')
185
+ self.metric_query = attributes[:'metric_query']
186
+ end
187
+
188
+ if attributes.key?(:'old_value')
189
+ self.old_value = attributes[:'old_value']
190
+ end
191
+
192
+ if attributes.key?(:'percentage_query')
193
+ self.percentage_query = attributes[:'percentage_query']
194
+ end
195
+
196
+ if attributes.key?(:'product')
197
+ self.product = attributes[:'product']
198
+ end
199
+
200
+ if attributes.key?(:'query_config')
201
+ self.query_config = attributes[:'query_config']
202
+ end
203
+
204
+ if attributes.key?(:'sort_order')
205
+ self.sort_order = attributes[:'sort_order']
206
+ end
207
+
208
+ if attributes.key?(:'state')
209
+ self.state = attributes[:'state']
210
+ end
211
+
212
+ if attributes.key?(:'sub_product')
213
+ self.sub_product = attributes[:'sub_product']
214
+ end
215
+
216
+ if attributes.key?(:'time_range')
217
+ self.time_range = attributes[:'time_range']
218
+ end
219
+
220
+ if attributes.key?(:'unit_name')
221
+ self.unit_name = attributes[:'unit_name']
222
+ end
223
+
224
+ if attributes.key?(:'usage_query')
225
+ self.usage_query = attributes[:'usage_query']
226
+ end
227
+
228
+ if attributes.key?(:'value')
229
+ self.value = attributes[:'value']
230
+ end
231
+ end
232
+
233
+ # Check to see if the all the properties in the model are valid
234
+ # @return true if the model is valid
235
+ # @!visibility private
236
+ def valid?
237
+ return false if @audit_query.nil?
238
+ return false if @best_practice.nil?
239
+ return false if @deep_link.nil?
240
+ return false if @description.nil?
241
+ return false if @display_name.nil?
242
+ return false if @event_query.nil?
243
+ return false if @metric_query.nil?
244
+ return false if @percentage_query.nil?
245
+ return false if @product.nil?
246
+ return false if @state.nil?
247
+ return false if @sub_product.nil?
248
+ return false if @time_range.nil?
249
+ return false if @unit_name.nil?
250
+ return false if @usage_query.nil?
251
+ true
252
+ end
253
+
254
+ # Custom attribute writer method with validation
255
+ # @param audit_query [Object] Object to be assigned
256
+ # @!visibility private
257
+ def audit_query=(audit_query)
258
+ if audit_query.nil?
259
+ fail ArgumentError, 'invalid value for "audit_query", audit_query cannot be nil.'
260
+ end
261
+ @audit_query = audit_query
262
+ end
263
+
264
+ # Custom attribute writer method with validation
265
+ # @param best_practice [Object] Object to be assigned
266
+ # @!visibility private
267
+ def best_practice=(best_practice)
268
+ if best_practice.nil?
269
+ fail ArgumentError, 'invalid value for "best_practice", best_practice cannot be nil.'
270
+ end
271
+ @best_practice = best_practice
272
+ end
273
+
274
+ # Custom attribute writer method with validation
275
+ # @param deep_link [Object] Object to be assigned
276
+ # @!visibility private
277
+ def deep_link=(deep_link)
278
+ if deep_link.nil?
279
+ fail ArgumentError, 'invalid value for "deep_link", deep_link cannot be nil.'
280
+ end
281
+ @deep_link = deep_link
282
+ end
283
+
284
+ # Custom attribute writer method with validation
285
+ # @param description [Object] Object to be assigned
286
+ # @!visibility private
287
+ def description=(description)
288
+ if description.nil?
289
+ fail ArgumentError, 'invalid value for "description", description cannot be nil.'
290
+ end
291
+ @description = description
292
+ end
293
+
294
+ # Custom attribute writer method with validation
295
+ # @param display_name [Object] Object to be assigned
296
+ # @!visibility private
297
+ def display_name=(display_name)
298
+ if display_name.nil?
299
+ fail ArgumentError, 'invalid value for "display_name", display_name cannot be nil.'
300
+ end
301
+ @display_name = display_name
302
+ end
303
+
304
+ # Custom attribute writer method with validation
305
+ # @param event_query [Object] Object to be assigned
306
+ # @!visibility private
307
+ def event_query=(event_query)
308
+ if event_query.nil?
309
+ fail ArgumentError, 'invalid value for "event_query", event_query cannot be nil.'
310
+ end
311
+ @event_query = event_query
312
+ end
313
+
314
+ # Custom attribute writer method with validation
315
+ # @param metric_query [Object] Object to be assigned
316
+ # @!visibility private
317
+ def metric_query=(metric_query)
318
+ if metric_query.nil?
319
+ fail ArgumentError, 'invalid value for "metric_query", metric_query cannot be nil.'
320
+ end
321
+ @metric_query = metric_query
322
+ end
323
+
324
+ # Custom attribute writer method with validation
325
+ # @param percentage_query [Object] Object to be assigned
326
+ # @!visibility private
327
+ def percentage_query=(percentage_query)
328
+ if percentage_query.nil?
329
+ fail ArgumentError, 'invalid value for "percentage_query", percentage_query cannot be nil.'
330
+ end
331
+ @percentage_query = percentage_query
332
+ end
333
+
334
+ # Custom attribute writer method with validation
335
+ # @param product [Object] Object to be assigned
336
+ # @!visibility private
337
+ def product=(product)
338
+ if product.nil?
339
+ fail ArgumentError, 'invalid value for "product", product cannot be nil.'
340
+ end
341
+ @product = product
342
+ end
343
+
344
+ # Custom attribute writer method with validation
345
+ # @param state [Object] Object to be assigned
346
+ # @!visibility private
347
+ def state=(state)
348
+ if state.nil?
349
+ fail ArgumentError, 'invalid value for "state", state cannot be nil.'
350
+ end
351
+ @state = state
352
+ end
353
+
354
+ # Custom attribute writer method with validation
355
+ # @param sub_product [Object] Object to be assigned
356
+ # @!visibility private
357
+ def sub_product=(sub_product)
358
+ if sub_product.nil?
359
+ fail ArgumentError, 'invalid value for "sub_product", sub_product cannot be nil.'
360
+ end
361
+ @sub_product = sub_product
362
+ end
363
+
364
+ # Custom attribute writer method with validation
365
+ # @param time_range [Object] Object to be assigned
366
+ # @!visibility private
367
+ def time_range=(time_range)
368
+ if time_range.nil?
369
+ fail ArgumentError, 'invalid value for "time_range", time_range cannot be nil.'
370
+ end
371
+ @time_range = time_range
372
+ end
373
+
374
+ # Custom attribute writer method with validation
375
+ # @param unit_name [Object] Object to be assigned
376
+ # @!visibility private
377
+ def unit_name=(unit_name)
378
+ if unit_name.nil?
379
+ fail ArgumentError, 'invalid value for "unit_name", unit_name cannot be nil.'
380
+ end
381
+ @unit_name = unit_name
382
+ end
383
+
384
+ # Custom attribute writer method with validation
385
+ # @param usage_query [Object] Object to be assigned
386
+ # @!visibility private
387
+ def usage_query=(usage_query)
388
+ if usage_query.nil?
389
+ fail ArgumentError, 'invalid value for "usage_query", usage_query cannot be nil.'
390
+ end
391
+ @usage_query = usage_query
392
+ end
393
+
394
+ # Returns the object in the form of hash, with additionalProperties support.
395
+ # @return [Hash] Returns the object in the form of hash
396
+ # @!visibility private
397
+ def to_hash
398
+ hash = {}
399
+ self.class.attribute_map.each_pair do |attr, param|
400
+ value = self.send(attr)
401
+ if value.nil?
402
+ is_nullable = self.class.openapi_nullable.include?(attr)
403
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
404
+ end
405
+
406
+ hash[param] = _to_hash(value)
407
+ end
408
+ self.additional_properties.each_pair do |attr, value|
409
+ hash[attr] = value
410
+ end
411
+ hash
412
+ end
413
+
414
+ # Checks equality by comparing each attribute.
415
+ # @param o [Object] Object to be compared
416
+ # @!visibility private
417
+ def ==(o)
418
+ return true if self.equal?(o)
419
+ self.class == o.class &&
420
+ audit_query == o.audit_query &&
421
+ best_practice == o.best_practice &&
422
+ deep_link == o.deep_link &&
423
+ description == o.description &&
424
+ display_name == o.display_name &&
425
+ event_query == o.event_query &&
426
+ metric_query == o.metric_query &&
427
+ old_value == o.old_value &&
428
+ percentage_query == o.percentage_query &&
429
+ product == o.product &&
430
+ query_config == o.query_config &&
431
+ sort_order == o.sort_order &&
432
+ state == o.state &&
433
+ sub_product == o.sub_product &&
434
+ time_range == o.time_range &&
435
+ unit_name == o.unit_name &&
436
+ usage_query == o.usage_query &&
437
+ value == o.value &&
438
+ additional_properties == o.additional_properties
439
+ end
440
+
441
+ # Calculates hash code according to all attributes.
442
+ # @return [Integer] Hash code
443
+ # @!visibility private
444
+ def hash
445
+ [audit_query, best_practice, deep_link, description, display_name, event_query, metric_query, old_value, percentage_query, product, query_config, sort_order, state, sub_product, time_range, unit_name, usage_query, value, additional_properties].hash
446
+ end
447
+ end
448
+ end
@@ -0,0 +1,175 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The aggregation applied to an audit log query.
21
+ class GovernanceInsightAuditCompute
22
+ include BaseGenericModel
23
+
24
+ # The aggregation function to apply.
25
+ attr_reader :aggregation
26
+
27
+ # The aggregation time window, in milliseconds.
28
+ attr_reader :interval
29
+
30
+ # The metric or attribute to aggregate.
31
+ attr_reader :metric
32
+
33
+ # An optional secondary aggregation applied to the audit query result.
34
+ attr_accessor :rollup
35
+
36
+ attr_accessor :additional_properties
37
+
38
+ # Attribute mapping from ruby-style variable name to JSON key.
39
+ # @!visibility private
40
+ def self.attribute_map
41
+ {
42
+ :'aggregation' => :'aggregation',
43
+ :'interval' => :'interval',
44
+ :'metric' => :'metric',
45
+ :'rollup' => :'rollup'
46
+ }
47
+ end
48
+
49
+ # Attribute type mapping.
50
+ # @!visibility private
51
+ def self.openapi_types
52
+ {
53
+ :'aggregation' => :'String',
54
+ :'interval' => :'Integer',
55
+ :'metric' => :'String',
56
+ :'rollup' => :'String'
57
+ }
58
+ end
59
+
60
+ # Initializes the object
61
+ # @param attributes [Hash] Model attributes in the form of hash
62
+ # @!visibility private
63
+ def initialize(attributes = {})
64
+ if (!attributes.is_a?(Hash))
65
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::GovernanceInsightAuditCompute` initialize method"
66
+ end
67
+
68
+ self.additional_properties = {}
69
+ # check to see if the attribute exists and convert string to symbol for hash key
70
+ attributes = attributes.each_with_object({}) { |(k, v), h|
71
+ if (!self.class.attribute_map.key?(k.to_sym))
72
+ self.additional_properties[k.to_sym] = v
73
+ else
74
+ h[k.to_sym] = v
75
+ end
76
+ }
77
+
78
+ if attributes.key?(:'aggregation')
79
+ self.aggregation = attributes[:'aggregation']
80
+ end
81
+
82
+ if attributes.key?(:'interval')
83
+ self.interval = attributes[:'interval']
84
+ end
85
+
86
+ if attributes.key?(:'metric')
87
+ self.metric = attributes[:'metric']
88
+ end
89
+
90
+ if attributes.key?(:'rollup')
91
+ self.rollup = attributes[:'rollup']
92
+ end
93
+ end
94
+
95
+ # Check to see if the all the properties in the model are valid
96
+ # @return true if the model is valid
97
+ # @!visibility private
98
+ def valid?
99
+ return false if @aggregation.nil?
100
+ return false if @interval.nil?
101
+ return false if @metric.nil?
102
+ true
103
+ end
104
+
105
+ # Custom attribute writer method with validation
106
+ # @param aggregation [Object] Object to be assigned
107
+ # @!visibility private
108
+ def aggregation=(aggregation)
109
+ if aggregation.nil?
110
+ fail ArgumentError, 'invalid value for "aggregation", aggregation cannot be nil.'
111
+ end
112
+ @aggregation = aggregation
113
+ end
114
+
115
+ # Custom attribute writer method with validation
116
+ # @param interval [Object] Object to be assigned
117
+ # @!visibility private
118
+ def interval=(interval)
119
+ if interval.nil?
120
+ fail ArgumentError, 'invalid value for "interval", interval cannot be nil.'
121
+ end
122
+ @interval = interval
123
+ end
124
+
125
+ # Custom attribute writer method with validation
126
+ # @param metric [Object] Object to be assigned
127
+ # @!visibility private
128
+ def metric=(metric)
129
+ if metric.nil?
130
+ fail ArgumentError, 'invalid value for "metric", metric cannot be nil.'
131
+ end
132
+ @metric = metric
133
+ end
134
+
135
+ # Returns the object in the form of hash, with additionalProperties support.
136
+ # @return [Hash] Returns the object in the form of hash
137
+ # @!visibility private
138
+ def to_hash
139
+ hash = {}
140
+ self.class.attribute_map.each_pair do |attr, param|
141
+ value = self.send(attr)
142
+ if value.nil?
143
+ is_nullable = self.class.openapi_nullable.include?(attr)
144
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
145
+ end
146
+
147
+ hash[param] = _to_hash(value)
148
+ end
149
+ self.additional_properties.each_pair do |attr, value|
150
+ hash[attr] = value
151
+ end
152
+ hash
153
+ end
154
+
155
+ # Checks equality by comparing each attribute.
156
+ # @param o [Object] Object to be compared
157
+ # @!visibility private
158
+ def ==(o)
159
+ return true if self.equal?(o)
160
+ self.class == o.class &&
161
+ aggregation == o.aggregation &&
162
+ interval == o.interval &&
163
+ metric == o.metric &&
164
+ rollup == o.rollup &&
165
+ additional_properties == o.additional_properties
166
+ end
167
+
168
+ # Calculates hash code according to all attributes.
169
+ # @return [Integer] Hash code
170
+ # @!visibility private
171
+ def hash
172
+ [aggregation, interval, metric, rollup, additional_properties].hash
173
+ end
174
+ end
175
+ end