diff --git a/.apigentools-info b/.apigentools-info index 6ab028db4dd3..aaa186938ef1 100644 --- a/.apigentools-info +++ b/.apigentools-info @@ -4,13 +4,13 @@ "spec_versions": { "v1": { "apigentools_version": "1.4.1.dev11", - "regenerated": "2021-08-16 14:47:31.471744", - "spec_repo_commit": "e3699c0" + "regenerated": "2021-08-17 12:42:09.770802", + "spec_repo_commit": "20a3ffe" }, "v2": { "apigentools_version": "1.4.1.dev11", - "regenerated": "2021-08-16 14:48:18.521900", - "spec_repo_commit": "e3699c0" + "regenerated": "2021-08-17 12:42:49.974175", + "spec_repo_commit": "20a3ffe" } } } \ No newline at end of file diff --git a/.generator/templates/base_object.mustache b/.generator/templates/base_object.mustache index c5d85a4d2a4c..248b8c4d002a 100644 --- a/.generator/templates/base_object.mustache +++ b/.generator/templates/base_object.mustache @@ -72,7 +72,11 @@ else # model # models (e.g. Pet) or oneOf klass = {{moduleName}}.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? {{moduleName}}::UnparsedObject + self._unparsed = true + end + res end end diff --git a/.generator/templates/configuration.mustache b/.generator/templates/configuration.mustache index e59dffec76c8..9cf1afa3fb89 100644 --- a/.generator/templates/configuration.mustache +++ b/.generator/templates/configuration.mustache @@ -370,4 +370,18 @@ module {{moduleName}} url end end + + class UnparsedObject + # Defines unparsed object + attr_accessor :data + + def initialize(data) + @data = data + end + + def to_hash + self.data + end + end + end diff --git a/.generator/templates/partial_model_enum_class.mustache b/.generator/templates/partial_model_enum_class.mustache index 4b8b5a0ffdae..d2308a1bc123 100644 --- a/.generator/templates/partial_model_enum_class.mustache +++ b/.generator/templates/partial_model_enum_class.mustache @@ -14,7 +14,6 @@ # @return [String] The enum value def build_from_hash(value) constantValues = {{classname}}.constants.select { |c| {{classname}}::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #{{{classname}}}" if constantValues.empty? - value + constantValues.empty? ? {{moduleName}}::UnparsedObject.new(value) : value end end \ No newline at end of file diff --git a/.generator/templates/partial_model_generic.mustache b/.generator/templates/partial_model_generic.mustache index 647963b47457..099630c1b3d7 100644 --- a/.generator/templates/partial_model_generic.mustache +++ b/.generator/templates/partial_model_generic.mustache @@ -2,6 +2,9 @@ # {{{description}}} {{/description}} class {{classname}}{{#parent}} < {{{.}}}{{/parent}} + # whether the object has unparsed attributes + attr_accessor :_unparsed + {{#vars}} {{#description}} # {{{description}}} diff --git a/.generator/templates/partial_oneof_module.mustache b/.generator/templates/partial_oneof_module.mustache index 14dc1635bb74..83aa757ac4f6 100644 --- a/.generator/templates/partial_oneof_module.mustache +++ b/.generator/templates/partial_oneof_module.mustache @@ -3,6 +3,8 @@ {{/description}} module {{classname}} class << self + attr_accessor :_unparsed + {{#oneOf}} {{#-first}} # List of class defined in oneOf (OpenAPI v3) @@ -70,12 +72,19 @@ begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + {{moduleName}}::UnparsedObject.new(data) + end + {{/discriminator}} end {{^discriminator}} diff --git a/cassettes/features/v1/synthetics/Client-is-resilient-to-enum-and-oneOf-deserialization-errors.yml b/cassettes/features/v1/synthetics/Client-is-resilient-to-enum-and-oneOf-deserialization-errors.yml new file mode 100644 index 000000000000..84876bac991b --- /dev/null +++ b/cassettes/features/v1/synthetics/Client-is-resilient-to-enum-and-oneOf-deserialization-errors.yml @@ -0,0 +1,57 @@ +--- +http_interactions: +- request: + method: get + uri: https://api.datadoghq.com/api/v1/synthetics/tests + body: + encoding: US-ASCII + string: '' + headers: + User-Agent: + - datadog-api-client-ruby/1.2.1.dev.1 (ruby 2.6.3; os darwin19; arch x86_64) + Content-Type: + - application/json + Accept: + - application/json + Expect: + - '' + response: + status: + code: 200 + message: OK + headers: + Date: + - Mon, 09 Aug 2021 19:27:14 GMT + Content-Type: + - application/json + Content-Length: + - '3745' + Connection: + - keep-alive + Vary: + - Accept-Encoding + Pragma: + - no-cache + Cache-Control: + - no-cache + X-Ratelimit-Limit: + - '12000' + X-Ratelimit-Period: + - '60' + X-Ratelimit-Reset: + - '46' + X-Ratelimit-Remaining: + - '11999' + X-Content-Type-Options: + - nosniff + Strict-Transport-Security: + - max-age=15724800; + Content-Security-Policy: + - frame-ancestors 'self'; report-uri https://api.datadoghq.com/csp-report + X-Frame-Options: + - SAMEORIGIN + body: + encoding: ASCII-8BIT + string: '{"tests":[{"status":"paused","public_id":"jv7-wfd-kvt","tags":[],"locations":["pl:pl-kevin-y-6382df0d72d4588e1817f090b131541f"],"message":"","name":"Test on www.example.com","monitor_id":28558768,"type":"api","created_at":"2021-01-12T10:11:40.802074+00:00","modified_at":"2021-01-22T16:42:10.520384+00:00","subtype":"http","config":{"request":{"url":"https://www.example.com","method":"GET","timeout":30},"assertions":[{"operator":"lessThan","type":"responseTime","target":1000},{"operator":"is","type":"statusCode","target":200},{"operator":"A non existent operator","type":"body","target":{"xPath":"//html/head/title","operator":"contains","targetValue":"Example"}}],"configVariables":[]},"options":{"monitor_options":{"notify_audit":false,"locked":false,"include_tags":true,"new_host_delay":300,"notify_no_data":false,"renotify_interval":0},"retry":{"count":0,"interval":300},"min_location_failed":1,"min_failure_duration":0,"tick_every":60}},{"status":"paused","public_id":"jv7-wfd-kvt","tags":[],"locations":["pl:pl-kevin-y-6382df0d72d4588e1817f090b131541f"],"message":"","name":"Test on www.example.com","monitor_id":28558768,"type":"api","created_at":"2021-01-12T10:11:40.802074+00:00","modified_at":"2021-01-22T16:42:10.520384+00:00","subtype":"http","config":{"request":{"url":"https://www.example.com","method":"GET","timeout":30},"assertions":[{"operator":"lessThan","type":"responseTime","target":1000},{"operator":"is","type":"A non existent assertion type","target":200}],"configVariables":[]},"options":{"monitor_options":{"notify_audit":false,"locked":false,"include_tags":true,"new_host_delay":300,"notify_no_data":false,"renotify_interval":0},"retry":{"count":0,"interval":300},"min_location_failed":1,"min_failure_duration":0,"tick_every":60}},{"status":"live","public_id":"2fx-64b-fb8","tags":["mini-website","team:synthetics","firefox","synthetics-ci-browser","edge","chrome"],"locations":["aws:ap-northeast-1","aws:eu-north-1","aws:eu-west-3","aws:eu-central-1"],"message":"This mini-website check failed, please investigate why. @slack-synthetics-ops-worker","name":"Mini Website - Click Trap","monitor_id":7647262,"type":"browser","created_at":"2018-12-20T13:19:23.734004+00:00","modified_at":"2021-06-30T15:46:49.387631+00:00","config":{"variables":[],"setCookie":"","request":{"url":"http://34.95.79.70/click-trap","headers":{},"method":"GET"},"assertions":[],"configVariables":[]},"options":{"ci":{"executionRule":"blocking"},"retry":{"count":1,"interval":1000},"min_location_failed":1,"min_failure_duration":0,"noScreenshot":false,"tick_every":300,"forwardProxy":false,"disableCors":false,"device_ids":["chrome.laptop_large","firefox.laptop_large","A non existent device ID"],"monitor_options":{"renotify_interval":360},"ignoreServerCertificateError":true}},{"status":"live","public_id":"g6d-gcm-pdq","tags":[],"locations":["aws:eu-central-1","aws:ap-northeast-1"],"message":"","name":"Check on www.10.0.0.1.xip.io","monitor_id":7464050,"type":"A non existent test type","created_at":"2018-12-07T17:30:49.785089+00:00","modified_at":"2019-09-04T17:01:09.921070+00:00","subtype":"http","config":{"request":{"url":"https://www.10.0.0.1.xip.io","method":"GET","timeout":30},"assertions":[{"operator":"is","type":"statusCode","target":200}]},"options":{"tick_every":60}},{"status":"live","public_id":"g6d-gcm-pdq","tags":[],"locations":["aws:eu-central-1","aws:ap-northeast-1"],"message":"","name":"Check on www.10.0.0.1.xip.io","monitor_id":7464050,"type":"api","created_at":"2018-12-07T17:30:49.785089+00:00","modified_at":"2019-09-04T17:01:09.921070+00:00","subtype":"http","config":{"request":{"url":"https://www.10.0.0.1.xip.io","method":"A non existent method","timeout":30},"assertions":[{"operator":"is","type":"statusCode","target":200}]},"options":{"tick_every":60}},{"status":"live","public_id":"g6d-gcm-pdq","tags":[],"locations":["aws:eu-central-1","aws:ap-northeast-1"],"message":"A fully valid test","name":"Check on www.10.0.0.1.xip.io","monitor_id":7464050,"type":"api","created_at":"2018-12-07T17:30:49.785089+00:00","modified_at":"2019-09-04T17:01:09.921070+00:00","subtype":"http","config":{"request":{"url":"https://www.10.0.0.1.xip.io","method":"GET","timeout":30},"assertions":[{"operator":"is","type":"statusCode","target":200}]},"options":{"tick_every":60}}]}' + recorded_at: Mon, 09 Aug 2021 19:27:13 GMT +recorded_with: VCR 6.0.0 diff --git a/features/support/hooks.rb b/features/support/hooks.rb index 8a8d4716df08..d8a5cb200008 100644 --- a/features/support/hooks.rb +++ b/features/support/hooks.rb @@ -6,6 +6,10 @@ skip_this_scenario('skip ruby') end +Before('@replay-only') do |scenario| + skip_this_scenario('replay only') unless ENV["RECORD"].nil? || ENV["RECORD"] == "false" +end + Around do |scenario, block| current_span = Datadog.configuration[:cucumber][:tracer].active_span unless current_span.nil? @@ -27,7 +31,7 @@ Around do |scenario, block| VCR.use_cassette(scenario.location.file.chomp('.feature') + "/" + scenario.name.gsub(/[^A-Za-z0-9]+/, '-')[0..100], :record_on_error => false, :match_requests_on => [:method, :host, :path, :query, :body_as_json]) do |cassette| - File.delete(cassette.file) if ENV["RECORD"] == "true" && File.exist?(cassette.file) + File.delete(cassette.file) if ENV["RECORD"] == "true" && File.exist?(cassette.file) && !scenario.match_tags?("@replay-only") Timecop.freeze(use_real_time? ? Time.now : cassette.originally_recorded_at) do block.call end diff --git a/features/v1/synthetics.feature b/features/v1/synthetics.feature index 155a0dd3db6c..a0c457eacf72 100644 --- a/features/v1/synthetics.feature +++ b/features/v1/synthetics.feature @@ -15,7 +15,7 @@ Feature: Synthetics And a valid "appKeyAuth" key in the system And an instance of "Synthetics" API - @replay-only @skip-java @skip-ruby + @replay-only @skip-java Scenario: Client is resilient to enum and oneOf deserialization errors Given new "ListTests" request When the request is sent diff --git a/lib/datadog_api_client/v1/configuration.rb b/lib/datadog_api_client/v1/configuration.rb index d16183f4e3de..aa914e0fdad6 100644 --- a/lib/datadog_api_client/v1/configuration.rb +++ b/lib/datadog_api_client/v1/configuration.rb @@ -457,4 +457,18 @@ def server_url(index, variables = {}, servers = nil) url end end + + class UnparsedObject + # Defines unparsed object + attr_accessor :data + + def initialize(data) + @data = data + end + + def to_hash + self.data + end + end + end diff --git a/lib/datadog_api_client/v1/models/access_role.rb b/lib/datadog_api_client/v1/models/access_role.rb index da14b7b45794..f3e858044255 100644 --- a/lib/datadog_api_client/v1/models/access_role.rb +++ b/lib/datadog_api_client/v1/models/access_role.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = AccessRole.constants.select { |c| AccessRole::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #AccessRole" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/alert_graph_widget_definition.rb b/lib/datadog_api_client/v1/models/alert_graph_widget_definition.rb index 5ac4c4327200..27e43f171d72 100644 --- a/lib/datadog_api_client/v1/models/alert_graph_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/alert_graph_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Alert graphs are timeseries graphs showing the current status of any monitor defined on your system. class AlertGraphWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # ID of the alert to use in the widget. attr_accessor :alert_id @@ -244,7 +247,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/alert_graph_widget_definition_type.rb b/lib/datadog_api_client/v1/models/alert_graph_widget_definition_type.rb index 41c99e785584..cbd9f3c6b743 100644 --- a/lib/datadog_api_client/v1/models/alert_graph_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/alert_graph_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = AlertGraphWidgetDefinitionType.constants.select { |c| AlertGraphWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #AlertGraphWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/alert_value_widget_definition.rb b/lib/datadog_api_client/v1/models/alert_value_widget_definition.rb index 25e26cc47e70..d4fc386de21b 100644 --- a/lib/datadog_api_client/v1/models/alert_value_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/alert_value_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Alert values are query values showing the current value of the metric in any monitor defined on your system. class AlertValueWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # ID of the alert to use in the widget. attr_accessor :alert_id @@ -250,7 +253,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/alert_value_widget_definition_type.rb b/lib/datadog_api_client/v1/models/alert_value_widget_definition_type.rb index 191a12adfbe3..f43b8e137c2f 100644 --- a/lib/datadog_api_client/v1/models/alert_value_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/alert_value_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = AlertValueWidgetDefinitionType.constants.select { |c| AlertValueWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #AlertValueWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/api_error_response.rb b/lib/datadog_api_client/v1/models/api_error_response.rb index fd1ea6c91631..e684773551c0 100644 --- a/lib/datadog_api_client/v1/models/api_error_response.rb +++ b/lib/datadog_api_client/v1/models/api_error_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Error response object. class APIErrorResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of errors returned by the API. attr_accessor :errors @@ -178,7 +181,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/api_key.rb b/lib/datadog_api_client/v1/models/api_key.rb index 52d2ad437b46..22cdb579991c 100644 --- a/lib/datadog_api_client/v1/models/api_key.rb +++ b/lib/datadog_api_client/v1/models/api_key.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Datadog API key. class ApiKey + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Date of creation of the API key. attr_accessor :created @@ -225,7 +228,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/api_key_list_response.rb b/lib/datadog_api_client/v1/models/api_key_list_response.rb index b728cdf84c93..a76f4c15518d 100644 --- a/lib/datadog_api_client/v1/models/api_key_list_response.rb +++ b/lib/datadog_api_client/v1/models/api_key_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # List of API and application keys available for a given organization. class ApiKeyListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of API keys. attr_accessor :api_keys @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/api_key_response.rb b/lib/datadog_api_client/v1/models/api_key_response.rb index 1540611c440b..e18c5e12f51c 100644 --- a/lib/datadog_api_client/v1/models/api_key_response.rb +++ b/lib/datadog_api_client/v1/models/api_key_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An API key with its associated metadata. class ApiKeyResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :api_key # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/apm_stats_query_column_type.rb b/lib/datadog_api_client/v1/models/apm_stats_query_column_type.rb index 2301632aaac6..ec04b5173493 100644 --- a/lib/datadog_api_client/v1/models/apm_stats_query_column_type.rb +++ b/lib/datadog_api_client/v1/models/apm_stats_query_column_type.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Column properties. class ApmStatsQueryColumnType + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A user-assigned alias for the column. attr_accessor :_alias @@ -204,7 +207,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/apm_stats_query_definition.rb b/lib/datadog_api_client/v1/models/apm_stats_query_definition.rb index 5d31a6499898..a6848f11f197 100644 --- a/lib/datadog_api_client/v1/models/apm_stats_query_definition.rb +++ b/lib/datadog_api_client/v1/models/apm_stats_query_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The APM stats query for table and distributions widgets. class ApmStatsQueryDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Column properties used by the front end for display. attr_accessor :columns @@ -257,7 +260,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/apm_stats_query_row_type.rb b/lib/datadog_api_client/v1/models/apm_stats_query_row_type.rb index 1c136c506653..75bb90a0257e 100644 --- a/lib/datadog_api_client/v1/models/apm_stats_query_row_type.rb +++ b/lib/datadog_api_client/v1/models/apm_stats_query_row_type.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ApmStatsQueryRowType.constants.select { |c| ApmStatsQueryRowType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ApmStatsQueryRowType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/application_key.rb b/lib/datadog_api_client/v1/models/application_key.rb index 43553d3d75eb..0c001c353c45 100644 --- a/lib/datadog_api_client/v1/models/application_key.rb +++ b/lib/datadog_api_client/v1/models/application_key.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An application key with its associated metadata. class ApplicationKey + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Hash of an application key. attr_accessor :hash @@ -215,7 +218,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/application_key_list_response.rb b/lib/datadog_api_client/v1/models/application_key_list_response.rb index 755918636d1f..de6a15f3395b 100644 --- a/lib/datadog_api_client/v1/models/application_key_list_response.rb +++ b/lib/datadog_api_client/v1/models/application_key_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An application key response. class ApplicationKeyListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of application keys. attr_accessor :application_keys @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/application_key_response.rb b/lib/datadog_api_client/v1/models/application_key_response.rb index 965db5ebef0a..a7b069cfcafd 100644 --- a/lib/datadog_api_client/v1/models/application_key_response.rb +++ b/lib/datadog_api_client/v1/models/application_key_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An application key response. class ApplicationKeyResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :application_key # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/authentication_validation_response.rb b/lib/datadog_api_client/v1/models/authentication_validation_response.rb index 45384cc3a324..4f0118e3bdfc 100644 --- a/lib/datadog_api_client/v1/models/authentication_validation_response.rb +++ b/lib/datadog_api_client/v1/models/authentication_validation_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Represent validation endpoint responses. class AuthenticationValidationResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Return `true` if the authentication response is valid. attr_accessor :valid @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_account.rb b/lib/datadog_api_client/v1/models/aws_account.rb index 7ce1c84753b7..829305009716 100644 --- a/lib/datadog_api_client/v1/models/aws_account.rb +++ b/lib/datadog_api_client/v1/models/aws_account.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Returns the AWS account associated with this integration. class AWSAccount + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Your AWS access key ID. Only required if your AWS account is a GovCloud or China account. attr_accessor :access_key_id @@ -249,7 +252,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_account_and_lambda_request.rb b/lib/datadog_api_client/v1/models/aws_account_and_lambda_request.rb index 31ca2d5507b6..dcf1f3f7b6bf 100644 --- a/lib/datadog_api_client/v1/models/aws_account_and_lambda_request.rb +++ b/lib/datadog_api_client/v1/models/aws_account_and_lambda_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # AWS account ID and Lambda ARN. class AWSAccountAndLambdaRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Your AWS Account ID without dashes. attr_accessor :account_id @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_account_create_response.rb b/lib/datadog_api_client/v1/models/aws_account_create_response.rb index 6800068c3155..4ea0a4d09a90 100644 --- a/lib/datadog_api_client/v1/models/aws_account_create_response.rb +++ b/lib/datadog_api_client/v1/models/aws_account_create_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The Response returned by the AWS Create Account call. class AWSAccountCreateResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # AWS external_id. attr_accessor :external_id @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_account_delete_request.rb b/lib/datadog_api_client/v1/models/aws_account_delete_request.rb index 3c5472aab3ef..69b2829b9a78 100644 --- a/lib/datadog_api_client/v1/models/aws_account_delete_request.rb +++ b/lib/datadog_api_client/v1/models/aws_account_delete_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # List of AWS accounts to delete. class AWSAccountDeleteRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Your AWS access key ID. Only required if your AWS account is a GovCloud or China account. attr_accessor :access_key_id @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_account_list_response.rb b/lib/datadog_api_client/v1/models/aws_account_list_response.rb index 1662ef567da5..71ee9cabf56d 100644 --- a/lib/datadog_api_client/v1/models/aws_account_list_response.rb +++ b/lib/datadog_api_client/v1/models/aws_account_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # List of enabled AWS accounts. class AWSAccountListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of enabled AWS accounts. attr_accessor :accounts @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_logs_async_error.rb b/lib/datadog_api_client/v1/models/aws_logs_async_error.rb index 22f24dcbfc78..53408ff9db34 100644 --- a/lib/datadog_api_client/v1/models/aws_logs_async_error.rb +++ b/lib/datadog_api_client/v1/models/aws_logs_async_error.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Description of errors. class AWSLogsAsyncError + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Code properties attr_accessor :code @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_logs_async_response.rb b/lib/datadog_api_client/v1/models/aws_logs_async_response.rb index 8268d255ae25..aa651ff3b225 100644 --- a/lib/datadog_api_client/v1/models/aws_logs_async_response.rb +++ b/lib/datadog_api_client/v1/models/aws_logs_async_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A list of all Datadog-AWS logs integrations available in your Datadog organization. class AWSLogsAsyncResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of errors. attr_accessor :errors @@ -183,7 +186,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_logs_lambda.rb b/lib/datadog_api_client/v1/models/aws_logs_lambda.rb index 281505f8b4a6..1b15e6ae28d1 100644 --- a/lib/datadog_api_client/v1/models/aws_logs_lambda.rb +++ b/lib/datadog_api_client/v1/models/aws_logs_lambda.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Description of the Lambdas. class AWSLogsLambda + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Available ARN IDs. attr_accessor :arn @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_logs_list_response.rb b/lib/datadog_api_client/v1/models/aws_logs_list_response.rb index 914106b0651d..ded2994eb5c2 100644 --- a/lib/datadog_api_client/v1/models/aws_logs_list_response.rb +++ b/lib/datadog_api_client/v1/models/aws_logs_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A list of all Datadog-AWS logs integrations available in your Datadog organization. class AWSLogsListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Your AWS Account ID without dashes. attr_accessor :account_id @@ -195,7 +198,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_logs_list_services_response.rb b/lib/datadog_api_client/v1/models/aws_logs_list_services_response.rb index c2e784a3f7e2..e97337b2b969 100644 --- a/lib/datadog_api_client/v1/models/aws_logs_list_services_response.rb +++ b/lib/datadog_api_client/v1/models/aws_logs_list_services_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The list of current AWS services for which Datadog offers automatic log collection. class AWSLogsListServicesResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Key value in returned object. attr_accessor :id @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_logs_services_request.rb b/lib/datadog_api_client/v1/models/aws_logs_services_request.rb index ee1cd8eafe03..806df5063129 100644 --- a/lib/datadog_api_client/v1/models/aws_logs_services_request.rb +++ b/lib/datadog_api_client/v1/models/aws_logs_services_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A list of current AWS services for which Datadog offers automatic log collection. class AWSLogsServicesRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Your AWS Account ID without dashes. attr_accessor :account_id @@ -193,7 +196,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_namespace.rb b/lib/datadog_api_client/v1/models/aws_namespace.rb index e84caa1cb538..cb0909c9faa6 100644 --- a/lib/datadog_api_client/v1/models/aws_namespace.rb +++ b/lib/datadog_api_client/v1/models/aws_namespace.rb @@ -38,8 +38,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = AWSNamespace.constants.select { |c| AWSNamespace::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #AWSNamespace" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/aws_tag_filter.rb b/lib/datadog_api_client/v1/models/aws_tag_filter.rb index 163df6dbd628..1b4183d3ea65 100644 --- a/lib/datadog_api_client/v1/models/aws_tag_filter.rb +++ b/lib/datadog_api_client/v1/models/aws_tag_filter.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A tag filter. class AWSTagFilter + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :namespace # The tag filter string. @@ -180,7 +183,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_tag_filter_create_request.rb b/lib/datadog_api_client/v1/models/aws_tag_filter_create_request.rb index 56ac6862341a..bfae5e99af9b 100644 --- a/lib/datadog_api_client/v1/models/aws_tag_filter_create_request.rb +++ b/lib/datadog_api_client/v1/models/aws_tag_filter_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The objects used to set an AWS tag filter. class AWSTagFilterCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Your AWS Account ID without dashes. attr_accessor :account_id @@ -190,7 +193,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_tag_filter_delete_request.rb b/lib/datadog_api_client/v1/models/aws_tag_filter_delete_request.rb index 944a3553c69d..bbfc95354c82 100644 --- a/lib/datadog_api_client/v1/models/aws_tag_filter_delete_request.rb +++ b/lib/datadog_api_client/v1/models/aws_tag_filter_delete_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The objects used to delete an AWS tag filter entry. class AWSTagFilterDeleteRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The unique identifier of your AWS account. attr_accessor :account_id @@ -180,7 +183,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/aws_tag_filter_list_response.rb b/lib/datadog_api_client/v1/models/aws_tag_filter_list_response.rb index 0427829208e9..002fbd03ecbc 100644 --- a/lib/datadog_api_client/v1/models/aws_tag_filter_list_response.rb +++ b/lib/datadog_api_client/v1/models/aws_tag_filter_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An array of tag filter rules by `namespace` and tag filter string. class AWSTagFilterListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of tag filters. attr_accessor :filters @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/azure_account.rb b/lib/datadog_api_client/v1/models/azure_account.rb index 382968925e73..714b7d430ed4 100644 --- a/lib/datadog_api_client/v1/models/azure_account.rb +++ b/lib/datadog_api_client/v1/models/azure_account.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Datadog-Azure integrations configured for your organization. class AzureAccount + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Your Azure web application ID. attr_accessor :client_id @@ -233,7 +236,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/cancel_downtimes_by_scope_request.rb b/lib/datadog_api_client/v1/models/cancel_downtimes_by_scope_request.rb index 0178a32a7c00..bcac70350e82 100644 --- a/lib/datadog_api_client/v1/models/cancel_downtimes_by_scope_request.rb +++ b/lib/datadog_api_client/v1/models/cancel_downtimes_by_scope_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Cancel downtimes according to scope. class CancelDowntimesByScopeRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The scope(s) to which the downtime applies. For example, `host:app2`. Provide multiple scopes as a comma-separated list like `env:dev,env:prod`. The resulting downtime applies to sources that matches ALL provided scopes (`env:dev` **AND** `env:prod`). attr_accessor :scope @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/canceled_downtimes_ids.rb b/lib/datadog_api_client/v1/models/canceled_downtimes_ids.rb index 066f9cc947c1..14060f54055d 100644 --- a/lib/datadog_api_client/v1/models/canceled_downtimes_ids.rb +++ b/lib/datadog_api_client/v1/models/canceled_downtimes_ids.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing array of IDs of canceled downtimes. class CanceledDowntimesIds + # whether the object has unparsed attributes + attr_accessor :_unparsed + # ID of downtimes that were canceled. attr_accessor :cancelled_ids @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/change_widget_definition.rb b/lib/datadog_api_client/v1/models/change_widget_definition.rb index 28f269494d0d..466ff43eb86c 100644 --- a/lib/datadog_api_client/v1/models/change_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/change_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The Change graph shows you the change in a value over the time period chosen. class ChangeWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of custom links. attr_accessor :custom_links @@ -272,7 +275,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/change_widget_definition_type.rb b/lib/datadog_api_client/v1/models/change_widget_definition_type.rb index c8356b3bd66e..53a1f7d3e47f 100644 --- a/lib/datadog_api_client/v1/models/change_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/change_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ChangeWidgetDefinitionType.constants.select { |c| ChangeWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ChangeWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/change_widget_request.rb b/lib/datadog_api_client/v1/models/change_widget_request.rb index 1bc55803bc14..8b38108fb01d 100644 --- a/lib/datadog_api_client/v1/models/change_widget_request.rb +++ b/lib/datadog_api_client/v1/models/change_widget_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Updated change widget. class ChangeWidgetRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :apm_query attr_accessor :change_type @@ -299,7 +302,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/check_can_delete_monitor_response.rb b/lib/datadog_api_client/v1/models/check_can_delete_monitor_response.rb index 645919bee02d..02573763bad7 100644 --- a/lib/datadog_api_client/v1/models/check_can_delete_monitor_response.rb +++ b/lib/datadog_api_client/v1/models/check_can_delete_monitor_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response of monitor IDs that can or can't be safely deleted. class CheckCanDeleteMonitorResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # A mapping of Monitor ID to strings denoting where it's used. @@ -187,7 +190,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/check_can_delete_monitor_response_data.rb b/lib/datadog_api_client/v1/models/check_can_delete_monitor_response_data.rb index a24a7e492800..b0fe8258b67f 100644 --- a/lib/datadog_api_client/v1/models/check_can_delete_monitor_response_data.rb +++ b/lib/datadog_api_client/v1/models/check_can_delete_monitor_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Wrapper object with the list of monitor IDs. class CheckCanDeleteMonitorResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of of Monitor IDs that can be safely deleted. attr_accessor :ok @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/check_can_delete_slo_response.rb b/lib/datadog_api_client/v1/models/check_can_delete_slo_response.rb index 3812d78a8ace..aca86489201f 100644 --- a/lib/datadog_api_client/v1/models/check_can_delete_slo_response.rb +++ b/lib/datadog_api_client/v1/models/check_can_delete_slo_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A service level objective response containing the requested object. class CheckCanDeleteSLOResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # A mapping of SLO id to it's current usages. @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/check_can_delete_slo_response_data.rb b/lib/datadog_api_client/v1/models/check_can_delete_slo_response_data.rb index 638559bad780..4beec293acf2 100644 --- a/lib/datadog_api_client/v1/models/check_can_delete_slo_response_data.rb +++ b/lib/datadog_api_client/v1/models/check_can_delete_slo_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An array of service level objective objects. class CheckCanDeleteSLOResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of of SLO IDs that can be safely deleted. attr_accessor :ok @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/check_status_widget_definition.rb b/lib/datadog_api_client/v1/models/check_status_widget_definition.rb index df0270d0748f..e4c434cbe4fb 100644 --- a/lib/datadog_api_client/v1/models/check_status_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/check_status_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Check status shows the current status or number of results for any check performed. class CheckStatusWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Name of the check to use in the widget. attr_accessor :check @@ -278,7 +281,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/check_status_widget_definition_type.rb b/lib/datadog_api_client/v1/models/check_status_widget_definition_type.rb index 14f0447a49ea..6d7650827abd 100644 --- a/lib/datadog_api_client/v1/models/check_status_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/check_status_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = CheckStatusWidgetDefinitionType.constants.select { |c| CheckStatusWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #CheckStatusWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/content_encoding.rb b/lib/datadog_api_client/v1/models/content_encoding.rb index 0c34877aa22a..a3cf5bd4a4ca 100644 --- a/lib/datadog_api_client/v1/models/content_encoding.rb +++ b/lib/datadog_api_client/v1/models/content_encoding.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ContentEncoding.constants.select { |c| ContentEncoding::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ContentEncoding" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/creator.rb b/lib/datadog_api_client/v1/models/creator.rb index 5284bc003b32..39317eff13dc 100644 --- a/lib/datadog_api_client/v1/models/creator.rb +++ b/lib/datadog_api_client/v1/models/creator.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the creator of the shared element. class Creator + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Email of the creator. attr_accessor :email @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard.rb b/lib/datadog_api_client/v1/models/dashboard.rb index f45f38a5b10c..79d5949e6baa 100644 --- a/lib/datadog_api_client/v1/models/dashboard.rb +++ b/lib/datadog_api_client/v1/models/dashboard.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A dashboard is Datadog’s tool for visually tracking, analyzing, and displaying key performance metrics, which enable you to monitor the health of your infrastructure. class Dashboard + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Identifier of the dashboard author. attr_accessor :author_handle @@ -340,7 +343,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard_bulk_action_data.rb b/lib/datadog_api_client/v1/models/dashboard_bulk_action_data.rb index 0f34b8e95ca0..752aced29aae 100644 --- a/lib/datadog_api_client/v1/models/dashboard_bulk_action_data.rb +++ b/lib/datadog_api_client/v1/models/dashboard_bulk_action_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Dashboard bulk action request data. class DashboardBulkActionData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Dashboard resource ID. attr_accessor :id @@ -192,7 +195,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard_bulk_delete_request.rb b/lib/datadog_api_client/v1/models/dashboard_bulk_delete_request.rb index 7f6907f0cd8b..f019ff72afce 100644 --- a/lib/datadog_api_client/v1/models/dashboard_bulk_delete_request.rb +++ b/lib/datadog_api_client/v1/models/dashboard_bulk_delete_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Dashboard bulk delete request body. class DashboardBulkDeleteRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of dashboard bulk action request data objects. attr_accessor :data @@ -178,7 +181,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard_delete_response.rb b/lib/datadog_api_client/v1/models/dashboard_delete_response.rb index ae787ed522ce..db1fed9ad818 100644 --- a/lib/datadog_api_client/v1/models/dashboard_delete_response.rb +++ b/lib/datadog_api_client/v1/models/dashboard_delete_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response from the delete dashboard call. class DashboardDeleteResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # ID of the deleted dashboard. attr_accessor :deleted_dashboard_id @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard_layout_type.rb b/lib/datadog_api_client/v1/models/dashboard_layout_type.rb index c03b7a6b157c..4afa5090a369 100644 --- a/lib/datadog_api_client/v1/models/dashboard_layout_type.rb +++ b/lib/datadog_api_client/v1/models/dashboard_layout_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = DashboardLayoutType.constants.select { |c| DashboardLayoutType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #DashboardLayoutType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/dashboard_list.rb b/lib/datadog_api_client/v1/models/dashboard_list.rb index d1fe43598938..071c18259b70 100644 --- a/lib/datadog_api_client/v1/models/dashboard_list.rb +++ b/lib/datadog_api_client/v1/models/dashboard_list.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Your Datadog Dashboards. class DashboardList + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :author # Date of creation of the dashboard list. @@ -245,7 +248,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard_list_delete_response.rb b/lib/datadog_api_client/v1/models/dashboard_list_delete_response.rb index 23880354ee68..e86570740ea2 100644 --- a/lib/datadog_api_client/v1/models/dashboard_list_delete_response.rb +++ b/lib/datadog_api_client/v1/models/dashboard_list_delete_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Deleted dashboard details. class DashboardListDeleteResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # ID of the deleted dashboard list. attr_accessor :deleted_dashboard_list_id @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard_list_list_response.rb b/lib/datadog_api_client/v1/models/dashboard_list_list_response.rb index 73f6cff44099..cd7c59dbd969 100644 --- a/lib/datadog_api_client/v1/models/dashboard_list_list_response.rb +++ b/lib/datadog_api_client/v1/models/dashboard_list_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Information on your dashboard lists. class DashboardListListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of all your dashboard lists. attr_accessor :dashboard_lists @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard_reflow_type.rb b/lib/datadog_api_client/v1/models/dashboard_reflow_type.rb index 2c1ca9ad2e2c..87e96836b52f 100644 --- a/lib/datadog_api_client/v1/models/dashboard_reflow_type.rb +++ b/lib/datadog_api_client/v1/models/dashboard_reflow_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = DashboardReflowType.constants.select { |c| DashboardReflowType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #DashboardReflowType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/dashboard_resource_type.rb b/lib/datadog_api_client/v1/models/dashboard_resource_type.rb index 9d273e46f9d6..cd538fd4f49d 100644 --- a/lib/datadog_api_client/v1/models/dashboard_resource_type.rb +++ b/lib/datadog_api_client/v1/models/dashboard_resource_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = DashboardResourceType.constants.select { |c| DashboardResourceType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #DashboardResourceType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/dashboard_restore_request.rb b/lib/datadog_api_client/v1/models/dashboard_restore_request.rb index 84c9abfffdf9..b73bca21445c 100644 --- a/lib/datadog_api_client/v1/models/dashboard_restore_request.rb +++ b/lib/datadog_api_client/v1/models/dashboard_restore_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Dashboard restore request body. class DashboardRestoreRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of dashboard bulk action request data objects. attr_accessor :data @@ -178,7 +181,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard_summary.rb b/lib/datadog_api_client/v1/models/dashboard_summary.rb index da32dbf0f50e..2cd4ff36bf10 100644 --- a/lib/datadog_api_client/v1/models/dashboard_summary.rb +++ b/lib/datadog_api_client/v1/models/dashboard_summary.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Dashboard summary response. class DashboardSummary + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of dashboard definitions. attr_accessor :dashboards @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard_summary_definition.rb b/lib/datadog_api_client/v1/models/dashboard_summary_definition.rb index 3c7260c6032f..40bcf259c0af 100644 --- a/lib/datadog_api_client/v1/models/dashboard_summary_definition.rb +++ b/lib/datadog_api_client/v1/models/dashboard_summary_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Dashboard definition. class DashboardSummaryDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Identifier of the dashboard author. attr_accessor :author_handle @@ -250,7 +253,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard_template_variable.rb b/lib/datadog_api_client/v1/models/dashboard_template_variable.rb index 2fe22ce1b926..7ce551015244 100644 --- a/lib/datadog_api_client/v1/models/dashboard_template_variable.rb +++ b/lib/datadog_api_client/v1/models/dashboard_template_variable.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Template variable. class DashboardTemplateVariable + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The default value for the template variable on dashboard load. attr_accessor :default @@ -198,7 +201,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard_template_variable_preset.rb b/lib/datadog_api_client/v1/models/dashboard_template_variable_preset.rb index b88a052ad376..704deb4e37d5 100644 --- a/lib/datadog_api_client/v1/models/dashboard_template_variable_preset.rb +++ b/lib/datadog_api_client/v1/models/dashboard_template_variable_preset.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Template variables saved views. class DashboardTemplateVariablePreset + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The name of the variable. attr_accessor :name @@ -183,7 +186,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/dashboard_template_variable_preset_value.rb b/lib/datadog_api_client/v1/models/dashboard_template_variable_preset_value.rb index 02571fd161a3..a765fb8389c7 100644 --- a/lib/datadog_api_client/v1/models/dashboard_template_variable_preset_value.rb +++ b/lib/datadog_api_client/v1/models/dashboard_template_variable_preset_value.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Template variables saved views. class DashboardTemplateVariablePresetValue + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The name of the variable. attr_accessor :name @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/deleted_monitor.rb b/lib/datadog_api_client/v1/models/deleted_monitor.rb index 503bc5841c51..369926fcedfd 100644 --- a/lib/datadog_api_client/v1/models/deleted_monitor.rb +++ b/lib/datadog_api_client/v1/models/deleted_monitor.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response from the delete monitor call. class DeletedMonitor + # whether the object has unparsed attributes + attr_accessor :_unparsed + # ID of the deleted monitor. attr_accessor :deleted_monitor_id @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/distribution_widget_definition.rb b/lib/datadog_api_client/v1/models/distribution_widget_definition.rb index 11e0b38ee0e5..c565e92d9ebf 100644 --- a/lib/datadog_api_client/v1/models/distribution_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/distribution_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The Distribution visualization is another way of showing metrics aggregated across one or several tags, such as hosts. Unlike the heat map, a distribution graph’s x-axis is quantity rather than time. class DistributionWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # (Deprecated) The widget legend was replaced by a tooltip and sidebar. attr_accessor :legend_size @@ -310,7 +313,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/distribution_widget_definition_type.rb b/lib/datadog_api_client/v1/models/distribution_widget_definition_type.rb index f5154669f85e..ac5c40a5ca29 100644 --- a/lib/datadog_api_client/v1/models/distribution_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/distribution_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = DistributionWidgetDefinitionType.constants.select { |c| DistributionWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #DistributionWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/distribution_widget_request.rb b/lib/datadog_api_client/v1/models/distribution_widget_request.rb index e0d25e764e99..1933db527014 100644 --- a/lib/datadog_api_client/v1/models/distribution_widget_request.rb +++ b/lib/datadog_api_client/v1/models/distribution_widget_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Updated distribution widget. class DistributionWidgetRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :apm_query attr_accessor :event_query @@ -252,7 +255,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/distribution_widget_x_axis.rb b/lib/datadog_api_client/v1/models/distribution_widget_x_axis.rb index 4880c443cb0d..17d9fe7c3fbc 100644 --- a/lib/datadog_api_client/v1/models/distribution_widget_x_axis.rb +++ b/lib/datadog_api_client/v1/models/distribution_widget_x_axis.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # X Axis controls for the distribution widget. class DistributionWidgetXAxis + # whether the object has unparsed attributes + attr_accessor :_unparsed + # True includes zero. attr_accessor :include_zero @@ -207,7 +210,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/distribution_widget_y_axis.rb b/lib/datadog_api_client/v1/models/distribution_widget_y_axis.rb index 6ce7d17c9df7..5c33efdfa94c 100644 --- a/lib/datadog_api_client/v1/models/distribution_widget_y_axis.rb +++ b/lib/datadog_api_client/v1/models/distribution_widget_y_axis.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Y Axis controls for the distribution widget. class DistributionWidgetYAxis + # whether the object has unparsed attributes + attr_accessor :_unparsed + # True includes zero. attr_accessor :include_zero @@ -217,7 +220,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/downtime.rb b/lib/datadog_api_client/v1/models/downtime.rb index f989744575e6..443b8721ce1b 100644 --- a/lib/datadog_api_client/v1/models/downtime.rb +++ b/lib/datadog_api_client/v1/models/downtime.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Downtiming gives you greater control over monitor notifications by allowing you to globally exclude scopes from alerting. Downtime settings, which can be scheduled with start and end times, prevent all alerting related to specified Datadog tags. class Downtime + # whether the object has unparsed attributes + attr_accessor :_unparsed + # If a scheduled downtime currently exists. attr_accessor :active @@ -385,7 +388,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/downtime_child.rb b/lib/datadog_api_client/v1/models/downtime_child.rb index 47bd9c02fd08..c67b9557540f 100644 --- a/lib/datadog_api_client/v1/models/downtime_child.rb +++ b/lib/datadog_api_client/v1/models/downtime_child.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The downtime object definition of the active child for the original parent recurring downtime. This field will only exist on recurring downtimes. class DowntimeChild + # whether the object has unparsed attributes + attr_accessor :_unparsed + # If a scheduled downtime currently exists. attr_accessor :active @@ -375,7 +378,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/downtime_recurrence.rb b/lib/datadog_api_client/v1/models/downtime_recurrence.rb index 69de3abac5ae..95c9d93cff60 100644 --- a/lib/datadog_api_client/v1/models/downtime_recurrence.rb +++ b/lib/datadog_api_client/v1/models/downtime_recurrence.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An object defining the recurrence of the downtime. class DowntimeRecurrence + # whether the object has unparsed attributes + attr_accessor :_unparsed + # How often to repeat as an integer. For example, to repeat every 3 days, select a type of `days` and a period of `3`. attr_accessor :period @@ -255,7 +258,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/event.rb b/lib/datadog_api_client/v1/models/event.rb index a1693a2c06ee..087bda012558 100644 --- a/lib/datadog_api_client/v1/models/event.rb +++ b/lib/datadog_api_client/v1/models/event.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object representing an event. class Event + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :alert_type # POSIX timestamp of the event. Must be sent as an integer (i.e. no quotes). Limited to events no older than 7 days. @@ -321,7 +324,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/event_alert_type.rb b/lib/datadog_api_client/v1/models/event_alert_type.rb index d501eb7b775a..ed32c90f0f02 100644 --- a/lib/datadog_api_client/v1/models/event_alert_type.rb +++ b/lib/datadog_api_client/v1/models/event_alert_type.rb @@ -38,8 +38,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = EventAlertType.constants.select { |c| EventAlertType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #EventAlertType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/event_create_request.rb b/lib/datadog_api_client/v1/models/event_create_request.rb index 14503db3b8a1..97a76ca7c84f 100644 --- a/lib/datadog_api_client/v1/models/event_create_request.rb +++ b/lib/datadog_api_client/v1/models/event_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object representing an event. class EventCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An arbitrary string to use for aggregation. Limited to 100 characters. If you specify a key, all events using that key are grouped together in the Event Stream. attr_accessor :aggregation_key @@ -364,7 +367,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/event_create_response.rb b/lib/datadog_api_client/v1/models/event_create_response.rb index 1345e4c4f376..f764164cbcb4 100644 --- a/lib/datadog_api_client/v1/models/event_create_response.rb +++ b/lib/datadog_api_client/v1/models/event_create_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing an event response. class EventCreateResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :alert_type # POSIX timestamp of the event. Must be sent as an integer (i.e. no quotes). Limited to events no older than 7 days. @@ -331,7 +334,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/event_list_response.rb b/lib/datadog_api_client/v1/models/event_list_response.rb index 3c5e34b6de2a..0e6f2d7baff5 100644 --- a/lib/datadog_api_client/v1/models/event_list_response.rb +++ b/lib/datadog_api_client/v1/models/event_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An event list response. class EventListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of events. attr_accessor :events @@ -183,7 +186,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/event_priority.rb b/lib/datadog_api_client/v1/models/event_priority.rb index d63ee7f91d0c..c347cc2206e0 100644 --- a/lib/datadog_api_client/v1/models/event_priority.rb +++ b/lib/datadog_api_client/v1/models/event_priority.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = EventPriority.constants.select { |c| EventPriority::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #EventPriority" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/event_query_definition.rb b/lib/datadog_api_client/v1/models/event_query_definition.rb index 3db704eefcfe..8c459c82c709 100644 --- a/lib/datadog_api_client/v1/models/event_query_definition.rb +++ b/lib/datadog_api_client/v1/models/event_query_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The event query. class EventQueryDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The query being made on the event. attr_accessor :search @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/event_response.rb b/lib/datadog_api_client/v1/models/event_response.rb index 152bb96ba49e..ac3418470eb9 100644 --- a/lib/datadog_api_client/v1/models/event_response.rb +++ b/lib/datadog_api_client/v1/models/event_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing an event response. class EventResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :event # A status. @@ -180,7 +183,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/event_stream_widget_definition.rb b/lib/datadog_api_client/v1/models/event_stream_widget_definition.rb index f267045caee3..d22c6417d7e1 100644 --- a/lib/datadog_api_client/v1/models/event_stream_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/event_stream_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The event stream is a widget version of the stream of events on the Event Stream view. Only available on FREE layout dashboards. class EventStreamWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :event_size # Query to filter the event stream with. @@ -249,7 +252,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/event_stream_widget_definition_type.rb b/lib/datadog_api_client/v1/models/event_stream_widget_definition_type.rb index 73b5415babcf..914e0d013a45 100644 --- a/lib/datadog_api_client/v1/models/event_stream_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/event_stream_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = EventStreamWidgetDefinitionType.constants.select { |c| EventStreamWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #EventStreamWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/event_timeline_widget_definition.rb b/lib/datadog_api_client/v1/models/event_timeline_widget_definition.rb index c6084e3870e0..babeb258b179 100644 --- a/lib/datadog_api_client/v1/models/event_timeline_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/event_timeline_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The event timeline is a widget version of the timeline that appears at the top of the Event Stream view. Only available on FREE layout dashboards. class EventTimelineWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Query to filter the event timeline with. attr_accessor :query @@ -240,7 +243,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/event_timeline_widget_definition_type.rb b/lib/datadog_api_client/v1/models/event_timeline_widget_definition_type.rb index 05d57566d028..f967ca569a0e 100644 --- a/lib/datadog_api_client/v1/models/event_timeline_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/event_timeline_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = EventTimelineWidgetDefinitionType.constants.select { |c| EventTimelineWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #EventTimelineWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_event_aggregation.rb b/lib/datadog_api_client/v1/models/formula_and_function_event_aggregation.rb index 46fc720bc89d..e8beca135b5b 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_event_aggregation.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_event_aggregation.rb @@ -43,8 +43,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = FormulaAndFunctionEventAggregation.constants.select { |c| FormulaAndFunctionEventAggregation::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #FormulaAndFunctionEventAggregation" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition.rb b/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition.rb index d41e56e29877..e2e5a858742c 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A formula and functions events query. class FormulaAndFunctionEventQueryDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :compute attr_accessor :data_source @@ -237,7 +240,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition_compute.rb b/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition_compute.rb index 8c9b88b7549c..f8f5e680d763 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition_compute.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition_compute.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Compute options. class FormulaAndFunctionEventQueryDefinitionCompute + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :aggregation # A time interval in milliseconds. @@ -195,7 +198,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition_search.rb b/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition_search.rb index 6bf3658b68cb..d930c7e006fc 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition_search.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition_search.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Search options. class FormulaAndFunctionEventQueryDefinitionSearch + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Events search string. attr_accessor :query @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_event_query_group_by.rb b/lib/datadog_api_client/v1/models/formula_and_function_event_query_group_by.rb index 2e51e650bffa..31fbe82c92ed 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_event_query_group_by.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_event_query_group_by.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # List of objects used to group by. class FormulaAndFunctionEventQueryGroupBy + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Event facet. attr_accessor :facet @@ -195,7 +198,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_event_query_group_by_sort.rb b/lib/datadog_api_client/v1/models/formula_and_function_event_query_group_by_sort.rb index 9d64218ce0a8..72fabf62ab64 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_event_query_group_by_sort.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_event_query_group_by_sort.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Options for sorting group by results. class FormulaAndFunctionEventQueryGroupBySort + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :aggregation # Metric used for sorting group by results. @@ -196,7 +199,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_events_data_source.rb b/lib/datadog_api_client/v1/models/formula_and_function_events_data_source.rb index 95b892d87544..1f9fb1863a94 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_events_data_source.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_events_data_source.rb @@ -39,8 +39,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = FormulaAndFunctionEventsDataSource.constants.select { |c| FormulaAndFunctionEventsDataSource::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #FormulaAndFunctionEventsDataSource" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_metric_aggregation.rb b/lib/datadog_api_client/v1/models/formula_and_function_metric_aggregation.rb index ffafb5c1aae3..42566067f9b5 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_metric_aggregation.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_metric_aggregation.rb @@ -39,8 +39,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = FormulaAndFunctionMetricAggregation.constants.select { |c| FormulaAndFunctionMetricAggregation::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #FormulaAndFunctionMetricAggregation" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_metric_data_source.rb b/lib/datadog_api_client/v1/models/formula_and_function_metric_data_source.rb index 92dd1ef06639..09909e547a4c 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_metric_data_source.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_metric_data_source.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = FormulaAndFunctionMetricDataSource.constants.select { |c| FormulaAndFunctionMetricDataSource::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #FormulaAndFunctionMetricDataSource" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_metric_query_definition.rb b/lib/datadog_api_client/v1/models/formula_and_function_metric_query_definition.rb index 554d70c67019..3bebda7229a2 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_metric_query_definition.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_metric_query_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A formula and functions metrics query. class FormulaAndFunctionMetricQueryDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :aggregator attr_accessor :data_source @@ -214,7 +217,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_process_query_data_source.rb b/lib/datadog_api_client/v1/models/formula_and_function_process_query_data_source.rb index f1694f238411..aadcfa624099 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_process_query_data_source.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_process_query_data_source.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = FormulaAndFunctionProcessQueryDataSource.constants.select { |c| FormulaAndFunctionProcessQueryDataSource::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #FormulaAndFunctionProcessQueryDataSource" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_process_query_definition.rb b/lib/datadog_api_client/v1/models/formula_and_function_process_query_definition.rb index 3f254df3ac01..f2663ffd3f59 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_process_query_definition.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_process_query_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Process query using formulas and functions. class FormulaAndFunctionProcessQueryDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :aggregator attr_accessor :data_source @@ -267,7 +270,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/formula_and_function_query_definition.rb b/lib/datadog_api_client/v1/models/formula_and_function_query_definition.rb index 62e3f27ce190..f9f41988ff57 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_query_definition.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_query_definition.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V1 # A formula and function query. module FormulaAndFunctionQueryDefinition class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -44,12 +46,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V1::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v1/models/formula_and_function_response_format.rb b/lib/datadog_api_client/v1/models/formula_and_function_response_format.rb index cfa201799082..253a70baca6a 100644 --- a/lib/datadog_api_client/v1/models/formula_and_function_response_format.rb +++ b/lib/datadog_api_client/v1/models/formula_and_function_response_format.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = FormulaAndFunctionResponseFormat.constants.select { |c| FormulaAndFunctionResponseFormat::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #FormulaAndFunctionResponseFormat" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/free_text_widget_definition.rb b/lib/datadog_api_client/v1/models/free_text_widget_definition.rb index 1c378da475e4..8f67dda655e8 100644 --- a/lib/datadog_api_client/v1/models/free_text_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/free_text_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Free text is a widget that allows you to add headings to your screenboard. Commonly used to state the overall purpose of the dashboard. Only available on FREE layout dashboards. class FreeTextWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Color of the text. attr_accessor :color @@ -221,7 +224,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/free_text_widget_definition_type.rb b/lib/datadog_api_client/v1/models/free_text_widget_definition_type.rb index 8e102a965d1d..06783b0a0e01 100644 --- a/lib/datadog_api_client/v1/models/free_text_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/free_text_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = FreeTextWidgetDefinitionType.constants.select { |c| FreeTextWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #FreeTextWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/gcp_account.rb b/lib/datadog_api_client/v1/models/gcp_account.rb index 05fdda57b08a..e75cd635db14 100644 --- a/lib/datadog_api_client/v1/models/gcp_account.rb +++ b/lib/datadog_api_client/v1/models/gcp_account.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Your Google Cloud Platform Account. class GCPAccount + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Should be `https://www.googleapis.com/oauth2/v1/certs`. attr_accessor :auth_provider_x509_cert_url @@ -293,7 +296,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/geomap_widget_definition.rb b/lib/datadog_api_client/v1/models/geomap_widget_definition.rb index 42a25a18bdce..699bdd58d499 100644 --- a/lib/datadog_api_client/v1/models/geomap_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/geomap_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # This visualization displays a series of values by country on a world map. class GeomapWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A list of custom links. attr_accessor :custom_links @@ -300,7 +303,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/geomap_widget_definition_style.rb b/lib/datadog_api_client/v1/models/geomap_widget_definition_style.rb index aa794cffc867..7e124eccbcf1 100644 --- a/lib/datadog_api_client/v1/models/geomap_widget_definition_style.rb +++ b/lib/datadog_api_client/v1/models/geomap_widget_definition_style.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The style to apply to the widget. class GeomapWidgetDefinitionStyle + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The color palette to apply to the widget. attr_accessor :palette @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/geomap_widget_definition_type.rb b/lib/datadog_api_client/v1/models/geomap_widget_definition_type.rb index 40e504c82685..14394e776781 100644 --- a/lib/datadog_api_client/v1/models/geomap_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/geomap_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = GeomapWidgetDefinitionType.constants.select { |c| GeomapWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #GeomapWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/geomap_widget_definition_view.rb b/lib/datadog_api_client/v1/models/geomap_widget_definition_view.rb index 8be625ab90e7..75e201ec3604 100644 --- a/lib/datadog_api_client/v1/models/geomap_widget_definition_view.rb +++ b/lib/datadog_api_client/v1/models/geomap_widget_definition_view.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The view of the world that the map should render. class GeomapWidgetDefinitionView + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The 2-letter ISO code of a country to focus the map on. Or `WORLD`. attr_accessor :focus @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/geomap_widget_request.rb b/lib/datadog_api_client/v1/models/geomap_widget_request.rb index 4c2841750790..96c4cf9b499b 100644 --- a/lib/datadog_api_client/v1/models/geomap_widget_request.rb +++ b/lib/datadog_api_client/v1/models/geomap_widget_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An updated geomap widget. class GeomapWidgetRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of formulas that operate on queries. **This feature is currently in beta.** attr_accessor :formulas @@ -231,7 +234,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/graph_snapshot.rb b/lib/datadog_api_client/v1/models/graph_snapshot.rb index 862a9fb9bb4c..bab88ac79a75 100644 --- a/lib/datadog_api_client/v1/models/graph_snapshot.rb +++ b/lib/datadog_api_client/v1/models/graph_snapshot.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object representing a graph snapshot. class GraphSnapshot + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A JSON document defining the graph. `graph_def` can be used instead of `metric_query`. The JSON document uses the [grammar defined here](https://docs.datadoghq.com/graphing/graphing_json/#grammar) and should be formatted to a single line then URL encoded. attr_accessor :graph_def @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/group_widget_definition.rb b/lib/datadog_api_client/v1/models/group_widget_definition.rb index a1727f0750f9..91f69716e428 100644 --- a/lib/datadog_api_client/v1/models/group_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/group_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The groups widget allows you to keep similar graphs together on your timeboard. Each group has a custom header, can hold one to many graphs, and is collapsible. class GroupWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Background color of the group title. attr_accessor :background_color @@ -259,7 +262,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/group_widget_definition_type.rb b/lib/datadog_api_client/v1/models/group_widget_definition_type.rb index b4c39a947558..eba6ddae4647 100644 --- a/lib/datadog_api_client/v1/models/group_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/group_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = GroupWidgetDefinitionType.constants.select { |c| GroupWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #GroupWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/heat_map_widget_definition.rb b/lib/datadog_api_client/v1/models/heat_map_widget_definition.rb index ee6cd4aff573..4c08ab046e26 100644 --- a/lib/datadog_api_client/v1/models/heat_map_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/heat_map_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The heat map visualization shows metrics aggregated across many tags, such as hosts. The more hosts that have a particular value, the darker that square is. class HeatMapWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of custom links. attr_accessor :custom_links @@ -313,7 +316,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/heat_map_widget_definition_type.rb b/lib/datadog_api_client/v1/models/heat_map_widget_definition_type.rb index 7cb75922824b..e3b457e8bcd8 100644 --- a/lib/datadog_api_client/v1/models/heat_map_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/heat_map_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = HeatMapWidgetDefinitionType.constants.select { |c| HeatMapWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #HeatMapWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/heat_map_widget_request.rb b/lib/datadog_api_client/v1/models/heat_map_widget_request.rb index 387803b3f8b9..f957a8227d32 100644 --- a/lib/datadog_api_client/v1/models/heat_map_widget_request.rb +++ b/lib/datadog_api_client/v1/models/heat_map_widget_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Updated heat map widget. class HeatMapWidgetRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :apm_query attr_accessor :event_query @@ -252,7 +255,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/host.rb b/lib/datadog_api_client/v1/models/host.rb index 569aa8fb3539..8299d408fe1f 100644 --- a/lib/datadog_api_client/v1/models/host.rb +++ b/lib/datadog_api_client/v1/models/host.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object representing a host. class Host + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Host aliases collected by Datadog. attr_accessor :aliases @@ -307,7 +310,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/host_list_response.rb b/lib/datadog_api_client/v1/models/host_list_response.rb index 501b23e02787..91b6c2335f96 100644 --- a/lib/datadog_api_client/v1/models/host_list_response.rb +++ b/lib/datadog_api_client/v1/models/host_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response with Host information from Datadog. class HostListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of hosts. attr_accessor :host_list @@ -193,7 +196,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/host_map_request.rb b/lib/datadog_api_client/v1/models/host_map_request.rb index 8cf1d523ba97..8902f3ee8e49 100644 --- a/lib/datadog_api_client/v1/models/host_map_request.rb +++ b/lib/datadog_api_client/v1/models/host_map_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Updated host map. class HostMapRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :apm_query attr_accessor :event_query @@ -243,7 +246,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/host_map_widget_definition.rb b/lib/datadog_api_client/v1/models/host_map_widget_definition.rb index 2aa2e1adf2a9..b5c2d4d053a6 100644 --- a/lib/datadog_api_client/v1/models/host_map_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/host_map_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The host map widget graphs any metric across your hosts using the same visualization available from the main Host Map page. class HostMapWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of custom links. attr_accessor :custom_links @@ -304,7 +307,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/host_map_widget_definition_requests.rb b/lib/datadog_api_client/v1/models/host_map_widget_definition_requests.rb index f84f9d2e4178..cb78dc9fe628 100644 --- a/lib/datadog_api_client/v1/models/host_map_widget_definition_requests.rb +++ b/lib/datadog_api_client/v1/models/host_map_widget_definition_requests.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # List of definitions. class HostMapWidgetDefinitionRequests + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :fill attr_accessor :size @@ -179,7 +182,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/host_map_widget_definition_style.rb b/lib/datadog_api_client/v1/models/host_map_widget_definition_style.rb index 35acc43a83e2..b3f2fe6ab948 100644 --- a/lib/datadog_api_client/v1/models/host_map_widget_definition_style.rb +++ b/lib/datadog_api_client/v1/models/host_map_widget_definition_style.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The style to apply to the widget. class HostMapWidgetDefinitionStyle + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Max value to use to color the map. attr_accessor :fill_max @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/host_map_widget_definition_type.rb b/lib/datadog_api_client/v1/models/host_map_widget_definition_type.rb index 6a78742044ef..b5030751600c 100644 --- a/lib/datadog_api_client/v1/models/host_map_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/host_map_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = HostMapWidgetDefinitionType.constants.select { |c| HostMapWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #HostMapWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/host_meta.rb b/lib/datadog_api_client/v1/models/host_meta.rb index a5b53de1c42c..115cafe31bd2 100644 --- a/lib/datadog_api_client/v1/models/host_meta.rb +++ b/lib/datadog_api_client/v1/models/host_meta.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Metadata associated with your host. class HostMeta + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of Unix versions. attr_accessor :nix_v @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/host_metrics.rb b/lib/datadog_api_client/v1/models/host_metrics.rb index 8b360772dfce..bb81d1e9dcae 100644 --- a/lib/datadog_api_client/v1/models/host_metrics.rb +++ b/lib/datadog_api_client/v1/models/host_metrics.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Host Metrics collected. class HostMetrics + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The percent of CPU used (everything but idle). attr_accessor :cpu @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/host_mute_response.rb b/lib/datadog_api_client/v1/models/host_mute_response.rb index 32bd01cb3b7e..62ff9b250ba4 100644 --- a/lib/datadog_api_client/v1/models/host_mute_response.rb +++ b/lib/datadog_api_client/v1/models/host_mute_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response with the list of muted host for your organization. class HostMuteResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Action applied to the hosts. attr_accessor :action @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/host_mute_settings.rb b/lib/datadog_api_client/v1/models/host_mute_settings.rb index a82261f13240..30b9dbd8b359 100644 --- a/lib/datadog_api_client/v1/models/host_mute_settings.rb +++ b/lib/datadog_api_client/v1/models/host_mute_settings.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Combination of settings to mute a host. class HostMuteSettings + # whether the object has unparsed attributes + attr_accessor :_unparsed + # POSIX timestamp in seconds when the host is unmuted. If omitted, the host remains muted until explicitly unmuted. attr_accessor :_end @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/host_tags.rb b/lib/datadog_api_client/v1/models/host_tags.rb index fe947f023af9..c8623813d367 100644 --- a/lib/datadog_api_client/v1/models/host_tags.rb +++ b/lib/datadog_api_client/v1/models/host_tags.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Set of tags to associate with your host. class HostTags + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Your host name. attr_accessor :host @@ -183,7 +186,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/host_totals.rb b/lib/datadog_api_client/v1/models/host_totals.rb index 95452eb4d063..38b2fa3dd358 100644 --- a/lib/datadog_api_client/v1/models/host_totals.rb +++ b/lib/datadog_api_client/v1/models/host_totals.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Total number of host currently monitored by Datadog. class HostTotals + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Total number of active host (UP and ???) reporting to Datadog. attr_accessor :total_active @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/http_log_error.rb b/lib/datadog_api_client/v1/models/http_log_error.rb index f0cb87f615f9..5185d175d749 100644 --- a/lib/datadog_api_client/v1/models/http_log_error.rb +++ b/lib/datadog_api_client/v1/models/http_log_error.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Invalid query performed. class HTTPLogError + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Error code. attr_accessor :code @@ -210,7 +213,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/http_log_item.rb b/lib/datadog_api_client/v1/models/http_log_item.rb index 8e0a7494488d..95fac19814c2 100644 --- a/lib/datadog_api_client/v1/models/http_log_item.rb +++ b/lib/datadog_api_client/v1/models/http_log_item.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Logs that are sent over HTTP. class HTTPLogItem + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The integration name associated with your log: the technology from which the log originated. When it matches an integration name, Datadog automatically installs the corresponding parsers and facets. See [reserved attributes](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes). attr_accessor :ddsource @@ -211,7 +214,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/http_method.rb b/lib/datadog_api_client/v1/models/http_method.rb index bfd79a81413d..6ba9ab775d6e 100644 --- a/lib/datadog_api_client/v1/models/http_method.rb +++ b/lib/datadog_api_client/v1/models/http_method.rb @@ -38,8 +38,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = HTTPMethod.constants.select { |c| HTTPMethod::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #HTTPMethod" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/i_frame_widget_definition.rb b/lib/datadog_api_client/v1/models/i_frame_widget_definition.rb index 3bb0d85ec112..0335926b37dc 100644 --- a/lib/datadog_api_client/v1/models/i_frame_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/i_frame_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The iframe widget allows you to embed a portion of any other web page on your dashboard. Only available on FREE layout dashboards. class IFrameWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :type # URL of the iframe. @@ -192,7 +195,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/i_frame_widget_definition_type.rb b/lib/datadog_api_client/v1/models/i_frame_widget_definition_type.rb index f82366dcf862..3fc5e2718f28 100644 --- a/lib/datadog_api_client/v1/models/i_frame_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/i_frame_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = IFrameWidgetDefinitionType.constants.select { |c| IFrameWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #IFrameWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/idp_form_data.rb b/lib/datadog_api_client/v1/models/idp_form_data.rb index d56e258855d2..e3b9653e122c 100644 --- a/lib/datadog_api_client/v1/models/idp_form_data.rb +++ b/lib/datadog_api_client/v1/models/idp_form_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the IdP configuration. class IdpFormData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The path to the XML metadata file you wish to upload. attr_accessor :idp_file @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/idp_response.rb b/lib/datadog_api_client/v1/models/idp_response.rb index 22e45d7893ab..ad98eeb66248 100644 --- a/lib/datadog_api_client/v1/models/idp_response.rb +++ b/lib/datadog_api_client/v1/models/idp_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The IdP response object. class IdpResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Identity provider response. attr_accessor :message @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/image_widget_definition.rb b/lib/datadog_api_client/v1/models/image_widget_definition.rb index 1471531b495b..71c28b5601eb 100644 --- a/lib/datadog_api_client/v1/models/image_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/image_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The image widget allows you to embed an image on your dashboard. An image can be a PNG, JPG, or animated GIF. Only available on FREE layout dashboards. class ImageWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether to display a background or not. attr_accessor :has_background @@ -262,7 +265,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/image_widget_definition_type.rb b/lib/datadog_api_client/v1/models/image_widget_definition_type.rb index f51af7fc5a50..fdb0e0aa2019 100644 --- a/lib/datadog_api_client/v1/models/image_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/image_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ImageWidgetDefinitionType.constants.select { |c| ImageWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ImageWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/intake_payload_accepted.rb b/lib/datadog_api_client/v1/models/intake_payload_accepted.rb index d0f5b6a7215a..a75e4d4a9b21 100644 --- a/lib/datadog_api_client/v1/models/intake_payload_accepted.rb +++ b/lib/datadog_api_client/v1/models/intake_payload_accepted.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The payload accepted for intake. class IntakePayloadAccepted + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The status of the intake payload. attr_accessor :status @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/ip_prefixes_agents.rb b/lib/datadog_api_client/v1/models/ip_prefixes_agents.rb index 8c31399d2220..79b1bafba0b4 100644 --- a/lib/datadog_api_client/v1/models/ip_prefixes_agents.rb +++ b/lib/datadog_api_client/v1/models/ip_prefixes_agents.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Available prefix information for the Agent endpoints. class IPPrefixesAgents + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of IPv4 prefixes. attr_accessor :prefixes_ipv4 @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/ip_prefixes_api.rb b/lib/datadog_api_client/v1/models/ip_prefixes_api.rb index 43ae552d310d..e5b3770d756c 100644 --- a/lib/datadog_api_client/v1/models/ip_prefixes_api.rb +++ b/lib/datadog_api_client/v1/models/ip_prefixes_api.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Available prefix information for the API endpoints. class IPPrefixesAPI + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of IPv4 prefixes. attr_accessor :prefixes_ipv4 @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/ip_prefixes_apm.rb b/lib/datadog_api_client/v1/models/ip_prefixes_apm.rb index b6233e5a6b3a..bca16d33cbd4 100644 --- a/lib/datadog_api_client/v1/models/ip_prefixes_apm.rb +++ b/lib/datadog_api_client/v1/models/ip_prefixes_apm.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Available prefix information for the APM endpoints. class IPPrefixesAPM + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of IPv4 prefixes. attr_accessor :prefixes_ipv4 @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/ip_prefixes_logs.rb b/lib/datadog_api_client/v1/models/ip_prefixes_logs.rb index a2c12257c09d..7b523a853650 100644 --- a/lib/datadog_api_client/v1/models/ip_prefixes_logs.rb +++ b/lib/datadog_api_client/v1/models/ip_prefixes_logs.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Available prefix information for the Logs endpoints. class IPPrefixesLogs + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of IPv4 prefixes. attr_accessor :prefixes_ipv4 @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/ip_prefixes_process.rb b/lib/datadog_api_client/v1/models/ip_prefixes_process.rb index e6222e7ca275..c57514ad6b04 100644 --- a/lib/datadog_api_client/v1/models/ip_prefixes_process.rb +++ b/lib/datadog_api_client/v1/models/ip_prefixes_process.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Available prefix information for the Process endpoints. class IPPrefixesProcess + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of IPv4 prefixes. attr_accessor :prefixes_ipv4 @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/ip_prefixes_synthetics.rb b/lib/datadog_api_client/v1/models/ip_prefixes_synthetics.rb index 6555721d9cab..9bc8df835b2b 100644 --- a/lib/datadog_api_client/v1/models/ip_prefixes_synthetics.rb +++ b/lib/datadog_api_client/v1/models/ip_prefixes_synthetics.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Available prefix information for the Synthetics endpoints. class IPPrefixesSynthetics + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of IPv4 prefixes. attr_accessor :prefixes_ipv4 @@ -209,7 +212,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/ip_prefixes_webhooks.rb b/lib/datadog_api_client/v1/models/ip_prefixes_webhooks.rb index 0ccd65f9811f..a55a70724688 100644 --- a/lib/datadog_api_client/v1/models/ip_prefixes_webhooks.rb +++ b/lib/datadog_api_client/v1/models/ip_prefixes_webhooks.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Available prefix information for the Webhook endpoints. class IPPrefixesWebhooks + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of IPv4 prefixes. attr_accessor :prefixes_ipv4 @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/ip_ranges.rb b/lib/datadog_api_client/v1/models/ip_ranges.rb index 7e4762ec6178..cb58145c7a6d 100644 --- a/lib/datadog_api_client/v1/models/ip_ranges.rb +++ b/lib/datadog_api_client/v1/models/ip_ranges.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # IP ranges. class IPRanges + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :agents attr_accessor :api @@ -244,7 +247,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/list_stream_column.rb b/lib/datadog_api_client/v1/models/list_stream_column.rb index a740c7f2955e..5b3334742a42 100644 --- a/lib/datadog_api_client/v1/models/list_stream_column.rb +++ b/lib/datadog_api_client/v1/models/list_stream_column.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Widget column. class ListStreamColumn + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Widget column field. attr_accessor :field @@ -190,7 +193,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/list_stream_column_width.rb b/lib/datadog_api_client/v1/models/list_stream_column_width.rb index 1a43006674c8..5f973f7fda3d 100644 --- a/lib/datadog_api_client/v1/models/list_stream_column_width.rb +++ b/lib/datadog_api_client/v1/models/list_stream_column_width.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ListStreamColumnWidth.constants.select { |c| ListStreamColumnWidth::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ListStreamColumnWidth" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/list_stream_query.rb b/lib/datadog_api_client/v1/models/list_stream_query.rb index 412e55987077..c551acf7352a 100644 --- a/lib/datadog_api_client/v1/models/list_stream_query.rb +++ b/lib/datadog_api_client/v1/models/list_stream_query.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Updated list stream widget. class ListStreamQuery + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data_source # List of indexes. @@ -204,7 +207,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/list_stream_response_format.rb b/lib/datadog_api_client/v1/models/list_stream_response_format.rb index b33426b50657..dff94956db74 100644 --- a/lib/datadog_api_client/v1/models/list_stream_response_format.rb +++ b/lib/datadog_api_client/v1/models/list_stream_response_format.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ListStreamResponseFormat.constants.select { |c| ListStreamResponseFormat::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ListStreamResponseFormat" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/list_stream_source.rb b/lib/datadog_api_client/v1/models/list_stream_source.rb index e9375517f394..109f600ac498 100644 --- a/lib/datadog_api_client/v1/models/list_stream_source.rb +++ b/lib/datadog_api_client/v1/models/list_stream_source.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ListStreamSource.constants.select { |c| ListStreamSource::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ListStreamSource" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/list_stream_widget_definition.rb b/lib/datadog_api_client/v1/models/list_stream_widget_definition.rb index 4b99dd354d03..480a04f18d05 100644 --- a/lib/datadog_api_client/v1/models/list_stream_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/list_stream_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The list stream visualization displays a table of recent events in your application that match a search criteria using user-defined columns. class ListStreamWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Available legend sizes for a widget. Should be one of \"0\", \"2\", \"4\", \"8\", \"16\", or \"auto\". attr_accessor :legend_size @@ -280,7 +283,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/list_stream_widget_definition_type.rb b/lib/datadog_api_client/v1/models/list_stream_widget_definition_type.rb index 3253638f1086..7ebb23ebee02 100644 --- a/lib/datadog_api_client/v1/models/list_stream_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/list_stream_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ListStreamWidgetDefinitionType.constants.select { |c| ListStreamWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ListStreamWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/list_stream_widget_request.rb b/lib/datadog_api_client/v1/models/list_stream_widget_request.rb index 55b6916dcd3b..bb776e0b57d2 100644 --- a/lib/datadog_api_client/v1/models/list_stream_widget_request.rb +++ b/lib/datadog_api_client/v1/models/list_stream_widget_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Updated list stream widget. class ListStreamWidgetRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Widget columns. attr_accessor :columns @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/log.rb b/lib/datadog_api_client/v1/models/log.rb index 22d9cf6cc33c..8451d29dd390 100644 --- a/lib/datadog_api_client/v1/models/log.rb +++ b/lib/datadog_api_client/v1/models/log.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing a log after being processed and stored by Datadog. class Log + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :content # Unique ID of the Log. @@ -180,7 +183,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/log_content.rb b/lib/datadog_api_client/v1/models/log_content.rb index e5bfc0168c2b..7119fe9d9e1d 100644 --- a/lib/datadog_api_client/v1/models/log_content.rb +++ b/lib/datadog_api_client/v1/models/log_content.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # JSON object containing all log attributes and their associated values. class LogContent + # whether the object has unparsed attributes + attr_accessor :_unparsed + # JSON object of attributes from your log. attr_accessor :attributes @@ -225,7 +228,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/log_query_definition.rb b/lib/datadog_api_client/v1/models/log_query_definition.rb index 6887a536096b..1b7de8f252d7 100644 --- a/lib/datadog_api_client/v1/models/log_query_definition.rb +++ b/lib/datadog_api_client/v1/models/log_query_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The log query. class LogQueryDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :compute # List of tag prefixes to group by in the case of a cluster check. @@ -213,7 +216,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/log_query_definition_group_by.rb b/lib/datadog_api_client/v1/models/log_query_definition_group_by.rb index bf53a23b1538..829613a7b2ba 100644 --- a/lib/datadog_api_client/v1/models/log_query_definition_group_by.rb +++ b/lib/datadog_api_client/v1/models/log_query_definition_group_by.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Defined items in the group. class LogQueryDefinitionGroupBy + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Facet name. attr_accessor :facet @@ -195,7 +198,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/log_query_definition_group_by_sort.rb b/lib/datadog_api_client/v1/models/log_query_definition_group_by_sort.rb index 6064194692a7..cb3b960d8770 100644 --- a/lib/datadog_api_client/v1/models/log_query_definition_group_by_sort.rb +++ b/lib/datadog_api_client/v1/models/log_query_definition_group_by_sort.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Define a sorting method. class LogQueryDefinitionGroupBySort + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The aggregation method. attr_accessor :aggregation @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/log_query_definition_search.rb b/lib/datadog_api_client/v1/models/log_query_definition_search.rb index 50c963436373..42457645774f 100644 --- a/lib/datadog_api_client/v1/models/log_query_definition_search.rb +++ b/lib/datadog_api_client/v1/models/log_query_definition_search.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The query being made on the logs. class LogQueryDefinitionSearch + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Search value to apply. attr_accessor :query @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/log_stream_widget_definition.rb b/lib/datadog_api_client/v1/models/log_stream_widget_definition.rb index d1b05d1cebcb..4e44f92b540e 100644 --- a/lib/datadog_api_client/v1/models/log_stream_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/log_stream_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The Log Stream displays a log flow matching the defined query. Only available on FREE layout dashboards. class LogStreamWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Which columns to display on the widget. attr_accessor :columns @@ -297,7 +300,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/log_stream_widget_definition_type.rb b/lib/datadog_api_client/v1/models/log_stream_widget_definition_type.rb index 6fdcf4c163e2..1f0edba0627c 100644 --- a/lib/datadog_api_client/v1/models/log_stream_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/log_stream_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogStreamWidgetDefinitionType.constants.select { |c| LogStreamWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogStreamWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_api_error.rb b/lib/datadog_api_client/v1/models/logs_api_error.rb index 20f4ff1758fe..526c6e62d4dc 100644 --- a/lib/datadog_api_client/v1/models/logs_api_error.rb +++ b/lib/datadog_api_client/v1/models/logs_api_error.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Error returned by the Logs API class LogsAPIError + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Code identifying the error attr_accessor :code @@ -193,7 +196,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_api_error_response.rb b/lib/datadog_api_client/v1/models/logs_api_error_response.rb index 8db1c8c49707..2bbbd350c890 100644 --- a/lib/datadog_api_client/v1/models/logs_api_error_response.rb +++ b/lib/datadog_api_client/v1/models/logs_api_error_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response returned by the Logs API when errors occur. class LogsAPIErrorResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :error # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_arithmetic_processor.rb b/lib/datadog_api_client/v1/models/logs_arithmetic_processor.rb index 809af56792c4..8866ebbcf591 100644 --- a/lib/datadog_api_client/v1/models/logs_arithmetic_processor.rb +++ b/lib/datadog_api_client/v1/models/logs_arithmetic_processor.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Use the Arithmetic Processor to add a new attribute (without spaces or special characters in the new attribute name) to a log with the result of the provided formula. This enables you to remap different time attributes with different units into a single attribute, or to compute operations on attributes within the same log. The formula can use parentheses and the basic arithmetic operators `-`, `+`, `*`, `/`. By default, the calculation is skipped if an attribute is missing. Select “Replace missing attribute by 0” to automatically populate missing attribute values with 0 to ensure that the calculation is done. An attribute is missing if it is not found in the log attributes, or if it cannot be converted to a number. *Notes*: - The operator `-` needs to be space split in the formula as it can also be contained in attribute names. - If the target attribute already exists, it is overwritten by the result of the formula. - Results are rounded up to the 9th decimal. For example, if the result of the formula is `0.1234567891`, the actual value stored for the attribute is `0.123456789`. - If you need to scale a unit of measure, see [Scale Filter](https://docs.datadoghq.com/logs/log_configuration/parsing/?tab=filter#matcher-and-filter). class LogsArithmeticProcessor + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Arithmetic operation between one or more log attributes. attr_accessor :expression @@ -241,7 +244,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_arithmetic_processor_type.rb b/lib/datadog_api_client/v1/models/logs_arithmetic_processor_type.rb index abb62ad7ac1f..d9193cd4da4d 100644 --- a/lib/datadog_api_client/v1/models/logs_arithmetic_processor_type.rb +++ b/lib/datadog_api_client/v1/models/logs_arithmetic_processor_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsArithmeticProcessorType.constants.select { |c| LogsArithmeticProcessorType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsArithmeticProcessorType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_attribute_remapper.rb b/lib/datadog_api_client/v1/models/logs_attribute_remapper.rb index 2c45563f5ed0..95541930dd17 100644 --- a/lib/datadog_api_client/v1/models/logs_attribute_remapper.rb +++ b/lib/datadog_api_client/v1/models/logs_attribute_remapper.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The remapper processor remaps any source attribute(s) or tag to another target attribute or tag. Constraints on the tag/attribute name are explained in the [Tag Best Practice documentation](https://docs.datadoghq.com/logs/guide/log-parsing-best-practice). Some additional constraints are applied as `:` or `,` are not allowed in the target tag/attribute name. class LogsAttributeRemapper + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not the processor is enabled. attr_accessor :is_enabled @@ -288,7 +291,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_attribute_remapper_type.rb b/lib/datadog_api_client/v1/models/logs_attribute_remapper_type.rb index 48e2df3f89ad..dcef09f38ad1 100644 --- a/lib/datadog_api_client/v1/models/logs_attribute_remapper_type.rb +++ b/lib/datadog_api_client/v1/models/logs_attribute_remapper_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsAttributeRemapperType.constants.select { |c| LogsAttributeRemapperType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsAttributeRemapperType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_by_retention.rb b/lib/datadog_api_client/v1/models/logs_by_retention.rb index a10a2be439c7..002bd6a99fde 100644 --- a/lib/datadog_api_client/v1/models/logs_by_retention.rb +++ b/lib/datadog_api_client/v1/models/logs_by_retention.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing logs usage data broken down by retention period. class LogsByRetention + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :orgs # Aggregated index logs usage for each retention period with usage. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_by_retention_monthly_usage.rb b/lib/datadog_api_client/v1/models/logs_by_retention_monthly_usage.rb index e1548e6d1d69..e29250c33b3d 100644 --- a/lib/datadog_api_client/v1/models/logs_by_retention_monthly_usage.rb +++ b/lib/datadog_api_client/v1/models/logs_by_retention_monthly_usage.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing a summary of indexed logs usage by retention period for a single month. class LogsByRetentionMonthlyUsage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The month for the usage. attr_accessor :date @@ -183,7 +186,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_by_retention_org_usage.rb b/lib/datadog_api_client/v1/models/logs_by_retention_org_usage.rb index d0b1532e5af1..d441c88d1a7b 100644 --- a/lib/datadog_api_client/v1/models/logs_by_retention_org_usage.rb +++ b/lib/datadog_api_client/v1/models/logs_by_retention_org_usage.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Indexed logs usage by retention for a single organization. class LogsByRetentionOrgUsage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Indexed logs usage for each active retention for the organization. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_by_retention_orgs.rb b/lib/datadog_api_client/v1/models/logs_by_retention_orgs.rb index 8050f2cb0a88..b9004319c579 100644 --- a/lib/datadog_api_client/v1/models/logs_by_retention_orgs.rb +++ b/lib/datadog_api_client/v1/models/logs_by_retention_orgs.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Indexed logs usage summary for each organization for each retention period with usage. class LogsByRetentionOrgs + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Indexed logs usage summary for each organization. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_category_processor.rb b/lib/datadog_api_client/v1/models/logs_category_processor.rb index fb543222ae8d..f5a1e3048652 100644 --- a/lib/datadog_api_client/v1/models/logs_category_processor.rb +++ b/lib/datadog_api_client/v1/models/logs_category_processor.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Use the Category Processor to add a new attribute (without spaces or special characters in the new attribute name) to a log matching a provided search query. Use categories to create groups for an analytical view. For example, URL groups, machine groups, environments, and response time buckets. **Notes**: - The syntax of the query is the one of Logs Explorer search bar. The query can be done on any log attribute or tag, whether it is a facet or not. Wildcards can also be used inside your query. - Once the log has matched one of the Processor queries, it stops. Make sure they are properly ordered in case a log could match several queries. - The names of the categories must be unique. - Once defined in the Category Processor, you can map categories to log status using the Log Status Remapper. class LogsCategoryProcessor + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of filters to match or not a log and their corresponding `name`to assign a custom value to the log. attr_accessor :categories @@ -231,7 +234,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_category_processor_category.rb b/lib/datadog_api_client/v1/models/logs_category_processor_category.rb index cdec8604e346..85e0528f3937 100644 --- a/lib/datadog_api_client/v1/models/logs_category_processor_category.rb +++ b/lib/datadog_api_client/v1/models/logs_category_processor_category.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the logs filter. class LogsCategoryProcessorCategory + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :filter # Value to assign to the target attribute. @@ -180,7 +183,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_category_processor_type.rb b/lib/datadog_api_client/v1/models/logs_category_processor_type.rb index e2fd2d75ae26..b8a40e19777d 100644 --- a/lib/datadog_api_client/v1/models/logs_category_processor_type.rb +++ b/lib/datadog_api_client/v1/models/logs_category_processor_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsCategoryProcessorType.constants.select { |c| LogsCategoryProcessorType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsCategoryProcessorType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_date_remapper.rb b/lib/datadog_api_client/v1/models/logs_date_remapper.rb index 8e03146eb98c..2e05ef248683 100644 --- a/lib/datadog_api_client/v1/models/logs_date_remapper.rb +++ b/lib/datadog_api_client/v1/models/logs_date_remapper.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # As Datadog receives logs, it timestamps them using the value(s) from any of these default attributes. - `timestamp` - `date` - `_timestamp` - `Timestamp` - `eventTime` - `published_date` If your logs put their dates in an attribute not in this list, use the log date Remapper Processor to define their date attribute as the official log timestamp. The recognized date formats are ISO8601, UNIX (the milliseconds EPOCH format), and RFC3164. **Note:** If your logs don’t contain any of the default attributes and you haven’t defined your own date attribute, Datadog timestamps the logs with the date it received them. If multiple log date remapper processors can be applied to a given log, only the first one (according to the pipelines order) is taken into account. class LogsDateRemapper + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not the processor is enabled. attr_accessor :is_enabled @@ -216,7 +219,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_date_remapper_type.rb b/lib/datadog_api_client/v1/models/logs_date_remapper_type.rb index afc8c02a6a69..a11572d1e3d0 100644 --- a/lib/datadog_api_client/v1/models/logs_date_remapper_type.rb +++ b/lib/datadog_api_client/v1/models/logs_date_remapper_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsDateRemapperType.constants.select { |c| LogsDateRemapperType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsDateRemapperType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_exclusion.rb b/lib/datadog_api_client/v1/models/logs_exclusion.rb index afb0933e7a50..e8c8d9c2b3d2 100644 --- a/lib/datadog_api_client/v1/models/logs_exclusion.rb +++ b/lib/datadog_api_client/v1/models/logs_exclusion.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Represents the index exclusion filter object from configuration API. class LogsExclusion + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :filter # Whether or not the exclusion filter is active. @@ -195,7 +198,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_exclusion_filter.rb b/lib/datadog_api_client/v1/models/logs_exclusion_filter.rb index 3ed7438b460f..6886c39785bb 100644 --- a/lib/datadog_api_client/v1/models/logs_exclusion_filter.rb +++ b/lib/datadog_api_client/v1/models/logs_exclusion_filter.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Exclusion filter is defined by a query, a sampling rule, and a active/inactive toggle. class LogsExclusionFilter + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Default query is `*`, meaning all logs flowing in the index would be excluded. Scope down exclusion filter to only a subset of logs with a log query. attr_accessor :query @@ -186,7 +189,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_filter.rb b/lib/datadog_api_client/v1/models/logs_filter.rb index 079d35feacb6..0016bc21360f 100644 --- a/lib/datadog_api_client/v1/models/logs_filter.rb +++ b/lib/datadog_api_client/v1/models/logs_filter.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Filter for logs. class LogsFilter + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The filter query. attr_accessor :query @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_geo_ip_parser.rb b/lib/datadog_api_client/v1/models/logs_geo_ip_parser.rb index 0bfd252a81b9..ef83997c71a1 100644 --- a/lib/datadog_api_client/v1/models/logs_geo_ip_parser.rb +++ b/lib/datadog_api_client/v1/models/logs_geo_ip_parser.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The GeoIP parser takes an IP address attribute and extracts if available the Continent, Country, Subdivision, and City information in the target attribute path. class LogsGeoIPParser + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not the processor is enabled. attr_accessor :is_enabled @@ -233,7 +236,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_geo_ip_parser_type.rb b/lib/datadog_api_client/v1/models/logs_geo_ip_parser_type.rb index ff855c738b61..658ba7d55d41 100644 --- a/lib/datadog_api_client/v1/models/logs_geo_ip_parser_type.rb +++ b/lib/datadog_api_client/v1/models/logs_geo_ip_parser_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsGeoIPParserType.constants.select { |c| LogsGeoIPParserType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsGeoIPParserType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_grok_parser.rb b/lib/datadog_api_client/v1/models/logs_grok_parser.rb index 5e05c1be2fd9..3132662ce620 100644 --- a/lib/datadog_api_client/v1/models/logs_grok_parser.rb +++ b/lib/datadog_api_client/v1/models/logs_grok_parser.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Create custom grok rules to parse the full message or [a specific attribute of your raw event](https://docs.datadoghq.com/logs/log_configuration/parsing/#advanced-settings). For more information, see the [parsing section](https://docs.datadoghq.com/logs/log_configuration/parsing). class LogsGrokParser + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :grok # Whether or not the processor is enabled. @@ -257,7 +260,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_grok_parser_rules.rb b/lib/datadog_api_client/v1/models/logs_grok_parser_rules.rb index 6a9edfefed22..9a34196bc407 100644 --- a/lib/datadog_api_client/v1/models/logs_grok_parser_rules.rb +++ b/lib/datadog_api_client/v1/models/logs_grok_parser_rules.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Set of rules for the grok parser. class LogsGrokParserRules + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of match rules for the grok parser, separated by a new line. attr_accessor :match_rules @@ -188,7 +191,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_grok_parser_type.rb b/lib/datadog_api_client/v1/models/logs_grok_parser_type.rb index 4044839c4329..6cb569031ff0 100644 --- a/lib/datadog_api_client/v1/models/logs_grok_parser_type.rb +++ b/lib/datadog_api_client/v1/models/logs_grok_parser_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsGrokParserType.constants.select { |c| LogsGrokParserType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsGrokParserType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_index.rb b/lib/datadog_api_client/v1/models/logs_index.rb index 96fd7b4da06f..bef69fce7510 100644 --- a/lib/datadog_api_client/v1/models/logs_index.rb +++ b/lib/datadog_api_client/v1/models/logs_index.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing a Datadog Log index. class LogsIndex + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The number of log events you can send in this index per day before you are rate-limited. attr_accessor :daily_limit @@ -232,7 +235,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_index_list_response.rb b/lib/datadog_api_client/v1/models/logs_index_list_response.rb index dd22be4e7e6d..d1bceb8e1fd9 100644 --- a/lib/datadog_api_client/v1/models/logs_index_list_response.rb +++ b/lib/datadog_api_client/v1/models/logs_index_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object with all Index configurations for a given organization. class LogsIndexListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of Log index configurations. attr_accessor :indexes @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_index_update_request.rb b/lib/datadog_api_client/v1/models/logs_index_update_request.rb index 345ce5d9d136..2954c53502a0 100644 --- a/lib/datadog_api_client/v1/models/logs_index_update_request.rb +++ b/lib/datadog_api_client/v1/models/logs_index_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object for updating a Datadog Log index. class LogsIndexUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The number of log events you can send in this index per day before you are rate-limited. attr_accessor :daily_limit @@ -217,7 +220,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_indexes_order.rb b/lib/datadog_api_client/v1/models/logs_indexes_order.rb index 0beafcdc6113..e29a9721f684 100644 --- a/lib/datadog_api_client/v1/models/logs_indexes_order.rb +++ b/lib/datadog_api_client/v1/models/logs_indexes_order.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing the ordered list of log index names. class LogsIndexesOrder + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of strings identifying by their name(s) the index(es) of your organization. Logs are tested against the query filter of each index one by one, following the order of the array. Logs are eventually stored in the first matching index. attr_accessor :index_names @@ -178,7 +181,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_list_request.rb b/lib/datadog_api_client/v1/models/logs_list_request.rb index 87fcdcdc0a50..e658648831bd 100644 --- a/lib/datadog_api_client/v1/models/logs_list_request.rb +++ b/lib/datadog_api_client/v1/models/logs_list_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object to send with the request to retrieve a list of logs from your Organization. class LogsListRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The log index on which the request is performed. For multi-index organizations, the default is all live indexes. Historical indexes of rehydrated logs must be specified. attr_accessor :index @@ -239,7 +242,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_list_request_time.rb b/lib/datadog_api_client/v1/models/logs_list_request_time.rb index c198cf2a7d6b..b1b5a51a44f7 100644 --- a/lib/datadog_api_client/v1/models/logs_list_request_time.rb +++ b/lib/datadog_api_client/v1/models/logs_list_request_time.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Timeframe to retrieve the log from. class LogsListRequestTime + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Minimum timestamp for requested logs. attr_accessor :from @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_list_response.rb b/lib/datadog_api_client/v1/models/logs_list_response.rb index 560dcea33cde..5e7fc8649322 100644 --- a/lib/datadog_api_client/v1/models/logs_list_response.rb +++ b/lib/datadog_api_client/v1/models/logs_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response object with all logs matching the request and pagination information. class LogsListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of logs matching the request and the `nextLogId` if sent. attr_accessor :logs @@ -193,7 +196,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_lookup_processor.rb b/lib/datadog_api_client/v1/models/logs_lookup_processor.rb index bd6f27cfa1c8..04e1f9cd2bf6 100644 --- a/lib/datadog_api_client/v1/models/logs_lookup_processor.rb +++ b/lib/datadog_api_client/v1/models/logs_lookup_processor.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Use the Lookup Processor to define a mapping between a log attribute and a human readable value saved in the processors mapping table. For example, you can use the Lookup Processor to map an internal service ID into a human readable service name. Alternatively, you could also use it to check if the MAC address that just attempted to connect to the production environment belongs to your list of stolen machines. class LogsLookupProcessor + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Value to set the target attribute if the source value is not found in the list. attr_accessor :default_lookup @@ -256,7 +259,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_lookup_processor_type.rb b/lib/datadog_api_client/v1/models/logs_lookup_processor_type.rb index 3503c715d23c..24196950d870 100644 --- a/lib/datadog_api_client/v1/models/logs_lookup_processor_type.rb +++ b/lib/datadog_api_client/v1/models/logs_lookup_processor_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsLookupProcessorType.constants.select { |c| LogsLookupProcessorType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsLookupProcessorType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_message_remapper.rb b/lib/datadog_api_client/v1/models/logs_message_remapper.rb index 761f102aebaf..2d652cd6c647 100644 --- a/lib/datadog_api_client/v1/models/logs_message_remapper.rb +++ b/lib/datadog_api_client/v1/models/logs_message_remapper.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The message is a key attribute in Datadog. It is displayed in the message column of the Log Explorer and you can do full string search on it. Use this Processor to define one or more attributes as the official log message. **Note:** If multiple log message remapper processors can be applied to a given log, only the first one (according to the pipeline order) is taken into account. class LogsMessageRemapper + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not the processor is enabled. attr_accessor :is_enabled @@ -216,7 +219,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_message_remapper_type.rb b/lib/datadog_api_client/v1/models/logs_message_remapper_type.rb index 777c9cfd6dd5..650cc4f40740 100644 --- a/lib/datadog_api_client/v1/models/logs_message_remapper_type.rb +++ b/lib/datadog_api_client/v1/models/logs_message_remapper_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsMessageRemapperType.constants.select { |c| LogsMessageRemapperType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsMessageRemapperType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_pipeline.rb b/lib/datadog_api_client/v1/models/logs_pipeline.rb index 4511a404b8d9..adbfc26d3209 100644 --- a/lib/datadog_api_client/v1/models/logs_pipeline.rb +++ b/lib/datadog_api_client/v1/models/logs_pipeline.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Pipelines and processors operate on incoming logs, parsing and transforming them into structured attributes for easier querying. **Note**: These endpoints are only available for admin users. Make sure to use an application key created by an admin. class LogsPipeline + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :filter # ID of the pipeline. @@ -237,7 +240,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_pipeline_processor.rb b/lib/datadog_api_client/v1/models/logs_pipeline_processor.rb index b67d6e5276df..4397b760ba87 100644 --- a/lib/datadog_api_client/v1/models/logs_pipeline_processor.rb +++ b/lib/datadog_api_client/v1/models/logs_pipeline_processor.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Nested Pipelines are pipelines within a pipeline. Use Nested Pipelines to split the processing into two steps. For example, first use a high-level filtering such as team and then a second level of filtering based on the integration, service, or any other tag or attribute. A pipeline can contain Nested Pipelines and Processors whereas a Nested Pipeline can only contain Processors. class LogsPipelineProcessor + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :filter # Whether or not the processor is enabled. @@ -220,7 +223,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_pipeline_processor_type.rb b/lib/datadog_api_client/v1/models/logs_pipeline_processor_type.rb index f6a4459908e8..3110a40970f8 100644 --- a/lib/datadog_api_client/v1/models/logs_pipeline_processor_type.rb +++ b/lib/datadog_api_client/v1/models/logs_pipeline_processor_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsPipelineProcessorType.constants.select { |c| LogsPipelineProcessorType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsPipelineProcessorType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_pipelines_order.rb b/lib/datadog_api_client/v1/models/logs_pipelines_order.rb index bd50a446d1a2..be8eef65e92d 100644 --- a/lib/datadog_api_client/v1/models/logs_pipelines_order.rb +++ b/lib/datadog_api_client/v1/models/logs_pipelines_order.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing the ordered list of pipeline IDs. class LogsPipelinesOrder + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Ordered Array of `` strings, the order of pipeline IDs in the array define the overall Pipelines order for Datadog. attr_accessor :pipeline_ids @@ -178,7 +181,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_processor.rb b/lib/datadog_api_client/v1/models/logs_processor.rb index 4f0ddc9ae6df..e946227acc24 100644 --- a/lib/datadog_api_client/v1/models/logs_processor.rb +++ b/lib/datadog_api_client/v1/models/logs_processor.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V1 # Definition of a logs processor. module LogsProcessor class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -56,12 +58,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V1::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v1/models/logs_query_compute.rb b/lib/datadog_api_client/v1/models/logs_query_compute.rb index ec3e1f8cb500..255158d7e829 100644 --- a/lib/datadog_api_client/v1/models/logs_query_compute.rb +++ b/lib/datadog_api_client/v1/models/logs_query_compute.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Define computation for a log query. class LogsQueryCompute + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The aggregation method. attr_accessor :aggregation @@ -196,7 +199,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_retention_agg_sum_usage.rb b/lib/datadog_api_client/v1/models/logs_retention_agg_sum_usage.rb index bcf48fef8fbc..8e0bcec532b9 100644 --- a/lib/datadog_api_client/v1/models/logs_retention_agg_sum_usage.rb +++ b/lib/datadog_api_client/v1/models/logs_retention_agg_sum_usage.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing indexed logs usage aggregated across organizations and months for a retention period. class LogsRetentionAggSumUsage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Total indexed logs for this retention period. attr_accessor :logs_indexed_logs_usage_agg_sum @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_retention_sum_usage.rb b/lib/datadog_api_client/v1/models/logs_retention_sum_usage.rb index f4bf66465a72..6ea71bcc4835 100644 --- a/lib/datadog_api_client/v1/models/logs_retention_sum_usage.rb +++ b/lib/datadog_api_client/v1/models/logs_retention_sum_usage.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing indexed logs usage grouped by retention period and summed. class LogsRetentionSumUsage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Total indexed logs for this retention period. attr_accessor :logs_indexed_logs_usage_sum @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_service_remapper.rb b/lib/datadog_api_client/v1/models/logs_service_remapper.rb index d725dda24e62..dcd60f96ab01 100644 --- a/lib/datadog_api_client/v1/models/logs_service_remapper.rb +++ b/lib/datadog_api_client/v1/models/logs_service_remapper.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Use this processor if you want to assign one or more attributes as the official service. **Note:** If multiple service remapper processors can be applied to a given log, only the first one (according to the pipeline order) is taken into account. class LogsServiceRemapper + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not the processor is enabled. attr_accessor :is_enabled @@ -216,7 +219,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_service_remapper_type.rb b/lib/datadog_api_client/v1/models/logs_service_remapper_type.rb index 186a60707db7..5bc69a288b44 100644 --- a/lib/datadog_api_client/v1/models/logs_service_remapper_type.rb +++ b/lib/datadog_api_client/v1/models/logs_service_remapper_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsServiceRemapperType.constants.select { |c| LogsServiceRemapperType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsServiceRemapperType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_sort.rb b/lib/datadog_api_client/v1/models/logs_sort.rb index d6c4475d8e0d..e8a5bda9e712 100644 --- a/lib/datadog_api_client/v1/models/logs_sort.rb +++ b/lib/datadog_api_client/v1/models/logs_sort.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsSort.constants.select { |c| LogsSort::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsSort" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_status_remapper.rb b/lib/datadog_api_client/v1/models/logs_status_remapper.rb index c0f13be779cc..8cb68308d297 100644 --- a/lib/datadog_api_client/v1/models/logs_status_remapper.rb +++ b/lib/datadog_api_client/v1/models/logs_status_remapper.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Use this Processor if you want to assign some attributes as the official status. Each incoming status value is mapped as follows. - Integers from 0 to 7 map to the Syslog severity standards - Strings beginning with `emerg` or f (case-insensitive) map to `emerg` (0) - Strings beginning with `a` (case-insensitive) map to `alert` (1) - Strings beginning with `c` (case-insensitive) map to `critical` (2) - Strings beginning with `err` (case-insensitive) map to `error` (3) - Strings beginning with `w` (case-insensitive) map to `warning` (4) - Strings beginning with `n` (case-insensitive) map to `notice` (5) - Strings beginning with `i` (case-insensitive) map to `info` (6) - Strings beginning with `d`, `trace` or `verbose` (case-insensitive) map to `debug` (7) - Strings beginning with `o` or matching `OK` or `Success` (case-insensitive) map to OK - All others map to `info` (6) **Note:** If multiple log status remapper processors can be applied to a given log, only the first one (according to the pipelines order) is taken into account. class LogsStatusRemapper + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not the processor is enabled. attr_accessor :is_enabled @@ -216,7 +219,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_status_remapper_type.rb b/lib/datadog_api_client/v1/models/logs_status_remapper_type.rb index 49297951dfd5..8a0a0ef33f6c 100644 --- a/lib/datadog_api_client/v1/models/logs_status_remapper_type.rb +++ b/lib/datadog_api_client/v1/models/logs_status_remapper_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsStatusRemapperType.constants.select { |c| LogsStatusRemapperType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsStatusRemapperType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_string_builder_processor.rb b/lib/datadog_api_client/v1/models/logs_string_builder_processor.rb index ffc8be7cb19c..cd7584c89fcc 100644 --- a/lib/datadog_api_client/v1/models/logs_string_builder_processor.rb +++ b/lib/datadog_api_client/v1/models/logs_string_builder_processor.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Use the string builder processor to add a new attribute (without spaces or special characters) to a log with the result of the provided template. This enables aggregation of different attributes or raw strings into a single attribute. The template is defined by both raw text and blocks with the syntax `%{attribute_path}`. **Notes**: - The processor only accepts attributes with values or an array of values in the blocks. - If an attribute cannot be used (object or array of object), it is replaced by an empty string or the entire operation is skipped depending on your selection. - If the target attribute already exists, it is overwritten by the result of the template. - Results of the template cannot exceed 256 characters. class LogsStringBuilderProcessor + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not the processor is enabled. attr_accessor :is_enabled @@ -241,7 +244,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_string_builder_processor_type.rb b/lib/datadog_api_client/v1/models/logs_string_builder_processor_type.rb index b51671b46857..526784f8dc95 100644 --- a/lib/datadog_api_client/v1/models/logs_string_builder_processor_type.rb +++ b/lib/datadog_api_client/v1/models/logs_string_builder_processor_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsStringBuilderProcessorType.constants.select { |c| LogsStringBuilderProcessorType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsStringBuilderProcessorType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_trace_remapper.rb b/lib/datadog_api_client/v1/models/logs_trace_remapper.rb index 7e11ae4db574..d8470ffe9fcd 100644 --- a/lib/datadog_api_client/v1/models/logs_trace_remapper.rb +++ b/lib/datadog_api_client/v1/models/logs_trace_remapper.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # There are two ways to improve correlation between application traces and logs. 1. Follow the documentation on [how to inject a trace ID in the application logs](https://docs.datadoghq.com/tracing/connect_logs_and_traces) and by default log integrations take care of all the rest of the setup. 2. Use the Trace remapper processor to define a log attribute as its associated trace ID. class LogsTraceRemapper + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not the processor is enabled. attr_accessor :is_enabled @@ -211,7 +214,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_trace_remapper_type.rb b/lib/datadog_api_client/v1/models/logs_trace_remapper_type.rb index 66ef8765b312..de5a5c108b57 100644 --- a/lib/datadog_api_client/v1/models/logs_trace_remapper_type.rb +++ b/lib/datadog_api_client/v1/models/logs_trace_remapper_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsTraceRemapperType.constants.select { |c| LogsTraceRemapperType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsTraceRemapperType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_url_parser.rb b/lib/datadog_api_client/v1/models/logs_url_parser.rb index cc107e5c3076..3461fd961736 100644 --- a/lib/datadog_api_client/v1/models/logs_url_parser.rb +++ b/lib/datadog_api_client/v1/models/logs_url_parser.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # This processor extracts query parameters and other important parameters from a URL. class LogsURLParser + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not the processor is enabled. attr_accessor :is_enabled @@ -246,7 +249,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_url_parser_type.rb b/lib/datadog_api_client/v1/models/logs_url_parser_type.rb index d4adca011293..1b37e6cccaf6 100644 --- a/lib/datadog_api_client/v1/models/logs_url_parser_type.rb +++ b/lib/datadog_api_client/v1/models/logs_url_parser_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsURLParserType.constants.select { |c| LogsURLParserType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsURLParserType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/logs_user_agent_parser.rb b/lib/datadog_api_client/v1/models/logs_user_agent_parser.rb index 24cc4c68b33e..ea2c32c27bd8 100644 --- a/lib/datadog_api_client/v1/models/logs_user_agent_parser.rb +++ b/lib/datadog_api_client/v1/models/logs_user_agent_parser.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The User-Agent parser takes a User-Agent attribute and extracts the OS, browser, device, and other user data. It recognizes major bots like the Google Bot, Yahoo Slurp, and Bing. class LogsUserAgentParser + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not the processor is enabled. attr_accessor :is_enabled @@ -245,7 +248,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/logs_user_agent_parser_type.rb b/lib/datadog_api_client/v1/models/logs_user_agent_parser_type.rb index cfb0f8e03bca..bec1af65024f 100644 --- a/lib/datadog_api_client/v1/models/logs_user_agent_parser_type.rb +++ b/lib/datadog_api_client/v1/models/logs_user_agent_parser_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsUserAgentParserType.constants.select { |c| LogsUserAgentParserType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsUserAgentParserType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/metric_metadata.rb b/lib/datadog_api_client/v1/models/metric_metadata.rb index d1c27e0d2590..57713d705b18 100644 --- a/lib/datadog_api_client/v1/models/metric_metadata.rb +++ b/lib/datadog_api_client/v1/models/metric_metadata.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object with all metric related metadata. class MetricMetadata + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Metric description. attr_accessor :description @@ -231,7 +234,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/metric_search_response.rb b/lib/datadog_api_client/v1/models/metric_search_response.rb index 5ec773038675..02ced6573dab 100644 --- a/lib/datadog_api_client/v1/models/metric_search_response.rb +++ b/lib/datadog_api_client/v1/models/metric_search_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing the list of metrics matching the search query. class MetricSearchResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :results # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/metric_search_response_results.rb b/lib/datadog_api_client/v1/models/metric_search_response_results.rb index 43b79dcfc5cc..7b73d07984ce 100644 --- a/lib/datadog_api_client/v1/models/metric_search_response_results.rb +++ b/lib/datadog_api_client/v1/models/metric_search_response_results.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Search result. class MetricSearchResponseResults + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of metrics that match the search query. attr_accessor :metrics @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/metrics_list_response.rb b/lib/datadog_api_client/v1/models/metrics_list_response.rb index 31f923582007..40acaa172ab9 100644 --- a/lib/datadog_api_client/v1/models/metrics_list_response.rb +++ b/lib/datadog_api_client/v1/models/metrics_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object listing all metric names stored by Datadog since a given time. class MetricsListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Time when the metrics were active, seconds since the Unix epoch. attr_accessor :from @@ -183,7 +186,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/metrics_payload.rb b/lib/datadog_api_client/v1/models/metrics_payload.rb index 4eed0ddcdae9..3903d3efad07 100644 --- a/lib/datadog_api_client/v1/models/metrics_payload.rb +++ b/lib/datadog_api_client/v1/models/metrics_payload.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The metrics' payload. class MetricsPayload + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A list of time series to submit to Datadog. attr_accessor :series @@ -178,7 +181,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/metrics_query_metadata.rb b/lib/datadog_api_client/v1/models/metrics_query_metadata.rb index 48a41966f875..eb8db59bfff7 100644 --- a/lib/datadog_api_client/v1/models/metrics_query_metadata.rb +++ b/lib/datadog_api_client/v1/models/metrics_query_metadata.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing all metric names returned and their associated metadata. class MetricsQueryMetadata + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Aggregation type. attr_accessor :aggr @@ -321,7 +324,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/metrics_query_response.rb b/lib/datadog_api_client/v1/models/metrics_query_response.rb index 7d76fe1b6280..b233b40166f5 100644 --- a/lib/datadog_api_client/v1/models/metrics_query_response.rb +++ b/lib/datadog_api_client/v1/models/metrics_query_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response Object that includes your query and the list of metrics retrieved. class MetricsQueryResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Message indicating the errors if status is not `ok`. attr_accessor :error @@ -255,7 +258,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/metrics_query_unit.rb b/lib/datadog_api_client/v1/models/metrics_query_unit.rb index 57f490b7ee24..943c9f27b2b0 100644 --- a/lib/datadog_api_client/v1/models/metrics_query_unit.rb +++ b/lib/datadog_api_client/v1/models/metrics_query_unit.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing the metric unit family, scale factor, name, and short name. class MetricsQueryUnit + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Unit family, allows for conversion between units of the same family, for scaling. attr_accessor :family @@ -211,7 +214,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor.rb b/lib/datadog_api_client/v1/models/monitor.rb index c04a81bbd629..c41f125fc65d 100644 --- a/lib/datadog_api_client/v1/models/monitor.rb +++ b/lib/datadog_api_client/v1/models/monitor.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing a monitor. class Monitor + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Timestamp of the monitor creation. attr_accessor :created @@ -355,7 +358,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_device_id.rb b/lib/datadog_api_client/v1/models/monitor_device_id.rb index 0e69e6137fbc..0aa6b53d077f 100644 --- a/lib/datadog_api_client/v1/models/monitor_device_id.rb +++ b/lib/datadog_api_client/v1/models/monitor_device_id.rb @@ -40,8 +40,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = MonitorDeviceID.constants.select { |c| MonitorDeviceID::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #MonitorDeviceID" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/monitor_group_search_response.rb b/lib/datadog_api_client/v1/models/monitor_group_search_response.rb index 6995cb625110..ea01009db476 100644 --- a/lib/datadog_api_client/v1/models/monitor_group_search_response.rb +++ b/lib/datadog_api_client/v1/models/monitor_group_search_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The response of a monitor group search. class MonitorGroupSearchResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :counts # The list of found monitor groups. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_group_search_response_counts.rb b/lib/datadog_api_client/v1/models/monitor_group_search_response_counts.rb index dd214c0e0ad8..65e63e3d5df7 100644 --- a/lib/datadog_api_client/v1/models/monitor_group_search_response_counts.rb +++ b/lib/datadog_api_client/v1/models/monitor_group_search_response_counts.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The counts of monitor groups per different criteria. class MonitorGroupSearchResponseCounts + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Search facets. attr_accessor :status @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_group_search_result.rb b/lib/datadog_api_client/v1/models/monitor_group_search_result.rb index 53db269c9fcb..6b134accdb55 100644 --- a/lib/datadog_api_client/v1/models/monitor_group_search_result.rb +++ b/lib/datadog_api_client/v1/models/monitor_group_search_result.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A single monitor group search result. class MonitorGroupSearchResult + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The name of the group. attr_accessor :group @@ -233,7 +236,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_options.rb b/lib/datadog_api_client/v1/models/monitor_options.rb index 72ceb75a7f6f..208595408814 100644 --- a/lib/datadog_api_client/v1/models/monitor_options.rb +++ b/lib/datadog_api_client/v1/models/monitor_options.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # List of options associated with your monitor. class MonitorOptions + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :aggregation # IDs of the device the Synthetics monitor is running on. @@ -429,7 +432,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_options_aggregation.rb b/lib/datadog_api_client/v1/models/monitor_options_aggregation.rb index 5067ec19175f..5f40ce7b82d1 100644 --- a/lib/datadog_api_client/v1/models/monitor_options_aggregation.rb +++ b/lib/datadog_api_client/v1/models/monitor_options_aggregation.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Type of aggregation performed in the monitor query. class MonitorOptionsAggregation + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Group to break down the monitor on. attr_accessor :group_by @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_overall_states.rb b/lib/datadog_api_client/v1/models/monitor_overall_states.rb index 15d4ccb54dc9..46ccc057df2f 100644 --- a/lib/datadog_api_client/v1/models/monitor_overall_states.rb +++ b/lib/datadog_api_client/v1/models/monitor_overall_states.rb @@ -38,8 +38,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = MonitorOverallStates.constants.select { |c| MonitorOverallStates::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #MonitorOverallStates" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/monitor_search_response.rb b/lib/datadog_api_client/v1/models/monitor_search_response.rb index dc268d8d25f8..c224dafa822f 100644 --- a/lib/datadog_api_client/v1/models/monitor_search_response.rb +++ b/lib/datadog_api_client/v1/models/monitor_search_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The response form a monitor search. class MonitorSearchResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :counts attr_accessor :metadata @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_search_response_counts.rb b/lib/datadog_api_client/v1/models/monitor_search_response_counts.rb index b0afc6f63ad5..b65bff474fad 100644 --- a/lib/datadog_api_client/v1/models/monitor_search_response_counts.rb +++ b/lib/datadog_api_client/v1/models/monitor_search_response_counts.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The counts of monitors per different criteria. class MonitorSearchResponseCounts + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Search facets. attr_accessor :muted @@ -209,7 +212,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_search_response_metadata.rb b/lib/datadog_api_client/v1/models/monitor_search_response_metadata.rb index 6a1012dc7206..9ca09d0c61f0 100644 --- a/lib/datadog_api_client/v1/models/monitor_search_response_metadata.rb +++ b/lib/datadog_api_client/v1/models/monitor_search_response_metadata.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Metadata about the response. class MonitorSearchResponseMetadata + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The page to start paginating from. attr_accessor :page @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_search_result.rb b/lib/datadog_api_client/v1/models/monitor_search_result.rb index ad689e15e555..fcb4e0ae346e 100644 --- a/lib/datadog_api_client/v1/models/monitor_search_result.rb +++ b/lib/datadog_api_client/v1/models/monitor_search_result.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Holds search results. class MonitorSearchResult + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Classification of the monitor. attr_accessor :classification @@ -287,7 +290,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_search_result_notification.rb b/lib/datadog_api_client/v1/models/monitor_search_result_notification.rb index 995c5ea7d700..60702807a7bb 100644 --- a/lib/datadog_api_client/v1/models/monitor_search_result_notification.rb +++ b/lib/datadog_api_client/v1/models/monitor_search_result_notification.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A notification triggered by the monitor. class MonitorSearchResultNotification + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The email address that received the notification. attr_accessor :handle @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_state.rb b/lib/datadog_api_client/v1/models/monitor_state.rb index b6e9b0e5b301..34afae755810 100644 --- a/lib/datadog_api_client/v1/models/monitor_state.rb +++ b/lib/datadog_api_client/v1/models/monitor_state.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Wrapper object with the different monitor states. class MonitorState + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Dictionary where the keys are groups (comma separated lists of tags) and the values are the list of groups your monitor is broken down on. attr_accessor :groups @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_state_group.rb b/lib/datadog_api_client/v1/models/monitor_state_group.rb index a55f0100b236..0dd3cef32d56 100644 --- a/lib/datadog_api_client/v1/models/monitor_state_group.rb +++ b/lib/datadog_api_client/v1/models/monitor_state_group.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Monitor state for a single group. class MonitorStateGroup + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Latest timestamp the monitor was in NO_DATA state. attr_accessor :last_nodata_ts @@ -220,7 +223,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_summary_widget_definition.rb b/lib/datadog_api_client/v1/models/monitor_summary_widget_definition.rb index c67b1ecdc666..455838430b30 100644 --- a/lib/datadog_api_client/v1/models/monitor_summary_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/monitor_summary_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The monitor summary widget displays a summary view of all your Datadog monitors, or a subset based on a query. Only available on FREE layout dashboards. class MonitorSummaryWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :color_preference # The number of monitors to display. @@ -297,7 +300,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_summary_widget_definition_type.rb b/lib/datadog_api_client/v1/models/monitor_summary_widget_definition_type.rb index 5e46d9ba8b2d..368cfb04871d 100644 --- a/lib/datadog_api_client/v1/models/monitor_summary_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/monitor_summary_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = MonitorSummaryWidgetDefinitionType.constants.select { |c| MonitorSummaryWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #MonitorSummaryWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/monitor_threshold_window_options.rb b/lib/datadog_api_client/v1/models/monitor_threshold_window_options.rb index a608d9bb53d8..91840988581a 100644 --- a/lib/datadog_api_client/v1/models/monitor_threshold_window_options.rb +++ b/lib/datadog_api_client/v1/models/monitor_threshold_window_options.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Alerting time window options. class MonitorThresholdWindowOptions + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Describes how long an anomalous metric must be normal before the alert recovers. attr_accessor :recovery_window @@ -183,7 +186,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_thresholds.rb b/lib/datadog_api_client/v1/models/monitor_thresholds.rb index b63e6586043a..0aec071f2b1c 100644 --- a/lib/datadog_api_client/v1/models/monitor_thresholds.rb +++ b/lib/datadog_api_client/v1/models/monitor_thresholds.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # List of the different monitor threshold available. class MonitorThresholds + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The monitor `CRITICAL` threshold. attr_accessor :critical @@ -226,7 +229,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/monitor_type.rb b/lib/datadog_api_client/v1/models/monitor_type.rb index 4fe6f5838911..7887ace89ce3 100644 --- a/lib/datadog_api_client/v1/models/monitor_type.rb +++ b/lib/datadog_api_client/v1/models/monitor_type.rb @@ -43,8 +43,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = MonitorType.constants.select { |c| MonitorType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #MonitorType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/monitor_update_request.rb b/lib/datadog_api_client/v1/models/monitor_update_request.rb index 6d087460a110..50b045e22062 100644 --- a/lib/datadog_api_client/v1/models/monitor_update_request.rb +++ b/lib/datadog_api_client/v1/models/monitor_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing a monitor update request. class MonitorUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Timestamp of the monitor creation. attr_accessor :created @@ -345,7 +348,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/note_widget_definition.rb b/lib/datadog_api_client/v1/models/note_widget_definition.rb index ee1c79fe6e68..3fdc9ed68bf6 100644 --- a/lib/datadog_api_client/v1/models/note_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/note_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The notes and links widget is similar to free text widget, but allows for more formatting options. class NoteWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Background color of the note. attr_accessor :background_color @@ -271,7 +274,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/note_widget_definition_type.rb b/lib/datadog_api_client/v1/models/note_widget_definition_type.rb index 4b99d15eee8c..7cb7a551f72e 100644 --- a/lib/datadog_api_client/v1/models/note_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/note_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = NoteWidgetDefinitionType.constants.select { |c| NoteWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #NoteWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/notebook_absolute_time.rb b/lib/datadog_api_client/v1/models/notebook_absolute_time.rb index d3cda1d68915..3daddd842720 100644 --- a/lib/datadog_api_client/v1/models/notebook_absolute_time.rb +++ b/lib/datadog_api_client/v1/models/notebook_absolute_time.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Absolute timeframe. class NotebookAbsoluteTime + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The end time. attr_accessor :_end @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_author.rb b/lib/datadog_api_client/v1/models/notebook_author.rb index a5a207fe3635..e2729a2302ff 100644 --- a/lib/datadog_api_client/v1/models/notebook_author.rb +++ b/lib/datadog_api_client/v1/models/notebook_author.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Attributes of user object returned by the API. class NotebookAuthor + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation time of the user. attr_accessor :created_at @@ -251,7 +254,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_cell_create_request.rb b/lib/datadog_api_client/v1/models/notebook_cell_create_request.rb index b4ba70947a92..972166e3979b 100644 --- a/lib/datadog_api_client/v1/models/notebook_cell_create_request.rb +++ b/lib/datadog_api_client/v1/models/notebook_cell_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The description of a notebook cell create request. class NotebookCellCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :type @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_cell_create_request_attributes.rb b/lib/datadog_api_client/v1/models/notebook_cell_create_request_attributes.rb index be6da025baba..7f61b8d55328 100644 --- a/lib/datadog_api_client/v1/models/notebook_cell_create_request_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebook_cell_create_request_attributes.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V1 # The attributes of a notebook cell in create cell request. Valid cell types are `markdown`, `timeseries`, `toplist`, `heatmap`, `distribution`, `log_stream`. [More information on each graph visualization type.](https://docs.datadoghq.com/dashboards/widgets/) module NotebookCellCreateRequestAttributes class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -47,12 +49,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V1::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v1/models/notebook_cell_resource_type.rb b/lib/datadog_api_client/v1/models/notebook_cell_resource_type.rb index 8146f6a305cb..74f35173cf29 100644 --- a/lib/datadog_api_client/v1/models/notebook_cell_resource_type.rb +++ b/lib/datadog_api_client/v1/models/notebook_cell_resource_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = NotebookCellResourceType.constants.select { |c| NotebookCellResourceType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #NotebookCellResourceType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/notebook_cell_response.rb b/lib/datadog_api_client/v1/models/notebook_cell_response.rb index 85ebfbfa0802..bddd9f851032 100644 --- a/lib/datadog_api_client/v1/models/notebook_cell_response.rb +++ b/lib/datadog_api_client/v1/models/notebook_cell_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The description of a notebook cell response. class NotebookCellResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # Notebook cell ID. @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_cell_response_attributes.rb b/lib/datadog_api_client/v1/models/notebook_cell_response_attributes.rb index 8dd4868c16be..6c1d76d1cd3a 100644 --- a/lib/datadog_api_client/v1/models/notebook_cell_response_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebook_cell_response_attributes.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V1 # The attributes of a notebook cell response. Valid cell types are `markdown`, `timeseries`, `toplist`, `heatmap`, `distribution`, `log_stream`. [More information on each graph visualization type.](https://docs.datadoghq.com/dashboards/widgets/) module NotebookCellResponseAttributes class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -47,12 +49,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V1::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v1/models/notebook_cell_time.rb b/lib/datadog_api_client/v1/models/notebook_cell_time.rb index 0e50d04aa3b8..7307e32414ba 100644 --- a/lib/datadog_api_client/v1/models/notebook_cell_time.rb +++ b/lib/datadog_api_client/v1/models/notebook_cell_time.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V1 # Timeframe for the notebook cell. When 'null', the notebook global time is used. module NotebookCellTime class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -43,12 +45,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V1::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v1/models/notebook_cell_update_request.rb b/lib/datadog_api_client/v1/models/notebook_cell_update_request.rb index a23022bce1da..ba9e5d666587 100644 --- a/lib/datadog_api_client/v1/models/notebook_cell_update_request.rb +++ b/lib/datadog_api_client/v1/models/notebook_cell_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The description of a notebook cell update request. class NotebookCellUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # Notebook cell ID. @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_cell_update_request_attributes.rb b/lib/datadog_api_client/v1/models/notebook_cell_update_request_attributes.rb index 5281ce0e1a7a..cb8b060e6a7d 100644 --- a/lib/datadog_api_client/v1/models/notebook_cell_update_request_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebook_cell_update_request_attributes.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V1 # The attributes of a notebook cell in update cell request. Valid cell types are `markdown`, `timeseries`, `toplist`, `heatmap`, `distribution`, `log_stream`. [More information on each graph visualization type.](https://docs.datadoghq.com/dashboards/widgets/) module NotebookCellUpdateRequestAttributes class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -47,12 +49,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V1::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v1/models/notebook_create_data.rb b/lib/datadog_api_client/v1/models/notebook_create_data.rb index b3892e7e817e..7dd7040ca7b7 100644 --- a/lib/datadog_api_client/v1/models/notebook_create_data.rb +++ b/lib/datadog_api_client/v1/models/notebook_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The data for a notebook create request. class NotebookCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :type @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_create_data_attributes.rb b/lib/datadog_api_client/v1/models/notebook_create_data_attributes.rb index b163494664d0..1439b0b3388a 100644 --- a/lib/datadog_api_client/v1/models/notebook_create_data_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebook_create_data_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The data attributes of a notebook. class NotebookCreateDataAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of cells to display in the notebook. attr_accessor :cells @@ -246,7 +249,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_create_request.rb b/lib/datadog_api_client/v1/models/notebook_create_request.rb index 343adde1797b..fdf03027be0a 100644 --- a/lib/datadog_api_client/v1/models/notebook_create_request.rb +++ b/lib/datadog_api_client/v1/models/notebook_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The description of a notebook create request. class NotebookCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_distribution_cell_attributes.rb b/lib/datadog_api_client/v1/models/notebook_distribution_cell_attributes.rb index d62202b47b0a..5e4a65810293 100644 --- a/lib/datadog_api_client/v1/models/notebook_distribution_cell_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebook_distribution_cell_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The attributes of a notebook `distribution` cell. class NotebookDistributionCellAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :definition attr_accessor :graph_size @@ -203,7 +206,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_global_time.rb b/lib/datadog_api_client/v1/models/notebook_global_time.rb index e156788bb8d5..bec68ad16f16 100644 --- a/lib/datadog_api_client/v1/models/notebook_global_time.rb +++ b/lib/datadog_api_client/v1/models/notebook_global_time.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V1 # Notebook global timeframe. module NotebookGlobalTime class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -43,12 +45,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V1::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v1/models/notebook_graph_size.rb b/lib/datadog_api_client/v1/models/notebook_graph_size.rb index 374bc5949e2f..a48277642333 100644 --- a/lib/datadog_api_client/v1/models/notebook_graph_size.rb +++ b/lib/datadog_api_client/v1/models/notebook_graph_size.rb @@ -36,8 +36,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = NotebookGraphSize.constants.select { |c| NotebookGraphSize::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #NotebookGraphSize" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/notebook_heat_map_cell_attributes.rb b/lib/datadog_api_client/v1/models/notebook_heat_map_cell_attributes.rb index 66fd90fa0f80..8ccd10b4aa7a 100644 --- a/lib/datadog_api_client/v1/models/notebook_heat_map_cell_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebook_heat_map_cell_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The attributes of a notebook `heatmap` cell. class NotebookHeatMapCellAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :definition attr_accessor :graph_size @@ -203,7 +206,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_log_stream_cell_attributes.rb b/lib/datadog_api_client/v1/models/notebook_log_stream_cell_attributes.rb index d8b8bd4ddd92..25bc95c5aa41 100644 --- a/lib/datadog_api_client/v1/models/notebook_log_stream_cell_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebook_log_stream_cell_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The attributes of a notebook `log_stream` cell. class NotebookLogStreamCellAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :definition attr_accessor :graph_size @@ -194,7 +197,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_markdown_cell_attributes.rb b/lib/datadog_api_client/v1/models/notebook_markdown_cell_attributes.rb index 6cf94dc2e1a7..0f4fc1631af7 100644 --- a/lib/datadog_api_client/v1/models/notebook_markdown_cell_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebook_markdown_cell_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The attributes of a notebook `markdown` cell. class NotebookMarkdownCellAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :definition # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_markdown_cell_definition.rb b/lib/datadog_api_client/v1/models/notebook_markdown_cell_definition.rb index dc96d85ceb55..9cfac8f8ca55 100644 --- a/lib/datadog_api_client/v1/models/notebook_markdown_cell_definition.rb +++ b/lib/datadog_api_client/v1/models/notebook_markdown_cell_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Text in a notebook is formatted with [Markdown](https://daringfireball.net/projects/markdown/), which enables the use of headings, subheadings, links, images, lists, and code blocks. class NotebookMarkdownCellDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The markdown content. attr_accessor :text @@ -192,7 +195,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_markdown_cell_definition_type.rb b/lib/datadog_api_client/v1/models/notebook_markdown_cell_definition_type.rb index 1210d278aa94..ea18ce8b1e19 100644 --- a/lib/datadog_api_client/v1/models/notebook_markdown_cell_definition_type.rb +++ b/lib/datadog_api_client/v1/models/notebook_markdown_cell_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = NotebookMarkdownCellDefinitionType.constants.select { |c| NotebookMarkdownCellDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #NotebookMarkdownCellDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/notebook_relative_time.rb b/lib/datadog_api_client/v1/models/notebook_relative_time.rb index ddbb72785998..746c3eec5f99 100644 --- a/lib/datadog_api_client/v1/models/notebook_relative_time.rb +++ b/lib/datadog_api_client/v1/models/notebook_relative_time.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Relative timeframe. class NotebookRelativeTime + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :live_span # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_resource_type.rb b/lib/datadog_api_client/v1/models/notebook_resource_type.rb index fa02589b4e34..0708f3f843a2 100644 --- a/lib/datadog_api_client/v1/models/notebook_resource_type.rb +++ b/lib/datadog_api_client/v1/models/notebook_resource_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = NotebookResourceType.constants.select { |c| NotebookResourceType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #NotebookResourceType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/notebook_response.rb b/lib/datadog_api_client/v1/models/notebook_response.rb index d713a1e2183a..805bd0450a28 100644 --- a/lib/datadog_api_client/v1/models/notebook_response.rb +++ b/lib/datadog_api_client/v1/models/notebook_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The description of a notebook response. class NotebookResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_response_data.rb b/lib/datadog_api_client/v1/models/notebook_response_data.rb index af3c36a73bfe..3e0bcf81d4ac 100644 --- a/lib/datadog_api_client/v1/models/notebook_response_data.rb +++ b/lib/datadog_api_client/v1/models/notebook_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The data for a notebook. class NotebookResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # Unique notebook ID, assigned when you create the notebook. @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_response_data_attributes.rb b/lib/datadog_api_client/v1/models/notebook_response_data_attributes.rb index a694ace4d604..1de78b082b0b 100644 --- a/lib/datadog_api_client/v1/models/notebook_response_data_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebook_response_data_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The attributes of a notebook. class NotebookResponseDataAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :author # List of cells to display in the notebook. @@ -275,7 +278,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_split_by.rb b/lib/datadog_api_client/v1/models/notebook_split_by.rb index 4e82c1ddf276..88504a3f9b7f 100644 --- a/lib/datadog_api_client/v1/models/notebook_split_by.rb +++ b/lib/datadog_api_client/v1/models/notebook_split_by.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing how to split the graph to display multiple visualizations per request. class NotebookSplitBy + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Keys to split on. attr_accessor :keys @@ -195,7 +198,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_status.rb b/lib/datadog_api_client/v1/models/notebook_status.rb index d2e6131fe21e..3b6211e4e843 100644 --- a/lib/datadog_api_client/v1/models/notebook_status.rb +++ b/lib/datadog_api_client/v1/models/notebook_status.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = NotebookStatus.constants.select { |c| NotebookStatus::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #NotebookStatus" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/notebook_timeseries_cell_attributes.rb b/lib/datadog_api_client/v1/models/notebook_timeseries_cell_attributes.rb index 8b81f67affeb..40c9a831f853 100644 --- a/lib/datadog_api_client/v1/models/notebook_timeseries_cell_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebook_timeseries_cell_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The attributes of a notebook `timeseries` cell. class NotebookTimeseriesCellAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :definition attr_accessor :graph_size @@ -203,7 +206,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_toplist_cell_attributes.rb b/lib/datadog_api_client/v1/models/notebook_toplist_cell_attributes.rb index 162573a45f09..0e6ea67cece0 100644 --- a/lib/datadog_api_client/v1/models/notebook_toplist_cell_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebook_toplist_cell_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The attributes of a notebook `toplist` cell. class NotebookToplistCellAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :definition attr_accessor :graph_size @@ -203,7 +206,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_update_cell.rb b/lib/datadog_api_client/v1/models/notebook_update_cell.rb index 6dfd1323d372..a4360ce0a995 100644 --- a/lib/datadog_api_client/v1/models/notebook_update_cell.rb +++ b/lib/datadog_api_client/v1/models/notebook_update_cell.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V1 # Updating a notebook can either insert new cell(s) or update existing cell(s) by including the cell `id`. To delete existing cell(s), simply omit it from the list of cells. module NotebookUpdateCell class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -43,12 +45,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V1::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v1/models/notebook_update_data.rb b/lib/datadog_api_client/v1/models/notebook_update_data.rb index d613a5ee6f12..9fc6fd2dee15 100644 --- a/lib/datadog_api_client/v1/models/notebook_update_data.rb +++ b/lib/datadog_api_client/v1/models/notebook_update_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The data for a notebook update request. class NotebookUpdateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :type @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_update_data_attributes.rb b/lib/datadog_api_client/v1/models/notebook_update_data_attributes.rb index 895398156f00..98fdba26c7fe 100644 --- a/lib/datadog_api_client/v1/models/notebook_update_data_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebook_update_data_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The data attributes of a notebook. class NotebookUpdateDataAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of cells to display in the notebook. attr_accessor :cells @@ -246,7 +249,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebook_update_request.rb b/lib/datadog_api_client/v1/models/notebook_update_request.rb index 86d958f4148f..7fa5155e1add 100644 --- a/lib/datadog_api_client/v1/models/notebook_update_request.rb +++ b/lib/datadog_api_client/v1/models/notebook_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The description of a notebook update request. class NotebookUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebooks_response.rb b/lib/datadog_api_client/v1/models/notebooks_response.rb index 38136f7d7a9b..088040685582 100644 --- a/lib/datadog_api_client/v1/models/notebooks_response.rb +++ b/lib/datadog_api_client/v1/models/notebooks_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Notebooks get all response. class NotebooksResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of notebook definitions. attr_accessor :data @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebooks_response_data.rb b/lib/datadog_api_client/v1/models/notebooks_response_data.rb index e6304c0b0471..13a75aa5a584 100644 --- a/lib/datadog_api_client/v1/models/notebooks_response_data.rb +++ b/lib/datadog_api_client/v1/models/notebooks_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The data for a notebook in get all response. class NotebooksResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # Unique notebook ID, assigned when you create the notebook. @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebooks_response_data_attributes.rb b/lib/datadog_api_client/v1/models/notebooks_response_data_attributes.rb index 389e6851b50c..29cd489feee2 100644 --- a/lib/datadog_api_client/v1/models/notebooks_response_data_attributes.rb +++ b/lib/datadog_api_client/v1/models/notebooks_response_data_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The attributes of a notebook in get all response. class NotebooksResponseDataAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :author # List of cells to display in the notebook. @@ -265,7 +268,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebooks_response_meta.rb b/lib/datadog_api_client/v1/models/notebooks_response_meta.rb index 5f98a8ac9730..1641ca7d50e5 100644 --- a/lib/datadog_api_client/v1/models/notebooks_response_meta.rb +++ b/lib/datadog_api_client/v1/models/notebooks_response_meta.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Metadata returned by the API. class NotebooksResponseMeta + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :page # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/notebooks_response_page.rb b/lib/datadog_api_client/v1/models/notebooks_response_page.rb index 53aee2ddc546..7554aebca329 100644 --- a/lib/datadog_api_client/v1/models/notebooks_response_page.rb +++ b/lib/datadog_api_client/v1/models/notebooks_response_page.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Pagination metadata returned by the API. class NotebooksResponsePage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The total number of notebooks that would be returned if the request was not filtered by `start` and `count` parameters. attr_accessor :total_count @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/organization.rb b/lib/datadog_api_client/v1/models/organization.rb index 8c01cf86a568..569d96d48c40 100644 --- a/lib/datadog_api_client/v1/models/organization.rb +++ b/lib/datadog_api_client/v1/models/organization.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Create, edit, and manage organizations. class Organization + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :billing # Date of the organization creation. @@ -234,7 +237,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/organization_billing.rb b/lib/datadog_api_client/v1/models/organization_billing.rb index dc97f446f502..0ed0d2890f5a 100644 --- a/lib/datadog_api_client/v1/models/organization_billing.rb +++ b/lib/datadog_api_client/v1/models/organization_billing.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A JSON array of billing type. class OrganizationBilling + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The type of billing. Only `parent_billing` is supported. attr_accessor :type @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/organization_create_body.rb b/lib/datadog_api_client/v1/models/organization_create_body.rb index 4565da963a5b..8c3f3d440bca 100644 --- a/lib/datadog_api_client/v1/models/organization_create_body.rb +++ b/lib/datadog_api_client/v1/models/organization_create_body.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing an organization to create. class OrganizationCreateBody + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :billing # The name of the new child-organization, limited to 32 characters. @@ -204,7 +207,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/organization_create_response.rb b/lib/datadog_api_client/v1/models/organization_create_response.rb index 927702bebbc3..2ed556dd6f13 100644 --- a/lib/datadog_api_client/v1/models/organization_create_response.rb +++ b/lib/datadog_api_client/v1/models/organization_create_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response object for an organization creation. class OrganizationCreateResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :api_key attr_accessor :application_key @@ -197,7 +200,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/organization_list_response.rb b/lib/datadog_api_client/v1/models/organization_list_response.rb index 2c432e14a2a6..3d21f5aa1c47 100644 --- a/lib/datadog_api_client/v1/models/organization_list_response.rb +++ b/lib/datadog_api_client/v1/models/organization_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response with the list of organizations. class OrganizationListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of organization objects. attr_accessor :orgs @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/organization_response.rb b/lib/datadog_api_client/v1/models/organization_response.rb index cd5d2fedb87e..95d3346c4341 100644 --- a/lib/datadog_api_client/v1/models/organization_response.rb +++ b/lib/datadog_api_client/v1/models/organization_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response with an organization. class OrganizationResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :org # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/organization_settings.rb b/lib/datadog_api_client/v1/models/organization_settings.rb index 8e017484d39e..6b66a0404201 100644 --- a/lib/datadog_api_client/v1/models/organization_settings.rb +++ b/lib/datadog_api_client/v1/models/organization_settings.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A JSON array of settings. class OrganizationSettings + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not the organization users can share widgets outside of Datadog. attr_accessor :private_widget_share @@ -258,7 +261,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/organization_settings_saml.rb b/lib/datadog_api_client/v1/models/organization_settings_saml.rb index 85cdbf168b77..85a5e2a882fd 100644 --- a/lib/datadog_api_client/v1/models/organization_settings_saml.rb +++ b/lib/datadog_api_client/v1/models/organization_settings_saml.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Set the boolean property enabled to enable or disable single sign on with SAML. See the SAML documentation for more information about all SAML settings. class OrganizationSettingsSaml + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not SAML is enabled for this organization. attr_accessor :enabled @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/organization_settings_saml_autocreate_users_domains.rb b/lib/datadog_api_client/v1/models/organization_settings_saml_autocreate_users_domains.rb index 455504986df8..095033004852 100644 --- a/lib/datadog_api_client/v1/models/organization_settings_saml_autocreate_users_domains.rb +++ b/lib/datadog_api_client/v1/models/organization_settings_saml_autocreate_users_domains.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Has two properties, `enabled` (boolean) and `domains`, which is a list of domains without the @ symbol. class OrganizationSettingsSamlAutocreateUsersDomains + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of domains where the SAML automated user creation is enabled. attr_accessor :domains @@ -183,7 +186,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/organization_settings_saml_idp_initiated_login.rb b/lib/datadog_api_client/v1/models/organization_settings_saml_idp_initiated_login.rb index 23c0a9186988..2397e3c04003 100644 --- a/lib/datadog_api_client/v1/models/organization_settings_saml_idp_initiated_login.rb +++ b/lib/datadog_api_client/v1/models/organization_settings_saml_idp_initiated_login.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Has one property enabled (boolean). class OrganizationSettingsSamlIdpInitiatedLogin + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether SAML IdP initiated login is enabled, learn more in the [SAML documentation](https://docs.datadoghq.com/account_management/saml/#idp-initiated-login). attr_accessor :enabled @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/organization_settings_saml_strict_mode.rb b/lib/datadog_api_client/v1/models/organization_settings_saml_strict_mode.rb index 45af53836aaa..bbef373d5e01 100644 --- a/lib/datadog_api_client/v1/models/organization_settings_saml_strict_mode.rb +++ b/lib/datadog_api_client/v1/models/organization_settings_saml_strict_mode.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Has one property enabled (boolean). class OrganizationSettingsSamlStrictMode + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether or not the SAML strict mode is enabled. If true, all users must log in with SAML. Learn more on the [SAML Strict documentation](https://docs.datadoghq.com/account_management/saml/#saml-strict). attr_accessor :enabled @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/organization_subscription.rb b/lib/datadog_api_client/v1/models/organization_subscription.rb index 220f8ec532ce..c36bda4697c0 100644 --- a/lib/datadog_api_client/v1/models/organization_subscription.rb +++ b/lib/datadog_api_client/v1/models/organization_subscription.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Subscription definition. class OrganizationSubscription + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The subscription type. Types available are `trial`, `free`, and `pro`. attr_accessor :type @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/pager_duty_service.rb b/lib/datadog_api_client/v1/models/pager_duty_service.rb index 0402eb4193cd..267083c60c84 100644 --- a/lib/datadog_api_client/v1/models/pager_duty_service.rb +++ b/lib/datadog_api_client/v1/models/pager_duty_service.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The PagerDuty service that is available for integration with Datadog. class PagerDutyService + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Your service key in PagerDuty. attr_accessor :service_key @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/pager_duty_service_key.rb b/lib/datadog_api_client/v1/models/pager_duty_service_key.rb index 3adfe249da4b..e69678ec9e45 100644 --- a/lib/datadog_api_client/v1/models/pager_duty_service_key.rb +++ b/lib/datadog_api_client/v1/models/pager_duty_service_key.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # PagerDuty service object key. class PagerDutyServiceKey + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Your service key in PagerDuty. attr_accessor :service_key @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/pager_duty_service_name.rb b/lib/datadog_api_client/v1/models/pager_duty_service_name.rb index 74e456076bc1..57f0be2f2063 100644 --- a/lib/datadog_api_client/v1/models/pager_duty_service_name.rb +++ b/lib/datadog_api_client/v1/models/pager_duty_service_name.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # PagerDuty service object name. class PagerDutyServiceName + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Your service name associated service key in PagerDuty. attr_accessor :service_name @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/pagination.rb b/lib/datadog_api_client/v1/models/pagination.rb index 3d8f7321dc61..53ad93f4468e 100644 --- a/lib/datadog_api_client/v1/models/pagination.rb +++ b/lib/datadog_api_client/v1/models/pagination.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Pagination object. class Pagination + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Total count. attr_accessor :total_count @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/process_query_definition.rb b/lib/datadog_api_client/v1/models/process_query_definition.rb index a9c20c21e1b9..fb61c533df6b 100644 --- a/lib/datadog_api_client/v1/models/process_query_definition.rb +++ b/lib/datadog_api_client/v1/models/process_query_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The process query to use in the widget. class ProcessQueryDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of processes. attr_accessor :filter_by @@ -223,7 +226,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/query_sort_order.rb b/lib/datadog_api_client/v1/models/query_sort_order.rb index 6a8dbeaf284a..10cab97676dd 100644 --- a/lib/datadog_api_client/v1/models/query_sort_order.rb +++ b/lib/datadog_api_client/v1/models/query_sort_order.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = QuerySortOrder.constants.select { |c| QuerySortOrder::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #QuerySortOrder" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/query_value_widget_definition.rb b/lib/datadog_api_client/v1/models/query_value_widget_definition.rb index b017a6a02a0f..e50ded5182ee 100644 --- a/lib/datadog_api_client/v1/models/query_value_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/query_value_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Query values display the current value of a given metric, APM, or log query. class QueryValueWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Whether to use auto-scaling or not. attr_accessor :autoscale @@ -311,7 +314,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/query_value_widget_definition_type.rb b/lib/datadog_api_client/v1/models/query_value_widget_definition_type.rb index cb9a614de914..8ff6726641b4 100644 --- a/lib/datadog_api_client/v1/models/query_value_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/query_value_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = QueryValueWidgetDefinitionType.constants.select { |c| QueryValueWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #QueryValueWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/query_value_widget_request.rb b/lib/datadog_api_client/v1/models/query_value_widget_request.rb index 417a5e54de43..9289f252589c 100644 --- a/lib/datadog_api_client/v1/models/query_value_widget_request.rb +++ b/lib/datadog_api_client/v1/models/query_value_widget_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Updated query value widget. class QueryValueWidgetRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :aggregator attr_accessor :apm_query @@ -306,7 +309,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/response_meta_attributes.rb b/lib/datadog_api_client/v1/models/response_meta_attributes.rb index 28e5925c92ca..153b44989f9c 100644 --- a/lib/datadog_api_client/v1/models/response_meta_attributes.rb +++ b/lib/datadog_api_client/v1/models/response_meta_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing meta attributes of response. class ResponseMetaAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :page # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/scatter_plot_request.rb b/lib/datadog_api_client/v1/models/scatter_plot_request.rb index f902776e2770..786466842774 100644 --- a/lib/datadog_api_client/v1/models/scatter_plot_request.rb +++ b/lib/datadog_api_client/v1/models/scatter_plot_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Updated scatter plot. class ScatterPlotRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :aggregator attr_accessor :apm_query @@ -252,7 +255,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/scatter_plot_widget_definition.rb b/lib/datadog_api_client/v1/models/scatter_plot_widget_definition.rb index a15d1d00f620..623e58cd3eb8 100644 --- a/lib/datadog_api_client/v1/models/scatter_plot_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/scatter_plot_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The scatter plot visualization allows you to graph a chosen scope over two different metrics with their respective aggregation. class ScatterPlotWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of groups used for colors. attr_accessor :color_by_groups @@ -271,7 +274,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/scatter_plot_widget_definition_requests.rb b/lib/datadog_api_client/v1/models/scatter_plot_widget_definition_requests.rb index 5fdc71479761..353e70090dcd 100644 --- a/lib/datadog_api_client/v1/models/scatter_plot_widget_definition_requests.rb +++ b/lib/datadog_api_client/v1/models/scatter_plot_widget_definition_requests.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Widget definition. class ScatterPlotWidgetDefinitionRequests + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :x attr_accessor :y @@ -189,7 +192,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/scatter_plot_widget_definition_type.rb b/lib/datadog_api_client/v1/models/scatter_plot_widget_definition_type.rb index fd9ba33f111e..87da513ca97b 100644 --- a/lib/datadog_api_client/v1/models/scatter_plot_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/scatter_plot_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ScatterPlotWidgetDefinitionType.constants.select { |c| ScatterPlotWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ScatterPlotWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/scatterplot_widget_aggregator.rb b/lib/datadog_api_client/v1/models/scatterplot_widget_aggregator.rb index ef928ebc5efd..d6921b887f23 100644 --- a/lib/datadog_api_client/v1/models/scatterplot_widget_aggregator.rb +++ b/lib/datadog_api_client/v1/models/scatterplot_widget_aggregator.rb @@ -36,8 +36,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ScatterplotWidgetAggregator.constants.select { |c| ScatterplotWidgetAggregator::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ScatterplotWidgetAggregator" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/series.rb b/lib/datadog_api_client/v1/models/series.rb index e0fa93b74342..3d32f0af99c2 100644 --- a/lib/datadog_api_client/v1/models/series.rb +++ b/lib/datadog_api_client/v1/models/series.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A metric to submit to Datadog. See [Datadog metrics](https://docs.datadoghq.com/developers/metrics/#custom-metrics-properties). class Series + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The name of the host that produced the metric. attr_accessor :host @@ -238,7 +241,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/service_check.rb b/lib/datadog_api_client/v1/models/service_check.rb index c7e1c30a323a..b264d4496577 100644 --- a/lib/datadog_api_client/v1/models/service_check.rb +++ b/lib/datadog_api_client/v1/models/service_check.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An object containing service check and status. class ServiceCheck + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The check. attr_accessor :check @@ -242,7 +245,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/service_check_status.rb b/lib/datadog_api_client/v1/models/service_check_status.rb index db38721ffaab..75f2771dd120 100644 --- a/lib/datadog_api_client/v1/models/service_check_status.rb +++ b/lib/datadog_api_client/v1/models/service_check_status.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ServiceCheckStatus.constants.select { |c| ServiceCheckStatus::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ServiceCheckStatus" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/service_level_objective.rb b/lib/datadog_api_client/v1/models/service_level_objective.rb index 87a74b7e64f6..6df2fe04f5d4 100644 --- a/lib/datadog_api_client/v1/models/service_level_objective.rb +++ b/lib/datadog_api_client/v1/models/service_level_objective.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A service level objective object includes a service level indicator, thresholds for one or more timeframes, and metadata (`name`, `description`, `tags`, etc.). class ServiceLevelObjective + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation timestamp (UNIX time in seconds) Always included in service level objective responses. attr_accessor :created_at @@ -314,7 +317,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/service_level_objective_query.rb b/lib/datadog_api_client/v1/models/service_level_objective_query.rb index 31b176bbb9ac..37f3ff0fde90 100644 --- a/lib/datadog_api_client/v1/models/service_level_objective_query.rb +++ b/lib/datadog_api_client/v1/models/service_level_objective_query.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A metric SLI query. **Required if type is `metric`**. Note that Datadog only allows the sum by aggregator to be used because this will sum up all request counts instead of averaging them, or taking the max or min of all of those requests. class ServiceLevelObjectiveQuery + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A Datadog metric query for total (valid) events. attr_accessor :denominator @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/service_level_objective_request.rb b/lib/datadog_api_client/v1/models/service_level_objective_request.rb index 10389e35ee10..eb03e9152454 100644 --- a/lib/datadog_api_client/v1/models/service_level_objective_request.rb +++ b/lib/datadog_api_client/v1/models/service_level_objective_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A service level objective object includes a service level indicator, thresholds for one or more timeframes, and metadata (`name`, `description`, `tags`, etc.). class ServiceLevelObjectiveRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A user-defined description of the service level objective. Always included in service level objective responses (but may be `null`). Optional in create/update requests. attr_accessor :description @@ -263,7 +266,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/service_map_widget_definition.rb b/lib/datadog_api_client/v1/models/service_map_widget_definition.rb index 0767bdc32de0..c1bb16ad1027 100644 --- a/lib/datadog_api_client/v1/models/service_map_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/service_map_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # This widget displays a map of a service to all of the services that call it, and all of the services that it calls. class ServiceMapWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of custom links. attr_accessor :custom_links @@ -269,7 +272,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/service_map_widget_definition_type.rb b/lib/datadog_api_client/v1/models/service_map_widget_definition_type.rb index 1a24d7ead4ab..c1562ae2e0c0 100644 --- a/lib/datadog_api_client/v1/models/service_map_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/service_map_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ServiceMapWidgetDefinitionType.constants.select { |c| ServiceMapWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ServiceMapWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/service_summary_widget_definition.rb b/lib/datadog_api_client/v1/models/service_summary_widget_definition.rb index 4981251ce54e..82f77d3e50b2 100644 --- a/lib/datadog_api_client/v1/models/service_summary_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/service_summary_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The service summary displays the graphs of a chosen service in your screenboard. Only available on FREE layout dashboards. class ServiceSummaryWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :display_format # APM environment. @@ -338,7 +341,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/service_summary_widget_definition_type.rb b/lib/datadog_api_client/v1/models/service_summary_widget_definition_type.rb index 0886d472adba..2865e35962a6 100644 --- a/lib/datadog_api_client/v1/models/service_summary_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/service_summary_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ServiceSummaryWidgetDefinitionType.constants.select { |c| ServiceSummaryWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ServiceSummaryWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/slack_integration_channel.rb b/lib/datadog_api_client/v1/models/slack_integration_channel.rb index 537edf4ba299..4c84b2124892 100644 --- a/lib/datadog_api_client/v1/models/slack_integration_channel.rb +++ b/lib/datadog_api_client/v1/models/slack_integration_channel.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The Slack channel configuration. class SlackIntegrationChannel + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :display # Your channel name. @@ -180,7 +183,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slack_integration_channel_display.rb b/lib/datadog_api_client/v1/models/slack_integration_channel_display.rb index 1039297da7a5..896c94ec0065 100644 --- a/lib/datadog_api_client/v1/models/slack_integration_channel_display.rb +++ b/lib/datadog_api_client/v1/models/slack_integration_channel_display.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Configuration options for what is shown in an alert event message. class SlackIntegrationChannelDisplay + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Show the main body of the alert event. attr_accessor :message @@ -209,7 +212,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_bulk_delete_error.rb b/lib/datadog_api_client/v1/models/slo_bulk_delete_error.rb index e197e443bc6c..241568dcc2dd 100644 --- a/lib/datadog_api_client/v1/models/slo_bulk_delete_error.rb +++ b/lib/datadog_api_client/v1/models/slo_bulk_delete_error.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the error. class SLOBulkDeleteError + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The ID of the service level objective object associated with this error. attr_accessor :id @@ -205,7 +208,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_bulk_delete_response.rb b/lib/datadog_api_client/v1/models/slo_bulk_delete_response.rb index f7c36146ce76..ac4558e489c4 100644 --- a/lib/datadog_api_client/v1/models/slo_bulk_delete_response.rb +++ b/lib/datadog_api_client/v1/models/slo_bulk_delete_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The bulk partial delete service level objective object endpoint response. This endpoint operates on multiple service level objective objects, so it may be partially successful. In such cases, the \"data\" and \"error\" fields in this response indicate which deletions succeeded and failed. class SLOBulkDeleteResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Array of errors object returned. @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_bulk_delete_response_data.rb b/lib/datadog_api_client/v1/models/slo_bulk_delete_response_data.rb index d5e15389f3d0..e4fa7dabf709 100644 --- a/lib/datadog_api_client/v1/models/slo_bulk_delete_response_data.rb +++ b/lib/datadog_api_client/v1/models/slo_bulk_delete_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An array of service level objective objects. class SLOBulkDeleteResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of service level objective object IDs that indicates which objects that were completely deleted. attr_accessor :deleted @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_correction.rb b/lib/datadog_api_client/v1/models/slo_correction.rb index 78b83465acf5..1c3b948bfe75 100644 --- a/lib/datadog_api_client/v1/models/slo_correction.rb +++ b/lib/datadog_api_client/v1/models/slo_correction.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The response object of a list of SLO corrections class SLOCorrection + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The ID of the SLO correction @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_correction_category.rb b/lib/datadog_api_client/v1/models/slo_correction_category.rb index ed0b066f7d39..8ab8796cdfc6 100644 --- a/lib/datadog_api_client/v1/models/slo_correction_category.rb +++ b/lib/datadog_api_client/v1/models/slo_correction_category.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SLOCorrectionCategory.constants.select { |c| SLOCorrectionCategory::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SLOCorrectionCategory" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/slo_correction_create_data.rb b/lib/datadog_api_client/v1/models/slo_correction_create_data.rb index 419455a99302..346fe0c1d4ae 100644 --- a/lib/datadog_api_client/v1/models/slo_correction_create_data.rb +++ b/lib/datadog_api_client/v1/models/slo_correction_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The data object associated with the SLO correction to be created class SLOCorrectionCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :type @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_correction_create_request.rb b/lib/datadog_api_client/v1/models/slo_correction_create_request.rb index 0404c986dc8d..04858fbc3978 100644 --- a/lib/datadog_api_client/v1/models/slo_correction_create_request.rb +++ b/lib/datadog_api_client/v1/models/slo_correction_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An object that defines a correction to be applied to an SLO class SLOCorrectionCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_correction_create_request_attributes.rb b/lib/datadog_api_client/v1/models/slo_correction_create_request_attributes.rb index 42143697d2fc..e2a97f7d2e2e 100644 --- a/lib/datadog_api_client/v1/models/slo_correction_create_request_attributes.rb +++ b/lib/datadog_api_client/v1/models/slo_correction_create_request_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The attribute object associated with the SLO correction to be created class SLOCorrectionCreateRequestAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :category # Description of the correction being made. @@ -240,7 +243,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_correction_list_response.rb b/lib/datadog_api_client/v1/models/slo_correction_list_response.rb index 8d19e14d6dd0..cce164862efb 100644 --- a/lib/datadog_api_client/v1/models/slo_correction_list_response.rb +++ b/lib/datadog_api_client/v1/models/slo_correction_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A list of SLO correction objects class SLOCorrectionListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The list of of SLO corrections objects attr_accessor :data @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_correction_response.rb b/lib/datadog_api_client/v1/models/slo_correction_response.rb index bfe8f0d36e94..ddd4ff64d6fb 100644 --- a/lib/datadog_api_client/v1/models/slo_correction_response.rb +++ b/lib/datadog_api_client/v1/models/slo_correction_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The response object of an SLO correction class SLOCorrectionResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_correction_response_attributes.rb b/lib/datadog_api_client/v1/models/slo_correction_response_attributes.rb index ecdf7043bd75..ff9b58e1271a 100644 --- a/lib/datadog_api_client/v1/models/slo_correction_response_attributes.rb +++ b/lib/datadog_api_client/v1/models/slo_correction_response_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The attribute object associated with the SLO correction class SLOCorrectionResponseAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :category attr_accessor :creator @@ -229,7 +232,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_correction_type.rb b/lib/datadog_api_client/v1/models/slo_correction_type.rb index 503e2938c12a..2ccaaecf8142 100644 --- a/lib/datadog_api_client/v1/models/slo_correction_type.rb +++ b/lib/datadog_api_client/v1/models/slo_correction_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SLOCorrectionType.constants.select { |c| SLOCorrectionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SLOCorrectionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/slo_correction_update_data.rb b/lib/datadog_api_client/v1/models/slo_correction_update_data.rb index 962180e96e35..c8e2d24be992 100644 --- a/lib/datadog_api_client/v1/models/slo_correction_update_data.rb +++ b/lib/datadog_api_client/v1/models/slo_correction_update_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The data object associated with the SLO correction to be updated class SLOCorrectionUpdateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :type @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_correction_update_request.rb b/lib/datadog_api_client/v1/models/slo_correction_update_request.rb index 8e144aaf95c4..b76454158604 100644 --- a/lib/datadog_api_client/v1/models/slo_correction_update_request.rb +++ b/lib/datadog_api_client/v1/models/slo_correction_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An object that defines a correction to be applied to an SLO class SLOCorrectionUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_correction_update_request_attributes.rb b/lib/datadog_api_client/v1/models/slo_correction_update_request_attributes.rb index 98c3f9cb1562..6ef53de05300 100644 --- a/lib/datadog_api_client/v1/models/slo_correction_update_request_attributes.rb +++ b/lib/datadog_api_client/v1/models/slo_correction_update_request_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The attribute object associated with the SLO correction to be updated class SLOCorrectionUpdateRequestAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :category # Description of the correction being made. @@ -210,7 +213,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_delete_response.rb b/lib/datadog_api_client/v1/models/slo_delete_response.rb index bd2c13ec16c7..5b3738fcd5bd 100644 --- a/lib/datadog_api_client/v1/models/slo_delete_response.rb +++ b/lib/datadog_api_client/v1/models/slo_delete_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A response list of all service level objective deleted. class SLODeleteResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array containing the ID of the deleted service level objective object. attr_accessor :data @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_error_timeframe.rb b/lib/datadog_api_client/v1/models/slo_error_timeframe.rb index 87781423fd1c..09b7cc7b3d73 100644 --- a/lib/datadog_api_client/v1/models/slo_error_timeframe.rb +++ b/lib/datadog_api_client/v1/models/slo_error_timeframe.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SLOErrorTimeframe.constants.select { |c| SLOErrorTimeframe::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SLOErrorTimeframe" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/slo_history_metrics.rb b/lib/datadog_api_client/v1/models/slo_history_metrics.rb index a814540c9a95..15a4598c3f80 100644 --- a/lib/datadog_api_client/v1/models/slo_history_metrics.rb +++ b/lib/datadog_api_client/v1/models/slo_history_metrics.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A `metric` based SLO history response. This is not included in responses for `monitor` based SLOs. class SLOHistoryMetrics + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :denominator # The aggregated query interval for the series data. It's implicit based on the query time window. @@ -276,7 +279,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_history_metrics_series.rb b/lib/datadog_api_client/v1/models/slo_history_metrics_series.rb index 2af0100a0384..c44cf63ff239 100644 --- a/lib/datadog_api_client/v1/models/slo_history_metrics_series.rb +++ b/lib/datadog_api_client/v1/models/slo_history_metrics_series.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A representation of `metric` based SLO time series for the provided queries. This is the same response type from `batch_query` endpoint. class SLOHistoryMetricsSeries + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Count of submitted metrics. attr_accessor :count @@ -222,7 +225,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_history_metrics_series_metadata.rb b/lib/datadog_api_client/v1/models/slo_history_metrics_series_metadata.rb index f06f0706578e..8934c6b2fe0c 100644 --- a/lib/datadog_api_client/v1/models/slo_history_metrics_series_metadata.rb +++ b/lib/datadog_api_client/v1/models/slo_history_metrics_series_metadata.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Query metadata. class SLOHistoryMetricsSeriesMetadata + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Query aggregator function. attr_accessor :aggr @@ -224,7 +227,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_history_metrics_series_metadata_unit.rb b/lib/datadog_api_client/v1/models/slo_history_metrics_series_metadata_unit.rb index 57090437d3b0..c0f3b4618bd3 100644 --- a/lib/datadog_api_client/v1/models/slo_history_metrics_series_metadata_unit.rb +++ b/lib/datadog_api_client/v1/models/slo_history_metrics_series_metadata_unit.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An Object of metric units. class SLOHistoryMetricsSeriesMetadataUnit + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The family of metric unit, for example `bytes` is the family for `kibibyte`, `byte`, and `bit` units. attr_accessor :family @@ -223,7 +226,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_history_response.rb b/lib/datadog_api_client/v1/models/slo_history_response.rb index 5134ef1eeb74..e14967983bca 100644 --- a/lib/datadog_api_client/v1/models/slo_history_response.rb +++ b/lib/datadog_api_client/v1/models/slo_history_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A service level objective history response. class SLOHistoryResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # A list of errors while querying the history data for the service level objective. @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_history_response_data.rb b/lib/datadog_api_client/v1/models/slo_history_response_data.rb index 08f7e259de8f..a8d1c4501d64 100644 --- a/lib/datadog_api_client/v1/models/slo_history_response_data.rb +++ b/lib/datadog_api_client/v1/models/slo_history_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An array of service level objective objects. class SLOHistoryResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The `from` timestamp in epoch seconds. attr_accessor :from_ts @@ -265,7 +268,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_history_response_error.rb b/lib/datadog_api_client/v1/models/slo_history_response_error.rb index 505ef6ab826b..ae57a94d2ab5 100644 --- a/lib/datadog_api_client/v1/models/slo_history_response_error.rb +++ b/lib/datadog_api_client/v1/models/slo_history_response_error.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A service level objective response containing the requested history. class SLOHistoryResponseError + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Human readable error. attr_accessor :error @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_history_sli_data.rb b/lib/datadog_api_client/v1/models/slo_history_sli_data.rb index 2cd3f8704570..281206c1c00d 100644 --- a/lib/datadog_api_client/v1/models/slo_history_sli_data.rb +++ b/lib/datadog_api_client/v1/models/slo_history_sli_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An object that holds an SLI value and its associated data. It can represent an SLO's overall SLI value. This can also represent the SLI value for a specific monitor in multi-monitor SLOs, or a group in grouped SLOs. class SLOHistorySLIData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A mapping of threshold `timeframe` to the remaining error budget. attr_accessor :error_budget_remaining @@ -289,7 +292,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_list_response.rb b/lib/datadog_api_client/v1/models/slo_list_response.rb index 845e1203955e..8bffd37bcc55 100644 --- a/lib/datadog_api_client/v1/models/slo_list_response.rb +++ b/lib/datadog_api_client/v1/models/slo_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A response with one or more service level objective. class SLOListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of service level objective objects. attr_accessor :data @@ -194,7 +197,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_list_response_metadata.rb b/lib/datadog_api_client/v1/models/slo_list_response_metadata.rb index 1bf812bd8202..ff7a1eded623 100644 --- a/lib/datadog_api_client/v1/models/slo_list_response_metadata.rb +++ b/lib/datadog_api_client/v1/models/slo_list_response_metadata.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The metadata object containing additional information about the list of SLOs. class SLOListResponseMetadata + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :page # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_list_response_metadata_page.rb b/lib/datadog_api_client/v1/models/slo_list_response_metadata_page.rb index 866122e00b4b..35be8c3e8a0d 100644 --- a/lib/datadog_api_client/v1/models/slo_list_response_metadata_page.rb +++ b/lib/datadog_api_client/v1/models/slo_list_response_metadata_page.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The object containing information about the pages of the list of SLOs. class SLOListResponseMetadataPage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The total number of resources that could be retrieved ignoring the parameters and filters in the request. attr_accessor :total_count @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_response.rb b/lib/datadog_api_client/v1/models/slo_response.rb index f3bfb25f3c67..12924459a968 100644 --- a/lib/datadog_api_client/v1/models/slo_response.rb +++ b/lib/datadog_api_client/v1/models/slo_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A service level objective response containing a single service level objective. class SLOResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # An array of error messages. Each endpoint documents how/whether this field is used. @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_response_data.rb b/lib/datadog_api_client/v1/models/slo_response_data.rb index 1fc9082fcc65..21eb09e5cefb 100644 --- a/lib/datadog_api_client/v1/models/slo_response_data.rb +++ b/lib/datadog_api_client/v1/models/slo_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A service level objective object includes a service level indicator, thresholds for one or more timeframes, and metadata (`name`, `description`, `tags`, etc.). class SLOResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A list of SLO monitors IDs that reference this SLO. This field is returned only when `with_configured_alert_ids` parameter is true in query. attr_accessor :configured_alert_ids @@ -311,7 +314,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_threshold.rb b/lib/datadog_api_client/v1/models/slo_threshold.rb index 942c02c62781..dbc0b4450518 100644 --- a/lib/datadog_api_client/v1/models/slo_threshold.rb +++ b/lib/datadog_api_client/v1/models/slo_threshold.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # SLO thresholds (target and optionally warning) for a single time window. class SLOThreshold + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The target value for the service level indicator within the corresponding timeframe. attr_accessor :target @@ -220,7 +223,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_timeframe.rb b/lib/datadog_api_client/v1/models/slo_timeframe.rb index de8ba1a08b8b..48cf36a31052 100644 --- a/lib/datadog_api_client/v1/models/slo_timeframe.rb +++ b/lib/datadog_api_client/v1/models/slo_timeframe.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SLOTimeframe.constants.select { |c| SLOTimeframe::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SLOTimeframe" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/slo_type.rb b/lib/datadog_api_client/v1/models/slo_type.rb index e70df231b376..61a80bd81864 100644 --- a/lib/datadog_api_client/v1/models/slo_type.rb +++ b/lib/datadog_api_client/v1/models/slo_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SLOType.constants.select { |c| SLOType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SLOType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/slo_type_numeric.rb b/lib/datadog_api_client/v1/models/slo_type_numeric.rb index 18103cf2e95f..a5cc2fd51fb2 100644 --- a/lib/datadog_api_client/v1/models/slo_type_numeric.rb +++ b/lib/datadog_api_client/v1/models/slo_type_numeric.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SLOTypeNumeric.constants.select { |c| SLOTypeNumeric::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SLOTypeNumeric" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/slo_widget_definition.rb b/lib/datadog_api_client/v1/models/slo_widget_definition.rb index d2bfa4f2aeb3..1a348feeff85 100644 --- a/lib/datadog_api_client/v1/models/slo_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/slo_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Use the SLO and uptime widget to track your SLOs (Service Level Objectives) and uptime on screenboards and timeboards. class SLOWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Defined global time target. attr_accessor :global_time_target @@ -274,7 +277,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/slo_widget_definition_type.rb b/lib/datadog_api_client/v1/models/slo_widget_definition_type.rb index db29cdc49f6e..7b819ce38851 100644 --- a/lib/datadog_api_client/v1/models/slo_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/slo_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SLOWidgetDefinitionType.constants.select { |c| SLOWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SLOWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_api_step.rb b/lib/datadog_api_client/v1/models/synthetics_api_step.rb index d4c949be3689..d0596042a570 100644 --- a/lib/datadog_api_client/v1/models/synthetics_api_step.rb +++ b/lib/datadog_api_client/v1/models/synthetics_api_step.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The steps used in a Synthetics multistep API test. class SyntheticsAPIStep + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Determines whether or not to continue with test if this step fails. attr_accessor :allow_failure @@ -233,7 +236,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_api_step_subtype.rb b/lib/datadog_api_client/v1/models/synthetics_api_step_subtype.rb index e2c25183de6c..571ec0abdcb3 100644 --- a/lib/datadog_api_client/v1/models/synthetics_api_step_subtype.rb +++ b/lib/datadog_api_client/v1/models/synthetics_api_step_subtype.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsAPIStepSubtype.constants.select { |c| SyntheticsAPIStepSubtype::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsAPIStepSubtype" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_api_test.rb b/lib/datadog_api_client/v1/models/synthetics_api_test.rb index bb3dd85075bb..7e3ec5d24f05 100644 --- a/lib/datadog_api_client/v1/models/synthetics_api_test.rb +++ b/lib/datadog_api_client/v1/models/synthetics_api_test.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing details about a Synthetic API test. class SyntheticsAPITest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :config # Array of locations used to run the test. @@ -272,7 +275,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_api_test_config.rb b/lib/datadog_api_client/v1/models/synthetics_api_test_config.rb index 682c3f81fedb..c31aef04ce45 100644 --- a/lib/datadog_api_client/v1/models/synthetics_api_test_config.rb +++ b/lib/datadog_api_client/v1/models/synthetics_api_test_config.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Configuration object for a Synthetic API test. class SyntheticsAPITestConfig + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of assertions used for the test. attr_accessor :assertions @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_api_test_result_data.rb b/lib/datadog_api_client/v1/models/synthetics_api_test_result_data.rb index d5638c6dc0f9..a7d78ec313f2 100644 --- a/lib/datadog_api_client/v1/models/synthetics_api_test_result_data.rb +++ b/lib/datadog_api_client/v1/models/synthetics_api_test_result_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing results for your Synthetic API test. class SyntheticsAPITestResultData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :cert attr_accessor :error_code @@ -261,7 +264,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_api_test_result_full.rb b/lib/datadog_api_client/v1/models/synthetics_api_test_result_full.rb index 2c75d7956898..775715bfbdc2 100644 --- a/lib/datadog_api_client/v1/models/synthetics_api_test_result_full.rb +++ b/lib/datadog_api_client/v1/models/synthetics_api_test_result_full.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object returned describing a API test result. class SyntheticsAPITestResultFull + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :check # When the API test was conducted. @@ -228,7 +231,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_api_test_result_full_check.rb b/lib/datadog_api_client/v1/models/synthetics_api_test_result_full_check.rb index b1f316d3240b..bd69929f00f3 100644 --- a/lib/datadog_api_client/v1/models/synthetics_api_test_result_full_check.rb +++ b/lib/datadog_api_client/v1/models/synthetics_api_test_result_full_check.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the API test configuration. class SyntheticsAPITestResultFullCheck + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :config # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_api_test_result_short.rb b/lib/datadog_api_client/v1/models/synthetics_api_test_result_short.rb index ca5811bc42ef..3aebd4dcafef 100644 --- a/lib/datadog_api_client/v1/models/synthetics_api_test_result_short.rb +++ b/lib/datadog_api_client/v1/models/synthetics_api_test_result_short.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object with the results of a single Synthetic API test. class SyntheticsAPITestResultShort + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Last time the API test was performed. attr_accessor :check_time @@ -209,7 +212,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_api_test_result_short_result.rb b/lib/datadog_api_client/v1/models/synthetics_api_test_result_short_result.rb index 7a1baf0be592..93691def3682 100644 --- a/lib/datadog_api_client/v1/models/synthetics_api_test_result_short_result.rb +++ b/lib/datadog_api_client/v1/models/synthetics_api_test_result_short_result.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Result of the last API test run. class SyntheticsAPITestResultShortResult + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Describes if the test run has passed or failed. attr_accessor :passed @@ -180,7 +183,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_api_test_type.rb b/lib/datadog_api_client/v1/models/synthetics_api_test_type.rb index b2a37b3f0c7a..c4eb4b512e29 100644 --- a/lib/datadog_api_client/v1/models/synthetics_api_test_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_api_test_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsAPITestType.constants.select { |c| SyntheticsAPITestType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsAPITestType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_assertion.rb b/lib/datadog_api_client/v1/models/synthetics_assertion.rb index f6616022d9aa..39bc098e8ddb 100644 --- a/lib/datadog_api_client/v1/models/synthetics_assertion.rb +++ b/lib/datadog_api_client/v1/models/synthetics_assertion.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V1 # Object describing the assertions type, their associated operator, which property they apply, and upon which target. module SyntheticsAssertion class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -43,12 +45,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V1::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_operator.rb b/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_operator.rb index 161a31f54453..5cf01363ce6d 100644 --- a/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_operator.rb +++ b/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_operator.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsAssertionJSONPathOperator.constants.select { |c| SyntheticsAssertionJSONPathOperator::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsAssertionJSONPathOperator" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target.rb b/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target.rb index 6bfd751e9cd5..6fc00fd42d50 100644 --- a/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target.rb +++ b/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An assertion for the `validatesJSONPath` operator. class SyntheticsAssertionJSONPathTarget + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :operator # The associated assertion property. @@ -208,7 +211,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target_target.rb b/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target_target.rb index 768e50a771f7..e04cf1420d53 100644 --- a/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target_target.rb +++ b/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target_target.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Composed target for `validatesJSONPath` operator. class SyntheticsAssertionJSONPathTargetTarget + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The JSON path to assert. attr_accessor :json_path @@ -192,7 +195,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_assertion_operator.rb b/lib/datadog_api_client/v1/models/synthetics_assertion_operator.rb index debd364089a3..efbd75a2e5bb 100644 --- a/lib/datadog_api_client/v1/models/synthetics_assertion_operator.rb +++ b/lib/datadog_api_client/v1/models/synthetics_assertion_operator.rb @@ -44,8 +44,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsAssertionOperator.constants.select { |c| SyntheticsAssertionOperator::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsAssertionOperator" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_assertion_target.rb b/lib/datadog_api_client/v1/models/synthetics_assertion_target.rb index a534bfe55c85..b716d7304e2d 100644 --- a/lib/datadog_api_client/v1/models/synthetics_assertion_target.rb +++ b/lib/datadog_api_client/v1/models/synthetics_assertion_target.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An assertion which uses a simple target. class SyntheticsAssertionTarget + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :operator # The associated assertion property. @@ -209,7 +212,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_assertion_type.rb b/lib/datadog_api_client/v1/models/synthetics_assertion_type.rb index 2066e1dd0e3f..708edf3d113b 100644 --- a/lib/datadog_api_client/v1/models/synthetics_assertion_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_assertion_type.rb @@ -45,8 +45,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsAssertionType.constants.select { |c| SyntheticsAssertionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsAssertionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_basic_auth.rb b/lib/datadog_api_client/v1/models/synthetics_basic_auth.rb index 3f3ad7aa55c5..76496e209894 100644 --- a/lib/datadog_api_client/v1/models/synthetics_basic_auth.rb +++ b/lib/datadog_api_client/v1/models/synthetics_basic_auth.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object to handle basic authentication when performing the test. class SyntheticsBasicAuth + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Password to use for the basic authentication. attr_accessor :password @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_browser_error.rb b/lib/datadog_api_client/v1/models/synthetics_browser_error.rb index 3469936077a4..d7c17adb0881 100644 --- a/lib/datadog_api_client/v1/models/synthetics_browser_error.rb +++ b/lib/datadog_api_client/v1/models/synthetics_browser_error.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Error response object for a browser test. class SyntheticsBrowserError + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Description of the error. attr_accessor :description @@ -215,7 +218,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_browser_error_type.rb b/lib/datadog_api_client/v1/models/synthetics_browser_error_type.rb index fc7c4684d68f..91b5d38a8171 100644 --- a/lib/datadog_api_client/v1/models/synthetics_browser_error_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_browser_error_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsBrowserErrorType.constants.select { |c| SyntheticsBrowserErrorType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsBrowserErrorType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_browser_test.rb b/lib/datadog_api_client/v1/models/synthetics_browser_test.rb index 7b4229621ce1..6da0340a17e5 100644 --- a/lib/datadog_api_client/v1/models/synthetics_browser_test.rb +++ b/lib/datadog_api_client/v1/models/synthetics_browser_test.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing details about a Synthetic browser test. class SyntheticsBrowserTest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :config # Array of locations used to run the test. @@ -280,7 +283,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_browser_test_config.rb b/lib/datadog_api_client/v1/models/synthetics_browser_test_config.rb index 2aaab83f8a27..6bcdc8bd4d87 100644 --- a/lib/datadog_api_client/v1/models/synthetics_browser_test_config.rb +++ b/lib/datadog_api_client/v1/models/synthetics_browser_test_config.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Configuration object for a Synthetic browser test. class SyntheticsBrowserTestConfig + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of assertions used for the test. attr_accessor :assertions @@ -214,7 +217,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_browser_test_result_data.rb b/lib/datadog_api_client/v1/models/synthetics_browser_test_result_data.rb index f10c114c6e05..e83e3070cec2 100644 --- a/lib/datadog_api_client/v1/models/synthetics_browser_test_result_data.rb +++ b/lib/datadog_api_client/v1/models/synthetics_browser_test_result_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing results for your Synthetic browser test. class SyntheticsBrowserTestResultData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Type of browser device used for the browser test. attr_accessor :browser_type @@ -272,7 +275,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_browser_test_result_full.rb b/lib/datadog_api_client/v1/models/synthetics_browser_test_result_full.rb index 4c535bc62233..99b62302274b 100644 --- a/lib/datadog_api_client/v1/models/synthetics_browser_test_result_full.rb +++ b/lib/datadog_api_client/v1/models/synthetics_browser_test_result_full.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object returned describing a browser test result. class SyntheticsBrowserTestResultFull + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :check # When the browser test was conducted. @@ -228,7 +231,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_browser_test_result_full_check.rb b/lib/datadog_api_client/v1/models/synthetics_browser_test_result_full_check.rb index 98cc19ba7851..95ce18c1efcb 100644 --- a/lib/datadog_api_client/v1/models/synthetics_browser_test_result_full_check.rb +++ b/lib/datadog_api_client/v1/models/synthetics_browser_test_result_full_check.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the browser test configuration. class SyntheticsBrowserTestResultFullCheck + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :config # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_browser_test_result_short.rb b/lib/datadog_api_client/v1/models/synthetics_browser_test_result_short.rb index 16c0239d57f2..e688a0c1db98 100644 --- a/lib/datadog_api_client/v1/models/synthetics_browser_test_result_short.rb +++ b/lib/datadog_api_client/v1/models/synthetics_browser_test_result_short.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object with the results of a single Synthetic browser test. class SyntheticsBrowserTestResultShort + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Last time the browser test was performed. attr_accessor :check_time @@ -209,7 +212,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_browser_test_result_short_result.rb b/lib/datadog_api_client/v1/models/synthetics_browser_test_result_short_result.rb index 4eff212d1ae9..bc9247439768 100644 --- a/lib/datadog_api_client/v1/models/synthetics_browser_test_result_short_result.rb +++ b/lib/datadog_api_client/v1/models/synthetics_browser_test_result_short_result.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object with the result of the last browser test run. class SyntheticsBrowserTestResultShortResult + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :device # Length in second of the browser test run. @@ -210,7 +213,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_browser_test_type.rb b/lib/datadog_api_client/v1/models/synthetics_browser_test_type.rb index f20bc6f76bb9..66e5af1b0dbd 100644 --- a/lib/datadog_api_client/v1/models/synthetics_browser_test_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_browser_test_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsBrowserTestType.constants.select { |c| SyntheticsBrowserTestType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsBrowserTestType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_browser_variable.rb b/lib/datadog_api_client/v1/models/synthetics_browser_variable.rb index 9903af73430c..cd314ce66b6f 100644 --- a/lib/datadog_api_client/v1/models/synthetics_browser_variable.rb +++ b/lib/datadog_api_client/v1/models/synthetics_browser_variable.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object defining a variable that can be used in your browser test. Learn more in the [Browser test Actions documentation](https://docs.datadoghq.com/synthetics/browser_tests/actions#variable). class SyntheticsBrowserVariable + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Example for the variable. attr_accessor :example @@ -220,7 +223,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_browser_variable_type.rb b/lib/datadog_api_client/v1/models/synthetics_browser_variable_type.rb index 6a76e22d4157..48bdd401ad3f 100644 --- a/lib/datadog_api_client/v1/models/synthetics_browser_variable_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_browser_variable_type.rb @@ -36,8 +36,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsBrowserVariableType.constants.select { |c| SyntheticsBrowserVariableType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsBrowserVariableType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_check_type.rb b/lib/datadog_api_client/v1/models/synthetics_check_type.rb index eb08ea00dae0..d22c337c4b6b 100644 --- a/lib/datadog_api_client/v1/models/synthetics_check_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_check_type.rb @@ -45,8 +45,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsCheckType.constants.select { |c| SyntheticsCheckType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsCheckType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_ci_test.rb b/lib/datadog_api_client/v1/models/synthetics_ci_test.rb index 83f84b405c84..a5415c326093 100644 --- a/lib/datadog_api_client/v1/models/synthetics_ci_test.rb +++ b/lib/datadog_api_client/v1/models/synthetics_ci_test.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Test configuration for Synthetics CI class SyntheticsCITest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Disable certificate checks in API tests. attr_accessor :allow_insecure_certificates @@ -311,7 +314,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_ci_test_body.rb b/lib/datadog_api_client/v1/models/synthetics_ci_test_body.rb index e7ad09500e08..f660c8f79526 100644 --- a/lib/datadog_api_client/v1/models/synthetics_ci_test_body.rb +++ b/lib/datadog_api_client/v1/models/synthetics_ci_test_body.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the synthetics tests to trigger. class SyntheticsCITestBody + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Individual synthetics test. attr_accessor :tests @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_ci_test_metadata.rb b/lib/datadog_api_client/v1/models/synthetics_ci_test_metadata.rb index 7e18cd6230a6..a80a2f040dde 100644 --- a/lib/datadog_api_client/v1/models/synthetics_ci_test_metadata.rb +++ b/lib/datadog_api_client/v1/models/synthetics_ci_test_metadata.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Metadata for the Synthetics tests run class SyntheticsCITestMetadata + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :ci attr_accessor :git @@ -179,7 +182,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_ci_test_metadata_ci.rb b/lib/datadog_api_client/v1/models/synthetics_ci_test_metadata_ci.rb index 1a06f029ea80..e7b38d02be53 100644 --- a/lib/datadog_api_client/v1/models/synthetics_ci_test_metadata_ci.rb +++ b/lib/datadog_api_client/v1/models/synthetics_ci_test_metadata_ci.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Describe CI provider. class SyntheticsCITestMetadataCi + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Name of the pipeline. attr_accessor :pipeline @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_ci_test_metadata_git.rb b/lib/datadog_api_client/v1/models/synthetics_ci_test_metadata_git.rb index 228a04e739f0..907f8b4d45d1 100644 --- a/lib/datadog_api_client/v1/models/synthetics_ci_test_metadata_git.rb +++ b/lib/datadog_api_client/v1/models/synthetics_ci_test_metadata_git.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Git information. class SyntheticsCITestMetadataGit + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Branch name. attr_accessor :branch @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_config_variable.rb b/lib/datadog_api_client/v1/models/synthetics_config_variable.rb index 17c0b76433f2..202e9624c5e3 100644 --- a/lib/datadog_api_client/v1/models/synthetics_config_variable.rb +++ b/lib/datadog_api_client/v1/models/synthetics_config_variable.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object defining a variable that can be used in your test configuration. class SyntheticsConfigVariable + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Example for the variable. attr_accessor :example @@ -220,7 +223,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_config_variable_type.rb b/lib/datadog_api_client/v1/models/synthetics_config_variable_type.rb index 852886ca0d4c..7c24236e057b 100644 --- a/lib/datadog_api_client/v1/models/synthetics_config_variable_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_config_variable_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsConfigVariableType.constants.select { |c| SyntheticsConfigVariableType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsConfigVariableType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_core_web_vitals.rb b/lib/datadog_api_client/v1/models/synthetics_core_web_vitals.rb index d6b71f0aa871..a67c53ef9040 100644 --- a/lib/datadog_api_client/v1/models/synthetics_core_web_vitals.rb +++ b/lib/datadog_api_client/v1/models/synthetics_core_web_vitals.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Core Web Vitals attached to a browser test step. class SyntheticsCoreWebVitals + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Cumulative Layout Shift. attr_accessor :cls @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_delete_tests_payload.rb b/lib/datadog_api_client/v1/models/synthetics_delete_tests_payload.rb index e796fdd57db0..05d1fddf2d3a 100644 --- a/lib/datadog_api_client/v1/models/synthetics_delete_tests_payload.rb +++ b/lib/datadog_api_client/v1/models/synthetics_delete_tests_payload.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A JSON list of the ID or IDs of the Synthetic tests that you want to delete. class SyntheticsDeleteTestsPayload + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of Synthetic test IDs you want to delete. attr_accessor :public_ids @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_delete_tests_response.rb b/lib/datadog_api_client/v1/models/synthetics_delete_tests_response.rb index 4c858d7e0e73..578ebcbf0be7 100644 --- a/lib/datadog_api_client/v1/models/synthetics_delete_tests_response.rb +++ b/lib/datadog_api_client/v1/models/synthetics_delete_tests_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response object for deleting Synthetic tests. class SyntheticsDeleteTestsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of objects containing a deleted Synthetic test ID with the associated deletion timestamp. attr_accessor :deleted_tests @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_deleted_test.rb b/lib/datadog_api_client/v1/models/synthetics_deleted_test.rb index 6f7c4b4476eb..a1a1327ee97a 100644 --- a/lib/datadog_api_client/v1/models/synthetics_deleted_test.rb +++ b/lib/datadog_api_client/v1/models/synthetics_deleted_test.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing a deleted Synthetic test ID with the associated deletion timestamp. class SyntheticsDeletedTest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Deletion timestamp of the Synthetic test ID. attr_accessor :deleted_at @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_device.rb b/lib/datadog_api_client/v1/models/synthetics_device.rb index 997e252a1e5e..cf95d3b2d11c 100644 --- a/lib/datadog_api_client/v1/models/synthetics_device.rb +++ b/lib/datadog_api_client/v1/models/synthetics_device.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the device used to perform the Synthetic test. class SyntheticsDevice + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Screen height of the device. attr_accessor :height @@ -230,7 +233,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_device_id.rb b/lib/datadog_api_client/v1/models/synthetics_device_id.rb index badef2025ccf..c0d8d6f1ef12 100644 --- a/lib/datadog_api_client/v1/models/synthetics_device_id.rb +++ b/lib/datadog_api_client/v1/models/synthetics_device_id.rb @@ -43,8 +43,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsDeviceID.constants.select { |c| SyntheticsDeviceID::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsDeviceID" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_error_code.rb b/lib/datadog_api_client/v1/models/synthetics_error_code.rb index 87d69bed71b8..dae94f111ee5 100644 --- a/lib/datadog_api_client/v1/models/synthetics_error_code.rb +++ b/lib/datadog_api_client/v1/models/synthetics_error_code.rb @@ -38,8 +38,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsErrorCode.constants.select { |c| SyntheticsErrorCode::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsErrorCode" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_get_api_test_latest_results_response.rb b/lib/datadog_api_client/v1/models/synthetics_get_api_test_latest_results_response.rb index 0b06390bc12c..eb86b50c7a16 100644 --- a/lib/datadog_api_client/v1/models/synthetics_get_api_test_latest_results_response.rb +++ b/lib/datadog_api_client/v1/models/synthetics_get_api_test_latest_results_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object with the latest Synthetic API test run. class SyntheticsGetAPITestLatestResultsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Timestamp of the latest API test run. attr_accessor :last_timestamp_fetched @@ -183,7 +186,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_get_browser_test_latest_results_response.rb b/lib/datadog_api_client/v1/models/synthetics_get_browser_test_latest_results_response.rb index ba2ae82a13cf..8d2977e9ffda 100644 --- a/lib/datadog_api_client/v1/models/synthetics_get_browser_test_latest_results_response.rb +++ b/lib/datadog_api_client/v1/models/synthetics_get_browser_test_latest_results_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object with the latest Synthetic browser test run. class SyntheticsGetBrowserTestLatestResultsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Timestamp of the latest browser test run. attr_accessor :last_timestamp_fetched @@ -183,7 +186,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_global_variable.rb b/lib/datadog_api_client/v1/models/synthetics_global_variable.rb index 32191b27c633..265e8ee91439 100644 --- a/lib/datadog_api_client/v1/models/synthetics_global_variable.rb +++ b/lib/datadog_api_client/v1/models/synthetics_global_variable.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Synthetics global variable. class SyntheticsGlobalVariable + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # Description of the global variable. @@ -260,7 +263,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_global_variable_attributes.rb b/lib/datadog_api_client/v1/models/synthetics_global_variable_attributes.rb index 8835e9022a1a..77b0914f741a 100644 --- a/lib/datadog_api_client/v1/models/synthetics_global_variable_attributes.rb +++ b/lib/datadog_api_client/v1/models/synthetics_global_variable_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Attributes of the global variable. class SyntheticsGlobalVariableAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of role identifiers that can be pulled from the Roles API. attr_accessor :restricted_roles @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_global_variable_parse_test_options.rb b/lib/datadog_api_client/v1/models/synthetics_global_variable_parse_test_options.rb index 1abf1b91f49d..f9a280ae439c 100644 --- a/lib/datadog_api_client/v1/models/synthetics_global_variable_parse_test_options.rb +++ b/lib/datadog_api_client/v1/models/synthetics_global_variable_parse_test_options.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Parser options to use for retrieving a Synthetics global variable from a Synthetics Test. Used in conjunction with `parse_test_public_id`. class SyntheticsGlobalVariableParseTestOptions + # whether the object has unparsed attributes + attr_accessor :_unparsed + # When type is `http_header`, name of the header to use to extract the value. attr_accessor :field @@ -199,7 +202,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_global_variable_parse_test_options_type.rb b/lib/datadog_api_client/v1/models/synthetics_global_variable_parse_test_options_type.rb index f57e0a9efb93..bdfe62e7151c 100644 --- a/lib/datadog_api_client/v1/models/synthetics_global_variable_parse_test_options_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_global_variable_parse_test_options_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsGlobalVariableParseTestOptionsType.constants.select { |c| SyntheticsGlobalVariableParseTestOptionsType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsGlobalVariableParseTestOptionsType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_global_variable_parser_type.rb b/lib/datadog_api_client/v1/models/synthetics_global_variable_parser_type.rb index b6f4b3a58b00..4e0ec8ccefad 100644 --- a/lib/datadog_api_client/v1/models/synthetics_global_variable_parser_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_global_variable_parser_type.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsGlobalVariableParserType.constants.select { |c| SyntheticsGlobalVariableParserType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsGlobalVariableParserType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_global_variable_value.rb b/lib/datadog_api_client/v1/models/synthetics_global_variable_value.rb index 6db1d1a8a31d..1d9662243e72 100644 --- a/lib/datadog_api_client/v1/models/synthetics_global_variable_value.rb +++ b/lib/datadog_api_client/v1/models/synthetics_global_variable_value.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Value of the global variable. class SyntheticsGlobalVariableValue + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Determines if the variable is secure. attr_accessor :secure @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_list_global_variables_response.rb b/lib/datadog_api_client/v1/models/synthetics_list_global_variables_response.rb index 5b89475026c8..0a29ab01f8ec 100644 --- a/lib/datadog_api_client/v1/models/synthetics_list_global_variables_response.rb +++ b/lib/datadog_api_client/v1/models/synthetics_list_global_variables_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing an array of Synthetic global variables. class SyntheticsListGlobalVariablesResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of Synthetic global variables. attr_accessor :variables @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_list_tests_response.rb b/lib/datadog_api_client/v1/models/synthetics_list_tests_response.rb index 737d2f9395d0..65e5ec687ef4 100644 --- a/lib/datadog_api_client/v1/models/synthetics_list_tests_response.rb +++ b/lib/datadog_api_client/v1/models/synthetics_list_tests_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing an array of Synthetic tests configuration. class SyntheticsListTestsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of Synthetic tests configuration. attr_accessor :tests @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_location.rb b/lib/datadog_api_client/v1/models/synthetics_location.rb index 2f44334292d1..98d204cfbcfb 100644 --- a/lib/datadog_api_client/v1/models/synthetics_location.rb +++ b/lib/datadog_api_client/v1/models/synthetics_location.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Synthetic location that can be used when creating or editing a test. class SyntheticsLocation + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Unique identifier of the location. attr_accessor :id @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_locations.rb b/lib/datadog_api_client/v1/models/synthetics_locations.rb index befaac847cb5..6f247eacef45 100644 --- a/lib/datadog_api_client/v1/models/synthetics_locations.rb +++ b/lib/datadog_api_client/v1/models/synthetics_locations.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # List of Synthetics locations. class SyntheticsLocations + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of Synthetics locations. attr_accessor :locations @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_parsing_options.rb b/lib/datadog_api_client/v1/models/synthetics_parsing_options.rb index 81d6dccf3c1f..2397c62ad9c8 100644 --- a/lib/datadog_api_client/v1/models/synthetics_parsing_options.rb +++ b/lib/datadog_api_client/v1/models/synthetics_parsing_options.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Parsing options for variables to extract. class SyntheticsParsingOptions + # whether the object has unparsed attributes + attr_accessor :_unparsed + # When type is `http_header`, name of the header to use to extract the value. attr_accessor :field @@ -199,7 +202,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_playing_tab.rb b/lib/datadog_api_client/v1/models/synthetics_playing_tab.rb index a071280236b2..aafb6821af54 100644 --- a/lib/datadog_api_client/v1/models/synthetics_playing_tab.rb +++ b/lib/datadog_api_client/v1/models/synthetics_playing_tab.rb @@ -36,8 +36,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsPlayingTab.constants.select { |c| SyntheticsPlayingTab::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsPlayingTab" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_private_location.rb b/lib/datadog_api_client/v1/models/synthetics_private_location.rb index a61830bf4f26..1cfae1a0b880 100644 --- a/lib/datadog_api_client/v1/models/synthetics_private_location.rb +++ b/lib/datadog_api_client/v1/models/synthetics_private_location.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing information about the private location to create. class SyntheticsPrivateLocation + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Description of the private location. attr_accessor :description @@ -227,7 +230,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_private_location_creation_response.rb b/lib/datadog_api_client/v1/models/synthetics_private_location_creation_response.rb index c1c93fb637ea..5b1d3cb72626 100644 --- a/lib/datadog_api_client/v1/models/synthetics_private_location_creation_response.rb +++ b/lib/datadog_api_client/v1/models/synthetics_private_location_creation_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object that contains the new private location, the public key for result encryption, and the configuration skeleton. class SyntheticsPrivateLocationCreationResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Configuration skeleton for the private location. See installation instructions of the private location on how to use this configuration. attr_accessor :config @@ -189,7 +192,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_private_location_creation_response_result_encryption.rb b/lib/datadog_api_client/v1/models/synthetics_private_location_creation_response_result_encryption.rb index 404124d7c040..aee4b53c064f 100644 --- a/lib/datadog_api_client/v1/models/synthetics_private_location_creation_response_result_encryption.rb +++ b/lib/datadog_api_client/v1/models/synthetics_private_location_creation_response_result_encryption.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Public key for the result encryption. class SyntheticsPrivateLocationCreationResponseResultEncryption + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Fingerprint for the encryption key. attr_accessor :id @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_private_location_secrets.rb b/lib/datadog_api_client/v1/models/synthetics_private_location_secrets.rb index c3bccd8d571e..650c0d9679f8 100644 --- a/lib/datadog_api_client/v1/models/synthetics_private_location_secrets.rb +++ b/lib/datadog_api_client/v1/models/synthetics_private_location_secrets.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Secrets for the private location. Only present in the response when creating the private location. class SyntheticsPrivateLocationSecrets + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :authentication attr_accessor :config_decryption @@ -179,7 +182,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_private_location_secrets_authentication.rb b/lib/datadog_api_client/v1/models/synthetics_private_location_secrets_authentication.rb index 16eb6da015dd..175de512acc4 100644 --- a/lib/datadog_api_client/v1/models/synthetics_private_location_secrets_authentication.rb +++ b/lib/datadog_api_client/v1/models/synthetics_private_location_secrets_authentication.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Authentication part of the secrets. class SyntheticsPrivateLocationSecretsAuthentication + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Access key for the private location. attr_accessor :id @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_private_location_secrets_config_decryption.rb b/lib/datadog_api_client/v1/models/synthetics_private_location_secrets_config_decryption.rb index 21e447d3839e..2a6c186c8f6e 100644 --- a/lib/datadog_api_client/v1/models/synthetics_private_location_secrets_config_decryption.rb +++ b/lib/datadog_api_client/v1/models/synthetics_private_location_secrets_config_decryption.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Private key for the private location. class SyntheticsPrivateLocationSecretsConfigDecryption + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Private key for the private location. attr_accessor :key @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_ssl_certificate.rb b/lib/datadog_api_client/v1/models/synthetics_ssl_certificate.rb index ee5bc8271d10..3edf1055d2fd 100644 --- a/lib/datadog_api_client/v1/models/synthetics_ssl_certificate.rb +++ b/lib/datadog_api_client/v1/models/synthetics_ssl_certificate.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the SSL certificate used for a Synthetic test. class SyntheticsSSLCertificate + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Cipher used for the connection. attr_accessor :cipher @@ -281,7 +284,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_ssl_certificate_issuer.rb b/lib/datadog_api_client/v1/models/synthetics_ssl_certificate_issuer.rb index 37fbcf768d3d..40e9b3626929 100644 --- a/lib/datadog_api_client/v1/models/synthetics_ssl_certificate_issuer.rb +++ b/lib/datadog_api_client/v1/models/synthetics_ssl_certificate_issuer.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the issuer of a SSL certificate. class SyntheticsSSLCertificateIssuer + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Country Name that issued the certificate. attr_accessor :c @@ -221,7 +224,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_ssl_certificate_subject.rb b/lib/datadog_api_client/v1/models/synthetics_ssl_certificate_subject.rb index 98b7b3001a5f..f0f26e02474e 100644 --- a/lib/datadog_api_client/v1/models/synthetics_ssl_certificate_subject.rb +++ b/lib/datadog_api_client/v1/models/synthetics_ssl_certificate_subject.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the SSL certificate used for the test. class SyntheticsSSLCertificateSubject + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Country Name associated with the certificate. attr_accessor :c @@ -231,7 +234,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_step.rb b/lib/datadog_api_client/v1/models/synthetics_step.rb index 954ca8b5c2cd..be85b69b3c01 100644 --- a/lib/datadog_api_client/v1/models/synthetics_step.rb +++ b/lib/datadog_api_client/v1/models/synthetics_step.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The steps used in a Synthetics browser test. class SyntheticsStep + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A boolean set to allow this step to fail. attr_accessor :allow_failure @@ -210,7 +213,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_step_detail.rb b/lib/datadog_api_client/v1/models/synthetics_step_detail.rb index a9713ee8688a..f949d7c12c7f 100644 --- a/lib/datadog_api_client/v1/models/synthetics_step_detail.rb +++ b/lib/datadog_api_client/v1/models/synthetics_step_detail.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing a step for a Synthetic test. class SyntheticsStepDetail + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of errors collected for a browser test. attr_accessor :browser_errors @@ -336,7 +339,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_step_detail_warning.rb b/lib/datadog_api_client/v1/models/synthetics_step_detail_warning.rb index 74ac3a1ed9a1..f0769364dd96 100644 --- a/lib/datadog_api_client/v1/models/synthetics_step_detail_warning.rb +++ b/lib/datadog_api_client/v1/models/synthetics_step_detail_warning.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object collecting warnings for a given step. class SyntheticsStepDetailWarning + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Message for the warning. attr_accessor :message @@ -190,7 +193,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_step_type.rb b/lib/datadog_api_client/v1/models/synthetics_step_type.rb index ff0aa348a2c7..f361fc221473 100644 --- a/lib/datadog_api_client/v1/models/synthetics_step_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_step_type.rb @@ -56,8 +56,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsStepType.constants.select { |c| SyntheticsStepType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsStepType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_config.rb b/lib/datadog_api_client/v1/models/synthetics_test_config.rb index b5394c104195..ec752da863dd 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_config.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_config.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Configuration object for a Synthetic test. class SyntheticsTestConfig + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of assertions used for the test. attr_accessor :assertions @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_details.rb b/lib/datadog_api_client/v1/models/synthetics_test_details.rb index d5dde248b098..617b4c1b5166 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_details.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_details.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing details about your Synthetic test. class SyntheticsTestDetails + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :config # Array of locations used to run the test. @@ -282,7 +285,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_details_sub_type.rb b/lib/datadog_api_client/v1/models/synthetics_test_details_sub_type.rb index 59fafa05f0ed..7074b857216a 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_details_sub_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_details_sub_type.rb @@ -37,8 +37,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsTestDetailsSubType.constants.select { |c| SyntheticsTestDetailsSubType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsTestDetailsSubType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_details_type.rb b/lib/datadog_api_client/v1/models/synthetics_test_details_type.rb index a2ca9a8d3d07..d1af6611168b 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_details_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_details_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsTestDetailsType.constants.select { |c| SyntheticsTestDetailsType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsTestDetailsType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_monitor_status.rb b/lib/datadog_api_client/v1/models/synthetics_test_monitor_status.rb index b41be82616f8..d1117187c2f7 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_monitor_status.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_monitor_status.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsTestMonitorStatus.constants.select { |c| SyntheticsTestMonitorStatus::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsTestMonitorStatus" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_options.rb b/lib/datadog_api_client/v1/models/synthetics_test_options.rb index 0ebf266b3a8e..c942675dff4d 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_options.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_options.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the extra options for a Synthetic test. class SyntheticsTestOptions + # whether the object has unparsed attributes + attr_accessor :_unparsed + # For SSL test, whether or not the test should allow self signed certificates. attr_accessor :accept_self_signed @@ -339,7 +342,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_options_monitor_options.rb b/lib/datadog_api_client/v1/models/synthetics_test_options_monitor_options.rb index 93145e247d14..ac8ec834af8f 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_options_monitor_options.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_options_monitor_options.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing the options for a Synthetic test as a monitor (for example, renotification). class SyntheticsTestOptionsMonitorOptions + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Time interval before renotifying if the test is still failing (in minutes). attr_accessor :renotify_interval @@ -195,7 +198,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_options_retry.rb b/lib/datadog_api_client/v1/models/synthetics_test_options_retry.rb index b0509351f09e..0be8d5a8ae71 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_options_retry.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_options_retry.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the retry strategy to apply to a Synthetic test. class SyntheticsTestOptionsRetry + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Number of times a test needs to be retried before marking a location as failed. Defaults to 0. attr_accessor :count @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_pause_status.rb b/lib/datadog_api_client/v1/models/synthetics_test_pause_status.rb index c8f25e8bebb6..cc7180f833a5 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_pause_status.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_pause_status.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsTestPauseStatus.constants.select { |c| SyntheticsTestPauseStatus::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsTestPauseStatus" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_process_status.rb b/lib/datadog_api_client/v1/models/synthetics_test_process_status.rb index 9cc9673c2922..d27ba32ac0d7 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_process_status.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_process_status.rb @@ -36,8 +36,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsTestProcessStatus.constants.select { |c| SyntheticsTestProcessStatus::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsTestProcessStatus" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_request.rb b/lib/datadog_api_client/v1/models/synthetics_test_request.rb index ab428a497bb8..e69d2df9b11d 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_request.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object describing the Synthetic test request. class SyntheticsTestRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Allows loading insecure content for an HTTP request in a multistep test step. attr_accessor :allow_insecure @@ -368,7 +371,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_request_certificate.rb b/lib/datadog_api_client/v1/models/synthetics_test_request_certificate.rb index 1ee3e27dc4a8..afb7c0e33d32 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_request_certificate.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_request_certificate.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Client certificate to use when performing the test request. class SyntheticsTestRequestCertificate + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :cert attr_accessor :key @@ -179,7 +182,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_test_request_certificate_item.rb b/lib/datadog_api_client/v1/models/synthetics_test_request_certificate_item.rb index 7a11ca741c89..ed06f2e5b5c1 100644 --- a/lib/datadog_api_client/v1/models/synthetics_test_request_certificate_item.rb +++ b/lib/datadog_api_client/v1/models/synthetics_test_request_certificate_item.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Define a request certificate. class SyntheticsTestRequestCertificateItem + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Content of the certificate or key. attr_accessor :content @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_timing.rb b/lib/datadog_api_client/v1/models/synthetics_timing.rb index 3a9e06416866..af303f9306c0 100644 --- a/lib/datadog_api_client/v1/models/synthetics_timing.rb +++ b/lib/datadog_api_client/v1/models/synthetics_timing.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing all metrics and their values collected for a Synthetic API test. Learn more about those metrics in [Synthetics documentation](https://docs.datadoghq.com/synthetics/#metrics). class SyntheticsTiming + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The duration in millisecond of the DNS lookup. attr_accessor :dns @@ -251,7 +254,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_trigger_ci_test_location.rb b/lib/datadog_api_client/v1/models/synthetics_trigger_ci_test_location.rb index 80fc82728bf7..99d94b954ebb 100644 --- a/lib/datadog_api_client/v1/models/synthetics_trigger_ci_test_location.rb +++ b/lib/datadog_api_client/v1/models/synthetics_trigger_ci_test_location.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Synthetics location. class SyntheticsTriggerCITestLocation + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Unique identifier of the location. attr_accessor :id @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_trigger_ci_test_run_result.rb b/lib/datadog_api_client/v1/models/synthetics_trigger_ci_test_run_result.rb index 5100c017d3fa..1958c6895c1a 100644 --- a/lib/datadog_api_client/v1/models/synthetics_trigger_ci_test_run_result.rb +++ b/lib/datadog_api_client/v1/models/synthetics_trigger_ci_test_run_result.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Information about a single test run. class SyntheticsTriggerCITestRunResult + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :device # The location ID of the test run. @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_trigger_ci_tests_response.rb b/lib/datadog_api_client/v1/models/synthetics_trigger_ci_tests_response.rb index e82b2df8049b..155d1c787481 100644 --- a/lib/datadog_api_client/v1/models/synthetics_trigger_ci_tests_response.rb +++ b/lib/datadog_api_client/v1/models/synthetics_trigger_ci_tests_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object containing information about the tests triggered. class SyntheticsTriggerCITestsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of Synthetics locations. attr_accessor :locations @@ -197,7 +200,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_update_test_pause_status_payload.rb b/lib/datadog_api_client/v1/models/synthetics_update_test_pause_status_payload.rb index b9debfc5bb49..5bc2e7c9ffca 100644 --- a/lib/datadog_api_client/v1/models/synthetics_update_test_pause_status_payload.rb +++ b/lib/datadog_api_client/v1/models/synthetics_update_test_pause_status_payload.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Object to start or pause an existing Synthetic test. class SyntheticsUpdateTestPauseStatusPayload + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :new_status # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_variable_parser.rb b/lib/datadog_api_client/v1/models/synthetics_variable_parser.rb index 7603a05db4c3..53d27ace48ca 100644 --- a/lib/datadog_api_client/v1/models/synthetics_variable_parser.rb +++ b/lib/datadog_api_client/v1/models/synthetics_variable_parser.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Details of the parser to use for the global variable. class SyntheticsVariableParser + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :type # Regex or JSON path used for the parser. Not used with type `raw`. @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/synthetics_warning_type.rb b/lib/datadog_api_client/v1/models/synthetics_warning_type.rb index e092baa792c8..a75908603858 100644 --- a/lib/datadog_api_client/v1/models/synthetics_warning_type.rb +++ b/lib/datadog_api_client/v1/models/synthetics_warning_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SyntheticsWarningType.constants.select { |c| SyntheticsWarningType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SyntheticsWarningType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/table_widget_cell_display_mode.rb b/lib/datadog_api_client/v1/models/table_widget_cell_display_mode.rb index 10697bedf3ae..39be8870687b 100644 --- a/lib/datadog_api_client/v1/models/table_widget_cell_display_mode.rb +++ b/lib/datadog_api_client/v1/models/table_widget_cell_display_mode.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = TableWidgetCellDisplayMode.constants.select { |c| TableWidgetCellDisplayMode::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #TableWidgetCellDisplayMode" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/table_widget_definition.rb b/lib/datadog_api_client/v1/models/table_widget_definition.rb index f81a0922d865..98af91c7127d 100644 --- a/lib/datadog_api_client/v1/models/table_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/table_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The table visualization is available on timeboards and screenboards. It displays columns of metrics grouped by tag key. class TableWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of custom links. attr_accessor :custom_links @@ -253,7 +256,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/table_widget_definition_type.rb b/lib/datadog_api_client/v1/models/table_widget_definition_type.rb index 24c9cd1d2857..1acb2c34a1c8 100644 --- a/lib/datadog_api_client/v1/models/table_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/table_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = TableWidgetDefinitionType.constants.select { |c| TableWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #TableWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/table_widget_has_search_bar.rb b/lib/datadog_api_client/v1/models/table_widget_has_search_bar.rb index 7d322294c79f..b8cc0e3b2fd6 100644 --- a/lib/datadog_api_client/v1/models/table_widget_has_search_bar.rb +++ b/lib/datadog_api_client/v1/models/table_widget_has_search_bar.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = TableWidgetHasSearchBar.constants.select { |c| TableWidgetHasSearchBar::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #TableWidgetHasSearchBar" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/table_widget_request.rb b/lib/datadog_api_client/v1/models/table_widget_request.rb index 8ab18d24f785..6c3133640750 100644 --- a/lib/datadog_api_client/v1/models/table_widget_request.rb +++ b/lib/datadog_api_client/v1/models/table_widget_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Updated table widget. class TableWidgetRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :aggregator # The column name (defaults to the metric name). @@ -347,7 +350,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/tag_to_hosts.rb b/lib/datadog_api_client/v1/models/tag_to_hosts.rb index 3051c391df55..69b3d5bcd860 100644 --- a/lib/datadog_api_client/v1/models/tag_to_hosts.rb +++ b/lib/datadog_api_client/v1/models/tag_to_hosts.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # In this object, the key is the tag, the value is a list of host names that are reporting that tag. class TagToHosts + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A list of tags to apply to the host. attr_accessor :tags @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/target_format_type.rb b/lib/datadog_api_client/v1/models/target_format_type.rb index dee7a9d64966..fb6ac6bedec4 100644 --- a/lib/datadog_api_client/v1/models/target_format_type.rb +++ b/lib/datadog_api_client/v1/models/target_format_type.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = TargetFormatType.constants.select { |c| TargetFormatType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #TargetFormatType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/timeseries_widget_definition.rb b/lib/datadog_api_client/v1/models/timeseries_widget_definition.rb index 897e3901459a..7c378cbf452e 100644 --- a/lib/datadog_api_client/v1/models/timeseries_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/timeseries_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The timeseries visualization allows you to display the evolution of one or more metrics, log events, or Indexed Spans over time. class TimeseriesWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of custom links. attr_accessor :custom_links @@ -346,7 +349,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/timeseries_widget_definition_type.rb b/lib/datadog_api_client/v1/models/timeseries_widget_definition_type.rb index 5469d99c1c78..3d8bbb0def51 100644 --- a/lib/datadog_api_client/v1/models/timeseries_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/timeseries_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = TimeseriesWidgetDefinitionType.constants.select { |c| TimeseriesWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #TimeseriesWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/timeseries_widget_expression_alias.rb b/lib/datadog_api_client/v1/models/timeseries_widget_expression_alias.rb index 838563573550..ac9790200b84 100644 --- a/lib/datadog_api_client/v1/models/timeseries_widget_expression_alias.rb +++ b/lib/datadog_api_client/v1/models/timeseries_widget_expression_alias.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Define an expression alias. class TimeseriesWidgetExpressionAlias + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Expression alias. attr_accessor :alias_name @@ -186,7 +189,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/timeseries_widget_legend_column.rb b/lib/datadog_api_client/v1/models/timeseries_widget_legend_column.rb index 4a1b1a02757d..dbbbc99e51d6 100644 --- a/lib/datadog_api_client/v1/models/timeseries_widget_legend_column.rb +++ b/lib/datadog_api_client/v1/models/timeseries_widget_legend_column.rb @@ -36,8 +36,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = TimeseriesWidgetLegendColumn.constants.select { |c| TimeseriesWidgetLegendColumn::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #TimeseriesWidgetLegendColumn" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/timeseries_widget_legend_layout.rb b/lib/datadog_api_client/v1/models/timeseries_widget_legend_layout.rb index eb8fdcfec3ce..7329ac2aefcc 100644 --- a/lib/datadog_api_client/v1/models/timeseries_widget_legend_layout.rb +++ b/lib/datadog_api_client/v1/models/timeseries_widget_legend_layout.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = TimeseriesWidgetLegendLayout.constants.select { |c| TimeseriesWidgetLegendLayout::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #TimeseriesWidgetLegendLayout" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/timeseries_widget_request.rb b/lib/datadog_api_client/v1/models/timeseries_widget_request.rb index aceb7a35dcda..7047e4322e19 100644 --- a/lib/datadog_api_client/v1/models/timeseries_widget_request.rb +++ b/lib/datadog_api_client/v1/models/timeseries_widget_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Updated timeseries widget. class TimeseriesWidgetRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :apm_query attr_accessor :audit_query @@ -325,7 +328,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/toplist_widget_definition.rb b/lib/datadog_api_client/v1/models/toplist_widget_definition.rb index 4c68bd100703..973b70817b3c 100644 --- a/lib/datadog_api_client/v1/models/toplist_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/toplist_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The top list visualization enables you to display a list of Tag value like hostname or service with the most or least of any metric value, such as highest consumers of CPU, hosts with the least disk space, etc. class ToplistWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of custom links. attr_accessor :custom_links @@ -244,7 +247,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/toplist_widget_definition_type.rb b/lib/datadog_api_client/v1/models/toplist_widget_definition_type.rb index f2716cdf1391..bbbc3903f18a 100644 --- a/lib/datadog_api_client/v1/models/toplist_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/toplist_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ToplistWidgetDefinitionType.constants.select { |c| ToplistWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ToplistWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/toplist_widget_request.rb b/lib/datadog_api_client/v1/models/toplist_widget_request.rb index 7c451022d820..284ff91368cb 100644 --- a/lib/datadog_api_client/v1/models/toplist_widget_request.rb +++ b/lib/datadog_api_client/v1/models/toplist_widget_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Updated top list widget. class ToplistWidgetRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :apm_query attr_accessor :audit_query @@ -321,7 +324,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/tree_map_color_by.rb b/lib/datadog_api_client/v1/models/tree_map_color_by.rb index 76a326d8f118..daa03bba8511 100644 --- a/lib/datadog_api_client/v1/models/tree_map_color_by.rb +++ b/lib/datadog_api_client/v1/models/tree_map_color_by.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = TreeMapColorBy.constants.select { |c| TreeMapColorBy::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #TreeMapColorBy" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/tree_map_group_by.rb b/lib/datadog_api_client/v1/models/tree_map_group_by.rb index c8aa82a8baff..0eff7bab5829 100644 --- a/lib/datadog_api_client/v1/models/tree_map_group_by.rb +++ b/lib/datadog_api_client/v1/models/tree_map_group_by.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = TreeMapGroupBy.constants.select { |c| TreeMapGroupBy::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #TreeMapGroupBy" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/tree_map_size_by.rb b/lib/datadog_api_client/v1/models/tree_map_size_by.rb index f207a68b4501..6f5732831513 100644 --- a/lib/datadog_api_client/v1/models/tree_map_size_by.rb +++ b/lib/datadog_api_client/v1/models/tree_map_size_by.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = TreeMapSizeBy.constants.select { |c| TreeMapSizeBy::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #TreeMapSizeBy" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/tree_map_widget_definition.rb b/lib/datadog_api_client/v1/models/tree_map_widget_definition.rb index c8de172fc5f9..4f0f2914b2d0 100644 --- a/lib/datadog_api_client/v1/models/tree_map_widget_definition.rb +++ b/lib/datadog_api_client/v1/models/tree_map_widget_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The treemap visualization found on the Host Dashboards comes from the output of `ps auxww`. This is not continuously run on your hosts. Instead, it’s run once on Agent start/restart. The treemap is only supported for process data on a single host dashboard — this may not be reused in other dashboards or for other metrics. class TreeMapWidgetDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :color_by attr_accessor :group_by @@ -276,7 +279,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/tree_map_widget_definition_type.rb b/lib/datadog_api_client/v1/models/tree_map_widget_definition_type.rb index d72aa3226e7f..5f884971161c 100644 --- a/lib/datadog_api_client/v1/models/tree_map_widget_definition_type.rb +++ b/lib/datadog_api_client/v1/models/tree_map_widget_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = TreeMapWidgetDefinitionType.constants.select { |c| TreeMapWidgetDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #TreeMapWidgetDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/tree_map_widget_request.rb b/lib/datadog_api_client/v1/models/tree_map_widget_request.rb index 68d7ff731cc0..a654383e4507 100644 --- a/lib/datadog_api_client/v1/models/tree_map_widget_request.rb +++ b/lib/datadog_api_client/v1/models/tree_map_widget_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # An updated treemap widget. class TreeMapWidgetRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The widget metrics query. attr_accessor :q @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_analyzed_logs_hour.rb b/lib/datadog_api_client/v1/models/usage_analyzed_logs_hour.rb index bf0102bd35cb..17f305e500ef 100644 --- a/lib/datadog_api_client/v1/models/usage_analyzed_logs_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_analyzed_logs_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The number of analyzed logs for each hour for a given organization. class UsageAnalyzedLogsHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Contains the number of analyzed logs. attr_accessor :analyzed_logs @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_analyzed_logs_response.rb b/lib/datadog_api_client/v1/models/usage_analyzed_logs_response.rb index b35ce9dd8e28..b744e3929b58 100644 --- a/lib/datadog_api_client/v1/models/usage_analyzed_logs_response.rb +++ b/lib/datadog_api_client/v1/models/usage_analyzed_logs_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A response containing the number of analyzed logs for each hour for a given organization. class UsageAnalyzedLogsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for analyzed logs. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_attribution_aggregates_body.rb b/lib/datadog_api_client/v1/models/usage_attribution_aggregates_body.rb index dd35e604b4ba..38a60256b13d 100644 --- a/lib/datadog_api_client/v1/models/usage_attribution_aggregates_body.rb +++ b/lib/datadog_api_client/v1/models/usage_attribution_aggregates_body.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The object containing the aggregates. class UsageAttributionAggregatesBody + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The aggregate type. attr_accessor :agg_type @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_attribution_body.rb b/lib/datadog_api_client/v1/models/usage_attribution_body.rb index 19c271625ba8..49a78a34212e 100644 --- a/lib/datadog_api_client/v1/models/usage_attribution_body.rb +++ b/lib/datadog_api_client/v1/models/usage_attribution_body.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Usage Summary by tag for a given organization. class UsageAttributionBody + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Datetime in ISO-8601 format, UTC, precise to month: [YYYY-MM]. attr_accessor :month @@ -232,7 +235,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_attribution_metadata.rb b/lib/datadog_api_client/v1/models/usage_attribution_metadata.rb index 298b147a1def..46634f276afe 100644 --- a/lib/datadog_api_client/v1/models/usage_attribution_metadata.rb +++ b/lib/datadog_api_client/v1/models/usage_attribution_metadata.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The object containing document metadata. class UsageAttributionMetadata + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of available aggregates. attr_accessor :aggregates @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_attribution_pagination.rb b/lib/datadog_api_client/v1/models/usage_attribution_pagination.rb index 0dca4115fcd3..1721835e6e28 100644 --- a/lib/datadog_api_client/v1/models/usage_attribution_pagination.rb +++ b/lib/datadog_api_client/v1/models/usage_attribution_pagination.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The metadata for the current pagination. class UsageAttributionPagination + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Maximum amount of records to be returned. attr_accessor :limit @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_attribution_response.rb b/lib/datadog_api_client/v1/models/usage_attribution_response.rb index 97b566f0d5bc..c407bb1d83d7 100644 --- a/lib/datadog_api_client/v1/models/usage_attribution_response.rb +++ b/lib/datadog_api_client/v1/models/usage_attribution_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the Usage Summary by tag(s). class UsageAttributionResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :metadata # Get Usage Summary by tag(s). @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_attribution_sort.rb b/lib/datadog_api_client/v1/models/usage_attribution_sort.rb index d05e9c8abb4a..434f082cdaa8 100644 --- a/lib/datadog_api_client/v1/models/usage_attribution_sort.rb +++ b/lib/datadog_api_client/v1/models/usage_attribution_sort.rb @@ -53,8 +53,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = UsageAttributionSort.constants.select { |c| UsageAttributionSort::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #UsageAttributionSort" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/usage_attribution_supported_metrics.rb b/lib/datadog_api_client/v1/models/usage_attribution_supported_metrics.rb index a4c976356e95..0f94f20bc355 100644 --- a/lib/datadog_api_client/v1/models/usage_attribution_supported_metrics.rb +++ b/lib/datadog_api_client/v1/models/usage_attribution_supported_metrics.rb @@ -60,8 +60,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = UsageAttributionSupportedMetrics.constants.select { |c| UsageAttributionSupportedMetrics::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #UsageAttributionSupportedMetrics" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/usage_attribution_values.rb b/lib/datadog_api_client/v1/models/usage_attribution_values.rb index 19aa729d5746..9ba6f05a531f 100644 --- a/lib/datadog_api_client/v1/models/usage_attribution_values.rb +++ b/lib/datadog_api_client/v1/models/usage_attribution_values.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Fields in Usage Summary by tag(s). class UsageAttributionValues + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The percentage of synthetic API test usage by tag(s). attr_accessor :api_percentage @@ -501,7 +504,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_audit_logs_hour.rb b/lib/datadog_api_client/v1/models/usage_audit_logs_hour.rb index 4250265a747a..1e8e89812246 100644 --- a/lib/datadog_api_client/v1/models/usage_audit_logs_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_audit_logs_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Audit logs usage for a given organization for a given hour. class UsageAuditLogsHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The hour for the usage. attr_accessor :hour @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_audit_logs_response.rb b/lib/datadog_api_client/v1/models/usage_audit_logs_response.rb index 8c0f33c7c23e..33063f3a4c85 100644 --- a/lib/datadog_api_client/v1/models/usage_audit_logs_response.rb +++ b/lib/datadog_api_client/v1/models/usage_audit_logs_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the audit logs usage for each hour for a given organization. class UsageAuditLogsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for audit logs. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_billable_summary_body.rb b/lib/datadog_api_client/v1/models/usage_billable_summary_body.rb index 0d73abe4a411..ae547985f458 100644 --- a/lib/datadog_api_client/v1/models/usage_billable_summary_body.rb +++ b/lib/datadog_api_client/v1/models/usage_billable_summary_body.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response with properties for each aggregated usage type. class UsageBillableSummaryBody + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The total account usage. attr_accessor :account_billable_usage @@ -231,7 +234,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_billable_summary_hour.rb b/lib/datadog_api_client/v1/models/usage_billable_summary_hour.rb index 4cdbd5a5d154..f76be0685ba3 100644 --- a/lib/datadog_api_client/v1/models/usage_billable_summary_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_billable_summary_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response with monthly summary of data billed by Datadog. class UsageBillableSummaryHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The billing plan. attr_accessor :billing_plan @@ -240,7 +243,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_billable_summary_keys.rb b/lib/datadog_api_client/v1/models/usage_billable_summary_keys.rb index d39406b3dc52..90ddbd7ebe9c 100644 --- a/lib/datadog_api_client/v1/models/usage_billable_summary_keys.rb +++ b/lib/datadog_api_client/v1/models/usage_billable_summary_keys.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response with aggregated usage types. class UsageBillableSummaryKeys + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :apm_host_sum attr_accessor :apm_host_top99p @@ -449,7 +452,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_billable_summary_response.rb b/lib/datadog_api_client/v1/models/usage_billable_summary_response.rb index 4ab32a9f0ef9..b0e915f8f1fa 100644 --- a/lib/datadog_api_client/v1/models/usage_billable_summary_response.rb +++ b/lib/datadog_api_client/v1/models/usage_billable_summary_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response with monthly summary of data billed by Datadog. class UsageBillableSummaryResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of objects regarding usage of billable summary. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_hour.rb b/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_hour.rb index 1c7b29107270..5a2b39010087 100644 --- a/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Cloud Security Posture Management usage for a given organization for a given hour. class UsageCloudSecurityPostureManagementHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The total number of Cloud Security Posture Management containers during a given hour. attr_accessor :container_count @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_response.rb b/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_response.rb index 7f440c25c851..96d0af03a108 100644 --- a/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_response.rb +++ b/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The response containing the Cloud Security Posture Management usage for each hour for a given organization. class UsageCloudSecurityPostureManagementResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for Cloud Security Posture Management. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_custom_reports_attributes.rb b/lib/datadog_api_client/v1/models/usage_custom_reports_attributes.rb index 0cf3f9cb4b12..75fe30d81f49 100644 --- a/lib/datadog_api_client/v1/models/usage_custom_reports_attributes.rb +++ b/lib/datadog_api_client/v1/models/usage_custom_reports_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The response containing attributes for custom reports. class UsageCustomReportsAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The date the specified custom report was computed. attr_accessor :computed_on @@ -213,7 +216,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_custom_reports_data.rb b/lib/datadog_api_client/v1/models/usage_custom_reports_data.rb index 22d630884034..f515373e7705 100644 --- a/lib/datadog_api_client/v1/models/usage_custom_reports_data.rb +++ b/lib/datadog_api_client/v1/models/usage_custom_reports_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The response containing the date and type for custom reports. class UsageCustomReportsData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The date for specified custom reports. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_custom_reports_meta.rb b/lib/datadog_api_client/v1/models/usage_custom_reports_meta.rb index e90f1f9c0b3e..cbebd281b6b1 100644 --- a/lib/datadog_api_client/v1/models/usage_custom_reports_meta.rb +++ b/lib/datadog_api_client/v1/models/usage_custom_reports_meta.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The object containing document metadata. class UsageCustomReportsMeta + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :page # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_custom_reports_page.rb b/lib/datadog_api_client/v1/models/usage_custom_reports_page.rb index 6190b4bcdd9a..05b59dbe69ab 100644 --- a/lib/datadog_api_client/v1/models/usage_custom_reports_page.rb +++ b/lib/datadog_api_client/v1/models/usage_custom_reports_page.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The object containing page total count. class UsageCustomReportsPage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Total page count. attr_accessor :total_count @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_custom_reports_response.rb b/lib/datadog_api_client/v1/models/usage_custom_reports_response.rb index b7e20add347a..f52e78285283 100644 --- a/lib/datadog_api_client/v1/models/usage_custom_reports_response.rb +++ b/lib/datadog_api_client/v1/models/usage_custom_reports_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing available custom reports. class UsageCustomReportsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of available custom reports. attr_accessor :data @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_cws_hour.rb b/lib/datadog_api_client/v1/models/usage_cws_hour.rb index d02c9fd15ee1..3ab12de6a8c7 100644 --- a/lib/datadog_api_client/v1/models/usage_cws_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_cws_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Cloud Workload Security usage for a given organization for a given hour. class UsageCWSHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The total number of Cloud Workload Security container hours from the start of the given hour’s month until the given hour. attr_accessor :cws_container_count @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_cws_response.rb b/lib/datadog_api_client/v1/models/usage_cws_response.rb index 4319c0623156..8f4c5797cba7 100644 --- a/lib/datadog_api_client/v1/models/usage_cws_response.rb +++ b/lib/datadog_api_client/v1/models/usage_cws_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the Cloud Workload Security usage for each hour for a given organization. class UsageCWSResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for Cloud Workload Security. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_fargate_hour.rb b/lib/datadog_api_client/v1/models/usage_fargate_hour.rb index 8fb85a15034a..25aa06e923fc 100644 --- a/lib/datadog_api_client/v1/models/usage_fargate_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_fargate_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Number of Fargate tasks run and hourly usage. class UsageFargateHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The hour for the usage. attr_accessor :hour @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_fargate_response.rb b/lib/datadog_api_client/v1/models/usage_fargate_response.rb index 6aa1b26a33e5..b24ef4c5f4d3 100644 --- a/lib/datadog_api_client/v1/models/usage_fargate_response.rb +++ b/lib/datadog_api_client/v1/models/usage_fargate_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of Fargate tasks run and hourly usage. class UsageFargateResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array with the number of hourly Fargate tasks recorded for a given organization. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_host_hour.rb b/lib/datadog_api_client/v1/models/usage_host_hour.rb index c41d122140c7..108a1279ea9d 100644 --- a/lib/datadog_api_client/v1/models/usage_host_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_host_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Number of hosts/containers recorded for each hour for a given organization. class UsageHostHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Contains the total number of infrastructure hosts reporting during a given hour that were running the Datadog Agent. attr_accessor :agent_host_count @@ -301,7 +304,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_hosts_response.rb b/lib/datadog_api_client/v1/models/usage_hosts_response.rb index 4dd5eb1556b6..117bfa4f55b7 100644 --- a/lib/datadog_api_client/v1/models/usage_hosts_response.rb +++ b/lib/datadog_api_client/v1/models/usage_hosts_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Host usage response. class UsageHostsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of objects related to host usage. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_incident_management_hour.rb b/lib/datadog_api_client/v1/models/usage_incident_management_hour.rb index abe4ec008913..84b23c28e82c 100644 --- a/lib/datadog_api_client/v1/models/usage_incident_management_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_incident_management_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Incident management usage for a given organization for a given hour. class UsageIncidentManagementHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The hour for the usage. attr_accessor :hour @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_incident_management_response.rb b/lib/datadog_api_client/v1/models/usage_incident_management_response.rb index 55f200f3b6fb..fd7b5e0133ec 100644 --- a/lib/datadog_api_client/v1/models/usage_incident_management_response.rb +++ b/lib/datadog_api_client/v1/models/usage_incident_management_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the incident management usage for each hour for a given organization. class UsageIncidentManagementResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for incident management. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_indexed_spans_hour.rb b/lib/datadog_api_client/v1/models/usage_indexed_spans_hour.rb index aa10383ed03d..4e09ce5958a3 100644 --- a/lib/datadog_api_client/v1/models/usage_indexed_spans_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_indexed_spans_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The hours of indexed spans usage. class UsageIndexedSpansHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The hour for the usage. attr_accessor :hour @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_indexed_spans_response.rb b/lib/datadog_api_client/v1/models/usage_indexed_spans_response.rb index 9e89ce1eed44..a4be21bc6fd9 100644 --- a/lib/datadog_api_client/v1/models/usage_indexed_spans_response.rb +++ b/lib/datadog_api_client/v1/models/usage_indexed_spans_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A response containing indexed spans usage. class UsageIndexedSpansResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array with the number of hourly traces indexed for a given organization. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_ingested_spans_hour.rb b/lib/datadog_api_client/v1/models/usage_ingested_spans_hour.rb index bc7d2b1cda69..5df15b01652d 100644 --- a/lib/datadog_api_client/v1/models/usage_ingested_spans_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_ingested_spans_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Ingested spans usage for a given organization for a given hour. class UsageIngestedSpansHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The hour for the usage. attr_accessor :hour @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_ingested_spans_response.rb b/lib/datadog_api_client/v1/models/usage_ingested_spans_response.rb index 46436abd448b..e49d4095f5bf 100644 --- a/lib/datadog_api_client/v1/models/usage_ingested_spans_response.rb +++ b/lib/datadog_api_client/v1/models/usage_ingested_spans_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the ingested spans usage for each hour for a given organization. class UsageIngestedSpansResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for ingested spans. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_io_t_hour.rb b/lib/datadog_api_client/v1/models/usage_io_t_hour.rb index 4c8029a1bffc..394241a56d5e 100644 --- a/lib/datadog_api_client/v1/models/usage_io_t_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_io_t_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # IoT usage for a given organization for a given hour. class UsageIoTHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The hour for the usage. attr_accessor :hour @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_io_t_response.rb b/lib/datadog_api_client/v1/models/usage_io_t_response.rb index d380a1b40d0d..3683d6b9ac3f 100644 --- a/lib/datadog_api_client/v1/models/usage_io_t_response.rb +++ b/lib/datadog_api_client/v1/models/usage_io_t_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the IoT usage for each hour for a given organization. class UsageIoTResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for IoT. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_lambda_hour.rb b/lib/datadog_api_client/v1/models/usage_lambda_hour.rb index fe9f208501c8..6761e08e0de7 100644 --- a/lib/datadog_api_client/v1/models/usage_lambda_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_lambda_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Number of lambda functions and sum of the invocations of all lambda functions for each hour for a given organization. class UsageLambdaHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Contains the number of different functions for each region and AWS account. attr_accessor :func_count @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_lambda_response.rb b/lib/datadog_api_client/v1/models/usage_lambda_response.rb index 973770c8e923..2d4a0d6cc375 100644 --- a/lib/datadog_api_client/v1/models/usage_lambda_response.rb +++ b/lib/datadog_api_client/v1/models/usage_lambda_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of lambda functions and sum of the invocations of all lambda functions for each hour for a given organization. class UsageLambdaResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for Lambda. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_logs_by_index_hour.rb b/lib/datadog_api_client/v1/models/usage_logs_by_index_hour.rb index c253360d499e..17c4df2cb116 100644 --- a/lib/datadog_api_client/v1/models/usage_logs_by_index_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_logs_by_index_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Number of indexed logs for each hour and index for a given organization. class UsageLogsByIndexHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The total number of indexed logs for the queried hour. attr_accessor :event_count @@ -211,7 +214,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_logs_by_index_response.rb b/lib/datadog_api_client/v1/models/usage_logs_by_index_response.rb index dffcd4f7b1e8..7fac69f16c54 100644 --- a/lib/datadog_api_client/v1/models/usage_logs_by_index_response.rb +++ b/lib/datadog_api_client/v1/models/usage_logs_by_index_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of indexed logs for each hour and index for a given organization. class UsageLogsByIndexResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of objects regarding hourly usage of logs by index response. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_logs_by_retention_hour.rb b/lib/datadog_api_client/v1/models/usage_logs_by_retention_hour.rb index 50011c0768b3..f34fd9b5865c 100644 --- a/lib/datadog_api_client/v1/models/usage_logs_by_retention_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_logs_by_retention_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The number of indexed logs for each hour for a given organization broken down by retention period. class UsageLogsByRetentionHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Total logs indexed with this retention period during a given hour. attr_accessor :indexed_events_count @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_logs_by_retention_response.rb b/lib/datadog_api_client/v1/models/usage_logs_by_retention_response.rb index dc6d06ddea93..75ab72f46b4a 100644 --- a/lib/datadog_api_client/v1/models/usage_logs_by_retention_response.rb +++ b/lib/datadog_api_client/v1/models/usage_logs_by_retention_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the indexed logs usage broken down by retention period for an organization during a given hour. class UsageLogsByRetentionResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for indexed logs by retention period. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_logs_hour.rb b/lib/datadog_api_client/v1/models/usage_logs_hour.rb index 8d572a6dd81d..d8b9610e28b5 100644 --- a/lib/datadog_api_client/v1/models/usage_logs_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_logs_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Hour usage for logs. class UsageLogsHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Contains the number of billable log bytes ingested. attr_accessor :billable_ingested_bytes @@ -241,7 +244,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_logs_response.rb b/lib/datadog_api_client/v1/models/usage_logs_response.rb index 36e05646a1d1..6eab9d23692b 100644 --- a/lib/datadog_api_client/v1/models/usage_logs_response.rb +++ b/lib/datadog_api_client/v1/models/usage_logs_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of logs for each hour. class UsageLogsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of objects regarding hourly usage of logs. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_metric_category.rb b/lib/datadog_api_client/v1/models/usage_metric_category.rb index f3b5ee0a81f9..8c70f3e3ecf8 100644 --- a/lib/datadog_api_client/v1/models/usage_metric_category.rb +++ b/lib/datadog_api_client/v1/models/usage_metric_category.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = UsageMetricCategory.constants.select { |c| UsageMetricCategory::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #UsageMetricCategory" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/usage_network_flows_hour.rb b/lib/datadog_api_client/v1/models/usage_network_flows_hour.rb index b02afd658e69..c92cb8778fde 100644 --- a/lib/datadog_api_client/v1/models/usage_network_flows_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_network_flows_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Number of netflow events indexed for each hour for a given organization. class UsageNetworkFlowsHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The hour for the usage. attr_accessor :hour @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_network_flows_response.rb b/lib/datadog_api_client/v1/models/usage_network_flows_response.rb index e7094be8f905..4277ce85effd 100644 --- a/lib/datadog_api_client/v1/models/usage_network_flows_response.rb +++ b/lib/datadog_api_client/v1/models/usage_network_flows_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of netflow events indexed for each hour for a given organization. class UsageNetworkFlowsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for Network Flows. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_network_hosts_hour.rb b/lib/datadog_api_client/v1/models/usage_network_hosts_hour.rb index f48c22252615..126099afea39 100644 --- a/lib/datadog_api_client/v1/models/usage_network_hosts_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_network_hosts_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Number of active NPM hosts for each hour for a given organization. class UsageNetworkHostsHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Contains the number of active NPM hosts. attr_accessor :host_count @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_network_hosts_response.rb b/lib/datadog_api_client/v1/models/usage_network_hosts_response.rb index e76322c42e71..9dc9fcab12fc 100644 --- a/lib/datadog_api_client/v1/models/usage_network_hosts_response.rb +++ b/lib/datadog_api_client/v1/models/usage_network_hosts_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of active NPM hosts for each hour for a given organization. class UsageNetworkHostsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for NPM hosts. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_profiling_hour.rb b/lib/datadog_api_client/v1/models/usage_profiling_hour.rb index fbe41ee78307..88bf00c0c541 100644 --- a/lib/datadog_api_client/v1/models/usage_profiling_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_profiling_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The number of profiled hosts for each hour for a given organization. class UsageProfilingHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get average number of container agents for that hour. attr_accessor :avg_container_agent_count @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_profiling_response.rb b/lib/datadog_api_client/v1/models/usage_profiling_response.rb index 9a02d56bbfd1..79133f3a8426 100644 --- a/lib/datadog_api_client/v1/models/usage_profiling_response.rb +++ b/lib/datadog_api_client/v1/models/usage_profiling_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of profiled hosts for each hour for a given organization. class UsageProfilingResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for profiled hosts. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_reports_type.rb b/lib/datadog_api_client/v1/models/usage_reports_type.rb index 4a67f7fff366..0cee288c2463 100644 --- a/lib/datadog_api_client/v1/models/usage_reports_type.rb +++ b/lib/datadog_api_client/v1/models/usage_reports_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = UsageReportsType.constants.select { |c| UsageReportsType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #UsageReportsType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/usage_rum_sessions_hour.rb b/lib/datadog_api_client/v1/models/usage_rum_sessions_hour.rb index 651a318620e2..95b1aaaa89af 100644 --- a/lib/datadog_api_client/v1/models/usage_rum_sessions_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_rum_sessions_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Number of RUM Sessions recorded for each hour for a given organization. class UsageRumSessionsHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The hour for the usage. attr_accessor :hour @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_rum_sessions_response.rb b/lib/datadog_api_client/v1/models/usage_rum_sessions_response.rb index cb23659cba81..485feb0e9c07 100644 --- a/lib/datadog_api_client/v1/models/usage_rum_sessions_response.rb +++ b/lib/datadog_api_client/v1/models/usage_rum_sessions_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of RUM Sessions for each hour for a given organization. class UsageRumSessionsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for RUM Sessions. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_snmp_hour.rb b/lib/datadog_api_client/v1/models/usage_snmp_hour.rb index cf0c549cf43a..e853611f339c 100644 --- a/lib/datadog_api_client/v1/models/usage_snmp_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_snmp_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The number of SNMP devices for each hour for a given organization. class UsageSNMPHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The hour for the usage. attr_accessor :hour @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_snmp_response.rb b/lib/datadog_api_client/v1/models/usage_snmp_response.rb index 8316d2ca28c7..8d5daf1a7333 100644 --- a/lib/datadog_api_client/v1/models/usage_snmp_response.rb +++ b/lib/datadog_api_client/v1/models/usage_snmp_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of SNMP devices for each hour for a given organization. class UsageSNMPResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for SNMP devices. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_sort.rb b/lib/datadog_api_client/v1/models/usage_sort.rb index 8be15664bbdd..debe105ba380 100644 --- a/lib/datadog_api_client/v1/models/usage_sort.rb +++ b/lib/datadog_api_client/v1/models/usage_sort.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = UsageSort.constants.select { |c| UsageSort::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #UsageSort" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/usage_sort_direction.rb b/lib/datadog_api_client/v1/models/usage_sort_direction.rb index 748175c3b885..623fd24ccb9d 100644 --- a/lib/datadog_api_client/v1/models/usage_sort_direction.rb +++ b/lib/datadog_api_client/v1/models/usage_sort_direction.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = UsageSortDirection.constants.select { |c| UsageSortDirection::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #UsageSortDirection" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/usage_specified_custom_reports_attributes.rb b/lib/datadog_api_client/v1/models/usage_specified_custom_reports_attributes.rb index 5873da214998..e670c9ed8d3e 100644 --- a/lib/datadog_api_client/v1/models/usage_specified_custom_reports_attributes.rb +++ b/lib/datadog_api_client/v1/models/usage_specified_custom_reports_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The response containing attributes for specified custom reports. class UsageSpecifiedCustomReportsAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The date the specified custom report was computed. attr_accessor :computed_on @@ -223,7 +226,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_specified_custom_reports_data.rb b/lib/datadog_api_client/v1/models/usage_specified_custom_reports_data.rb index 3910f22cd398..f5a4a64fa2e8 100644 --- a/lib/datadog_api_client/v1/models/usage_specified_custom_reports_data.rb +++ b/lib/datadog_api_client/v1/models/usage_specified_custom_reports_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing date and type for specified custom reports. class UsageSpecifiedCustomReportsData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The date for specified custom reports. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_specified_custom_reports_meta.rb b/lib/datadog_api_client/v1/models/usage_specified_custom_reports_meta.rb index eeff92222e6e..922bfcffd521 100644 --- a/lib/datadog_api_client/v1/models/usage_specified_custom_reports_meta.rb +++ b/lib/datadog_api_client/v1/models/usage_specified_custom_reports_meta.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The object containing document metadata. class UsageSpecifiedCustomReportsMeta + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :page # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_specified_custom_reports_page.rb b/lib/datadog_api_client/v1/models/usage_specified_custom_reports_page.rb index 7719f5d4c19c..55d8263c5654 100644 --- a/lib/datadog_api_client/v1/models/usage_specified_custom_reports_page.rb +++ b/lib/datadog_api_client/v1/models/usage_specified_custom_reports_page.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The object containing page total count for specified ID. class UsageSpecifiedCustomReportsPage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Total page count. attr_accessor :total_count @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_specified_custom_reports_response.rb b/lib/datadog_api_client/v1/models/usage_specified_custom_reports_response.rb index ceba11768d24..7fbf33453919 100644 --- a/lib/datadog_api_client/v1/models/usage_specified_custom_reports_response.rb +++ b/lib/datadog_api_client/v1/models/usage_specified_custom_reports_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Returns available specified custom reports. class UsageSpecifiedCustomReportsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data attr_accessor :meta @@ -179,7 +182,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_summary_date.rb b/lib/datadog_api_client/v1/models/usage_summary_date.rb index 749426a360b2..34e68ca6df45 100644 --- a/lib/datadog_api_client/v1/models/usage_summary_date.rb +++ b/lib/datadog_api_client/v1/models/usage_summary_date.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response with hourly report of all data billed by Datadog all organizations. class UsageSummaryDate + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Shows the 99th percentile of all agent hosts over all hours in the current date for all organizations. attr_accessor :agent_host_top99p @@ -593,7 +596,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_summary_date_org.rb b/lib/datadog_api_client/v1/models/usage_summary_date_org.rb index a9e6e17c3758..61d3be3e06c9 100644 --- a/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +++ b/lib/datadog_api_client/v1/models/usage_summary_date_org.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Global hourly report of all data billed by Datadog for a given organization. class UsageSummaryDateOrg + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Shows the 99th percentile of all agent hosts over all hours in the current date for the given org. attr_accessor :agent_host_top99p @@ -601,7 +604,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_summary_response.rb b/lib/datadog_api_client/v1/models/usage_summary_response.rb index a1b009c8a5ae..42f53c14341d 100644 --- a/lib/datadog_api_client/v1/models/usage_summary_response.rb +++ b/lib/datadog_api_client/v1/models/usage_summary_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response with hourly report of all data billed by Datadog all organizations. class UsageSummaryResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Shows the 99th percentile of all agent hosts over all hours in the current months for all organizations. attr_accessor :agent_host_top99p_sum @@ -682,7 +685,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_synthetics_api_hour.rb b/lib/datadog_api_client/v1/models/usage_synthetics_api_hour.rb index 9088b7c43c4f..9098a506603d 100644 --- a/lib/datadog_api_client/v1/models/usage_synthetics_api_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_synthetics_api_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Number of Synthetics API tests run for each hour for a given organization. class UsageSyntheticsAPIHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Contains the number of Synthetics API tests run. attr_accessor :check_calls_count @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_synthetics_api_response.rb b/lib/datadog_api_client/v1/models/usage_synthetics_api_response.rb index 3004c84b6fed..014e40ca18a9 100644 --- a/lib/datadog_api_client/v1/models/usage_synthetics_api_response.rb +++ b/lib/datadog_api_client/v1/models/usage_synthetics_api_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of Synthetics API tests run for each hour for a given organization. class UsageSyntheticsAPIResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for Synthetics API tests. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_synthetics_browser_hour.rb b/lib/datadog_api_client/v1/models/usage_synthetics_browser_hour.rb index 2771370bbc8b..4ee28d39f897 100644 --- a/lib/datadog_api_client/v1/models/usage_synthetics_browser_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_synthetics_browser_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Number of Synthetics Browser tests run for each hour for a given organization. class UsageSyntheticsBrowserHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Contains the number of Synthetics Browser tests run. attr_accessor :browser_check_calls_count @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_synthetics_browser_response.rb b/lib/datadog_api_client/v1/models/usage_synthetics_browser_response.rb index 63b4f0e76dac..743f77ceddf2 100644 --- a/lib/datadog_api_client/v1/models/usage_synthetics_browser_response.rb +++ b/lib/datadog_api_client/v1/models/usage_synthetics_browser_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of Synthetics Browser tests run for each hour for a given organization. class UsageSyntheticsBrowserResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Get hourly usage for Synthetics Browser tests. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_synthetics_hour.rb b/lib/datadog_api_client/v1/models/usage_synthetics_hour.rb index cf50107c97f1..1bc180b60552 100644 --- a/lib/datadog_api_client/v1/models/usage_synthetics_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_synthetics_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The number of synthetics tests run for each hour for a given organization. class UsageSyntheticsHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Contains the number of Synthetics API tests run. attr_accessor :check_calls_count @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_synthetics_response.rb b/lib/datadog_api_client/v1/models/usage_synthetics_response.rb index 789d15cca6be..fa255536f9bb 100644 --- a/lib/datadog_api_client/v1/models/usage_synthetics_response.rb +++ b/lib/datadog_api_client/v1/models/usage_synthetics_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of Synthetics API tests run for each hour for a given organization. class UsageSyntheticsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array with the number of hourly Synthetics test run for a given organization. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_timeseries_hour.rb b/lib/datadog_api_client/v1/models/usage_timeseries_hour.rb index 0ab0fe3c3d16..bdb2b0bbc620 100644 --- a/lib/datadog_api_client/v1/models/usage_timeseries_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_timeseries_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The hourly usage of timeseries. class UsageTimeseriesHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The hour for the usage. attr_accessor :hour @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_timeseries_response.rb b/lib/datadog_api_client/v1/models/usage_timeseries_response.rb index 93223600c7d3..c7c2a04a13dc 100644 --- a/lib/datadog_api_client/v1/models/usage_timeseries_response.rb +++ b/lib/datadog_api_client/v1/models/usage_timeseries_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing hourly usage of timeseries. class UsageTimeseriesResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of objects regarding hourly usage of timeseries. attr_accessor :usage @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_top_avg_metrics_hour.rb b/lib/datadog_api_client/v1/models/usage_top_avg_metrics_hour.rb index 25302082d8e7..ac6f3742646c 100644 --- a/lib/datadog_api_client/v1/models/usage_top_avg_metrics_hour.rb +++ b/lib/datadog_api_client/v1/models/usage_top_avg_metrics_hour.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Number of hourly recorded custom metrics for a given organization. class UsageTopAvgMetricsHour + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Average number of timeseries per hour in which the metric occurs. attr_accessor :avg_metric_hour @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_top_avg_metrics_metadata.rb b/lib/datadog_api_client/v1/models/usage_top_avg_metrics_metadata.rb index 97428aca854c..c786878f9ef1 100644 --- a/lib/datadog_api_client/v1/models/usage_top_avg_metrics_metadata.rb +++ b/lib/datadog_api_client/v1/models/usage_top_avg_metrics_metadata.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The object containing document metadata. class UsageTopAvgMetricsMetadata + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The day value from the user request that contains the returned usage data. (If day was used the request) attr_accessor :day @@ -190,7 +193,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/usage_top_avg_metrics_response.rb b/lib/datadog_api_client/v1/models/usage_top_avg_metrics_response.rb index c62c90cd0f34..69db8e4dd987 100644 --- a/lib/datadog_api_client/v1/models/usage_top_avg_metrics_response.rb +++ b/lib/datadog_api_client/v1/models/usage_top_avg_metrics_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Response containing the number of hourly recorded custom metrics for a given organization. class UsageTopAvgMetricsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :metadata # Number of hourly recorded custom metrics for a given organization. @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/user.rb b/lib/datadog_api_client/v1/models/user.rb index d416887f8360..8d6af09a8b40 100644 --- a/lib/datadog_api_client/v1/models/user.rb +++ b/lib/datadog_api_client/v1/models/user.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Create, edit, and disable users. class User + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :access_role # The new disabled status of the user. @@ -232,7 +235,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/user_disable_response.rb b/lib/datadog_api_client/v1/models/user_disable_response.rb index 5015d5376ccf..b029b291e20a 100644 --- a/lib/datadog_api_client/v1/models/user_disable_response.rb +++ b/lib/datadog_api_client/v1/models/user_disable_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Array of user disabled for a given organization. class UserDisableResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Information pertaining to a user disabled for a given organization. attr_accessor :message @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/user_list_response.rb b/lib/datadog_api_client/v1/models/user_list_response.rb index 624c29dd9292..71d4be7ab6c1 100644 --- a/lib/datadog_api_client/v1/models/user_list_response.rb +++ b/lib/datadog_api_client/v1/models/user_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Array of Datadog users for a given organization. class UserListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of users. attr_accessor :users @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/user_response.rb b/lib/datadog_api_client/v1/models/user_response.rb index 48d3b4050d7a..50989e28dfdd 100644 --- a/lib/datadog_api_client/v1/models/user_response.rb +++ b/lib/datadog_api_client/v1/models/user_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # A Datadog User. class UserResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :user # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/webhooks_integration.rb b/lib/datadog_api_client/v1/models/webhooks_integration.rb index 4aa9128043b5..16c33df07445 100644 --- a/lib/datadog_api_client/v1/models/webhooks_integration.rb +++ b/lib/datadog_api_client/v1/models/webhooks_integration.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Datadog-Webhooks integration. class WebhooksIntegration + # whether the object has unparsed attributes + attr_accessor :_unparsed + # If `null`, uses no header. If given a JSON payload, these will be headers attached to your webhook. attr_accessor :custom_headers @@ -224,7 +227,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/webhooks_integration_custom_variable.rb b/lib/datadog_api_client/v1/models/webhooks_integration_custom_variable.rb index 534b0924a4fc..d422585c5b59 100644 --- a/lib/datadog_api_client/v1/models/webhooks_integration_custom_variable.rb +++ b/lib/datadog_api_client/v1/models/webhooks_integration_custom_variable.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Custom variable for Webhook integration. class WebhooksIntegrationCustomVariable + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Make custom variable is secret or not. If the custom variable is secret, the value is not returned in the response payload. attr_accessor :is_secret @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/webhooks_integration_custom_variable_response.rb b/lib/datadog_api_client/v1/models/webhooks_integration_custom_variable_response.rb index c2de11f67a5b..057a8fc5aa53 100644 --- a/lib/datadog_api_client/v1/models/webhooks_integration_custom_variable_response.rb +++ b/lib/datadog_api_client/v1/models/webhooks_integration_custom_variable_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Custom variable for Webhook integration. class WebhooksIntegrationCustomVariableResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Make custom variable is secret or not. If the custom variable is secret, the value is not returned in the response payload. attr_accessor :is_secret @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/webhooks_integration_custom_variable_update_request.rb b/lib/datadog_api_client/v1/models/webhooks_integration_custom_variable_update_request.rb index aeb0547171ec..44d1891d0808 100644 --- a/lib/datadog_api_client/v1/models/webhooks_integration_custom_variable_update_request.rb +++ b/lib/datadog_api_client/v1/models/webhooks_integration_custom_variable_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Update request of a custom variable object. *All properties are optional.* class WebhooksIntegrationCustomVariableUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Make custom variable is secret or not. If the custom variable is secret, the value is not returned in the response payload. attr_accessor :is_secret @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/webhooks_integration_encoding.rb b/lib/datadog_api_client/v1/models/webhooks_integration_encoding.rb index fd685e7a09d5..9f7564d4c568 100644 --- a/lib/datadog_api_client/v1/models/webhooks_integration_encoding.rb +++ b/lib/datadog_api_client/v1/models/webhooks_integration_encoding.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WebhooksIntegrationEncoding.constants.select { |c| WebhooksIntegrationEncoding::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WebhooksIntegrationEncoding" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/webhooks_integration_update_request.rb b/lib/datadog_api_client/v1/models/webhooks_integration_update_request.rb index de8102bb8c5e..5c273900e78d 100644 --- a/lib/datadog_api_client/v1/models/webhooks_integration_update_request.rb +++ b/lib/datadog_api_client/v1/models/webhooks_integration_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Update request of a Webhooks integration object. *All properties are optional.* class WebhooksIntegrationUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # If `null`, uses no header. If given a JSON payload, these will be headers attached to your webhook. attr_accessor :custom_headers @@ -213,7 +216,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget.rb b/lib/datadog_api_client/v1/models/widget.rb index c93495f4eff8..88238b8e1c28 100644 --- a/lib/datadog_api_client/v1/models/widget.rb +++ b/lib/datadog_api_client/v1/models/widget.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Information about widget. **Note**: The `layout` property is required for widgets in dashboards with `free` `layout_type`. For the **new dashboard layout**, the `layout` property depends on the `reflow_type` of the dashboard. - If `reflow_type` is `fixed`, `layout` is required. - If `reflow_type` is `auto`, `layout` should not be set. class Widget + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :definition # ID of the widget. @@ -194,7 +197,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_aggregator.rb b/lib/datadog_api_client/v1/models/widget_aggregator.rb index 17e561b4e4d0..fe548ca951d4 100644 --- a/lib/datadog_api_client/v1/models/widget_aggregator.rb +++ b/lib/datadog_api_client/v1/models/widget_aggregator.rb @@ -37,8 +37,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetAggregator.constants.select { |c| WidgetAggregator::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetAggregator" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_axis.rb b/lib/datadog_api_client/v1/models/widget_axis.rb index 3880f593a690..b983e4d0b805 100644 --- a/lib/datadog_api_client/v1/models/widget_axis.rb +++ b/lib/datadog_api_client/v1/models/widget_axis.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Axis controls for the widget. class WidgetAxis + # whether the object has unparsed attributes + attr_accessor :_unparsed + # True includes zero. attr_accessor :include_zero @@ -217,7 +220,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_change_type.rb b/lib/datadog_api_client/v1/models/widget_change_type.rb index 113aa7e6895b..63a707caafea 100644 --- a/lib/datadog_api_client/v1/models/widget_change_type.rb +++ b/lib/datadog_api_client/v1/models/widget_change_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetChangeType.constants.select { |c| WidgetChangeType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetChangeType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_color_preference.rb b/lib/datadog_api_client/v1/models/widget_color_preference.rb index a7f9ee7932f6..0c5f815d0da4 100644 --- a/lib/datadog_api_client/v1/models/widget_color_preference.rb +++ b/lib/datadog_api_client/v1/models/widget_color_preference.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetColorPreference.constants.select { |c| WidgetColorPreference::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetColorPreference" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_comparator.rb b/lib/datadog_api_client/v1/models/widget_comparator.rb index 82ed9e866872..b8fb49aba274 100644 --- a/lib/datadog_api_client/v1/models/widget_comparator.rb +++ b/lib/datadog_api_client/v1/models/widget_comparator.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetComparator.constants.select { |c| WidgetComparator::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetComparator" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_compare_to.rb b/lib/datadog_api_client/v1/models/widget_compare_to.rb index 0ffc552c6292..068b76539950 100644 --- a/lib/datadog_api_client/v1/models/widget_compare_to.rb +++ b/lib/datadog_api_client/v1/models/widget_compare_to.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetCompareTo.constants.select { |c| WidgetCompareTo::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetCompareTo" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_conditional_format.rb b/lib/datadog_api_client/v1/models/widget_conditional_format.rb index e9acba5ee7bb..b7de146db66e 100644 --- a/lib/datadog_api_client/v1/models/widget_conditional_format.rb +++ b/lib/datadog_api_client/v1/models/widget_conditional_format.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Define a conditional format for the widget. class WidgetConditionalFormat + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :comparator # Color palette to apply to the background, same values available as palette. @@ -264,7 +267,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_custom_link.rb b/lib/datadog_api_client/v1/models/widget_custom_link.rb index ea7cd630bbdb..68e333d4fefb 100644 --- a/lib/datadog_api_client/v1/models/widget_custom_link.rb +++ b/lib/datadog_api_client/v1/models/widget_custom_link.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Custom links help you connect a data value to a URL, like a Datadog page or your AWS console. class WidgetCustomLink + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The flag for toggling context menu link visibility. attr_accessor :is_hidden @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_definition.rb b/lib/datadog_api_client/v1/models/widget_definition.rb index 2bbf07b0d9a1..c2dcde375f85 100644 --- a/lib/datadog_api_client/v1/models/widget_definition.rb +++ b/lib/datadog_api_client/v1/models/widget_definition.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V1 # [Definition of the widget](https://docs.datadoghq.com/dashboards/widgets/). module WidgetDefinition class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -68,12 +70,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V1::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v1/models/widget_display_type.rb b/lib/datadog_api_client/v1/models/widget_display_type.rb index 505fcc972747..3ea5428b0c64 100644 --- a/lib/datadog_api_client/v1/models/widget_display_type.rb +++ b/lib/datadog_api_client/v1/models/widget_display_type.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetDisplayType.constants.select { |c| WidgetDisplayType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetDisplayType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_event.rb b/lib/datadog_api_client/v1/models/widget_event.rb index 658ddfdda7e9..b1951f880fce 100644 --- a/lib/datadog_api_client/v1/models/widget_event.rb +++ b/lib/datadog_api_client/v1/models/widget_event.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Event overlay control options. See the dedicated [Events JSON schema documentation](https://docs.datadoghq.com/dashboards/graphing_json/widget_json/#events-schema) to learn how to build the ``. class WidgetEvent + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Query definition. attr_accessor :q @@ -186,7 +189,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_event_size.rb b/lib/datadog_api_client/v1/models/widget_event_size.rb index ef3e248f9afe..8b71c67fc132 100644 --- a/lib/datadog_api_client/v1/models/widget_event_size.rb +++ b/lib/datadog_api_client/v1/models/widget_event_size.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetEventSize.constants.select { |c| WidgetEventSize::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetEventSize" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_field_sort.rb b/lib/datadog_api_client/v1/models/widget_field_sort.rb index 9c6d3afb0db9..8c87429bf456 100644 --- a/lib/datadog_api_client/v1/models/widget_field_sort.rb +++ b/lib/datadog_api_client/v1/models/widget_field_sort.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Which column and order to sort by class WidgetFieldSort + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Facet path for the column attr_accessor :column @@ -190,7 +193,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_formula.rb b/lib/datadog_api_client/v1/models/widget_formula.rb index 5ba0b9c764ef..64f4ba7a2da3 100644 --- a/lib/datadog_api_client/v1/models/widget_formula.rb +++ b/lib/datadog_api_client/v1/models/widget_formula.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Formula to be used in a widget query. class WidgetFormula + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Expression alias. attr_accessor :_alias @@ -216,7 +219,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_formula_limit.rb b/lib/datadog_api_client/v1/models/widget_formula_limit.rb index 1adc27598459..d7976e9a85f3 100644 --- a/lib/datadog_api_client/v1/models/widget_formula_limit.rb +++ b/lib/datadog_api_client/v1/models/widget_formula_limit.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Options for limiting results returned. class WidgetFormulaLimit + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Number of results to return. attr_accessor :count @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_grouping.rb b/lib/datadog_api_client/v1/models/widget_grouping.rb index 361ab3e09f2d..cd1ae3e3c35b 100644 --- a/lib/datadog_api_client/v1/models/widget_grouping.rb +++ b/lib/datadog_api_client/v1/models/widget_grouping.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetGrouping.constants.select { |c| WidgetGrouping::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetGrouping" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_horizontal_align.rb b/lib/datadog_api_client/v1/models/widget_horizontal_align.rb index 07894b68a528..b9443c69c825 100644 --- a/lib/datadog_api_client/v1/models/widget_horizontal_align.rb +++ b/lib/datadog_api_client/v1/models/widget_horizontal_align.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetHorizontalAlign.constants.select { |c| WidgetHorizontalAlign::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetHorizontalAlign" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_image_sizing.rb b/lib/datadog_api_client/v1/models/widget_image_sizing.rb index 8d4261b1872d..0077d2888781 100644 --- a/lib/datadog_api_client/v1/models/widget_image_sizing.rb +++ b/lib/datadog_api_client/v1/models/widget_image_sizing.rb @@ -39,8 +39,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetImageSizing.constants.select { |c| WidgetImageSizing::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetImageSizing" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_layout.rb b/lib/datadog_api_client/v1/models/widget_layout.rb index 0a53f9f63edf..a2437ac480a9 100644 --- a/lib/datadog_api_client/v1/models/widget_layout.rb +++ b/lib/datadog_api_client/v1/models/widget_layout.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # The layout for a widget on a `free` or **new dashboard layout** dashboard. class WidgetLayout + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The height of the widget. Should be a non-negative integer. attr_accessor :height @@ -307,7 +310,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_layout_type.rb b/lib/datadog_api_client/v1/models/widget_layout_type.rb index 54a4a9785ef0..63f9ac9ae553 100644 --- a/lib/datadog_api_client/v1/models/widget_layout_type.rb +++ b/lib/datadog_api_client/v1/models/widget_layout_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetLayoutType.constants.select { |c| WidgetLayoutType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetLayoutType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_line_type.rb b/lib/datadog_api_client/v1/models/widget_line_type.rb index 4a9f62264162..8ab4333fc79d 100644 --- a/lib/datadog_api_client/v1/models/widget_line_type.rb +++ b/lib/datadog_api_client/v1/models/widget_line_type.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetLineType.constants.select { |c| WidgetLineType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetLineType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_line_width.rb b/lib/datadog_api_client/v1/models/widget_line_width.rb index 763696a7ec0f..f50cfbd1387c 100644 --- a/lib/datadog_api_client/v1/models/widget_line_width.rb +++ b/lib/datadog_api_client/v1/models/widget_line_width.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetLineWidth.constants.select { |c| WidgetLineWidth::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetLineWidth" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_live_span.rb b/lib/datadog_api_client/v1/models/widget_live_span.rb index d0cdf6682f42..501a0ed4e1a7 100644 --- a/lib/datadog_api_client/v1/models/widget_live_span.rb +++ b/lib/datadog_api_client/v1/models/widget_live_span.rb @@ -46,8 +46,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetLiveSpan.constants.select { |c| WidgetLiveSpan::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetLiveSpan" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_margin.rb b/lib/datadog_api_client/v1/models/widget_margin.rb index a3f6eebc6f51..efb4c397bc01 100644 --- a/lib/datadog_api_client/v1/models/widget_margin.rb +++ b/lib/datadog_api_client/v1/models/widget_margin.rb @@ -36,8 +36,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetMargin.constants.select { |c| WidgetMargin::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetMargin" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_marker.rb b/lib/datadog_api_client/v1/models/widget_marker.rb index 9e8b1aaa3c3c..348be853b4fb 100644 --- a/lib/datadog_api_client/v1/models/widget_marker.rb +++ b/lib/datadog_api_client/v1/models/widget_marker.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Markers allow you to add visual conditional formatting for your graphs. class WidgetMarker + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Combination of: - A severity error, warning, ok, or info - A line type: dashed, solid, or bold In this case of a Distribution widget, this can be set to be `x_axis_percentile`. attr_accessor :display_type @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_message_display.rb b/lib/datadog_api_client/v1/models/widget_message_display.rb index 240e2fe6c58a..310407da30fd 100644 --- a/lib/datadog_api_client/v1/models/widget_message_display.rb +++ b/lib/datadog_api_client/v1/models/widget_message_display.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetMessageDisplay.constants.select { |c| WidgetMessageDisplay::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetMessageDisplay" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_monitor_summary_display_format.rb b/lib/datadog_api_client/v1/models/widget_monitor_summary_display_format.rb index c77e46fe174b..62aea335a104 100644 --- a/lib/datadog_api_client/v1/models/widget_monitor_summary_display_format.rb +++ b/lib/datadog_api_client/v1/models/widget_monitor_summary_display_format.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetMonitorSummaryDisplayFormat.constants.select { |c| WidgetMonitorSummaryDisplayFormat::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetMonitorSummaryDisplayFormat" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_monitor_summary_sort.rb b/lib/datadog_api_client/v1/models/widget_monitor_summary_sort.rb index 8a10093bad3d..61ff94b29eef 100644 --- a/lib/datadog_api_client/v1/models/widget_monitor_summary_sort.rb +++ b/lib/datadog_api_client/v1/models/widget_monitor_summary_sort.rb @@ -46,8 +46,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetMonitorSummarySort.constants.select { |c| WidgetMonitorSummarySort::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetMonitorSummarySort" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_node_type.rb b/lib/datadog_api_client/v1/models/widget_node_type.rb index ae0e8d98c49c..6a8b902d2466 100644 --- a/lib/datadog_api_client/v1/models/widget_node_type.rb +++ b/lib/datadog_api_client/v1/models/widget_node_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetNodeType.constants.select { |c| WidgetNodeType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetNodeType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_order_by.rb b/lib/datadog_api_client/v1/models/widget_order_by.rb index b0f1d6327141..9b7f0f1bffa1 100644 --- a/lib/datadog_api_client/v1/models/widget_order_by.rb +++ b/lib/datadog_api_client/v1/models/widget_order_by.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetOrderBy.constants.select { |c| WidgetOrderBy::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetOrderBy" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_palette.rb b/lib/datadog_api_client/v1/models/widget_palette.rb index 853b85c52453..b9fcdf1f06e2 100644 --- a/lib/datadog_api_client/v1/models/widget_palette.rb +++ b/lib/datadog_api_client/v1/models/widget_palette.rb @@ -50,8 +50,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetPalette.constants.select { |c| WidgetPalette::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetPalette" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_request_style.rb b/lib/datadog_api_client/v1/models/widget_request_style.rb index b0443951b0d7..ecfc8d4bd3c1 100644 --- a/lib/datadog_api_client/v1/models/widget_request_style.rb +++ b/lib/datadog_api_client/v1/models/widget_request_style.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Define request widget style. class WidgetRequestStyle + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :line_type attr_accessor :line_width @@ -189,7 +192,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_service_summary_display_format.rb b/lib/datadog_api_client/v1/models/widget_service_summary_display_format.rb index 3c8c50f7652e..7c9b7127448d 100644 --- a/lib/datadog_api_client/v1/models/widget_service_summary_display_format.rb +++ b/lib/datadog_api_client/v1/models/widget_service_summary_display_format.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetServiceSummaryDisplayFormat.constants.select { |c| WidgetServiceSummaryDisplayFormat::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetServiceSummaryDisplayFormat" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_size_format.rb b/lib/datadog_api_client/v1/models/widget_size_format.rb index 14139f8d6f0e..d09fcfeee064 100644 --- a/lib/datadog_api_client/v1/models/widget_size_format.rb +++ b/lib/datadog_api_client/v1/models/widget_size_format.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetSizeFormat.constants.select { |c| WidgetSizeFormat::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetSizeFormat" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_sort.rb b/lib/datadog_api_client/v1/models/widget_sort.rb index 8def2a9c638b..198fa123ec38 100644 --- a/lib/datadog_api_client/v1/models/widget_sort.rb +++ b/lib/datadog_api_client/v1/models/widget_sort.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetSort.constants.select { |c| WidgetSort::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetSort" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_style.rb b/lib/datadog_api_client/v1/models/widget_style.rb index 8c7c03d209c8..10a7cd6d59f7 100644 --- a/lib/datadog_api_client/v1/models/widget_style.rb +++ b/lib/datadog_api_client/v1/models/widget_style.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Widget style definition. class WidgetStyle + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Color palette to apply to the widget. attr_accessor :palette @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_summary_type.rb b/lib/datadog_api_client/v1/models/widget_summary_type.rb index b00bccfc9015..f4d605612103 100644 --- a/lib/datadog_api_client/v1/models/widget_summary_type.rb +++ b/lib/datadog_api_client/v1/models/widget_summary_type.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetSummaryType.constants.select { |c| WidgetSummaryType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetSummaryType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_text_align.rb b/lib/datadog_api_client/v1/models/widget_text_align.rb index 24c3b8fc35a5..3c56dd6ba4c1 100644 --- a/lib/datadog_api_client/v1/models/widget_text_align.rb +++ b/lib/datadog_api_client/v1/models/widget_text_align.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetTextAlign.constants.select { |c| WidgetTextAlign::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetTextAlign" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_tick_edge.rb b/lib/datadog_api_client/v1/models/widget_tick_edge.rb index cdd47e0d0802..e458e7864070 100644 --- a/lib/datadog_api_client/v1/models/widget_tick_edge.rb +++ b/lib/datadog_api_client/v1/models/widget_tick_edge.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetTickEdge.constants.select { |c| WidgetTickEdge::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetTickEdge" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_time.rb b/lib/datadog_api_client/v1/models/widget_time.rb index a9bd73ea2c9e..3e6395d49ed1 100644 --- a/lib/datadog_api_client/v1/models/widget_time.rb +++ b/lib/datadog_api_client/v1/models/widget_time.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V1 # Time setting for the widget. class WidgetTime + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :live_span # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V1.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V1::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v1/models/widget_time_windows.rb b/lib/datadog_api_client/v1/models/widget_time_windows.rb index b780459a759c..ce781cd5fd47 100644 --- a/lib/datadog_api_client/v1/models/widget_time_windows.rb +++ b/lib/datadog_api_client/v1/models/widget_time_windows.rb @@ -39,8 +39,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetTimeWindows.constants.select { |c| WidgetTimeWindows::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetTimeWindows" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_vertical_align.rb b/lib/datadog_api_client/v1/models/widget_vertical_align.rb index b4c7f78aa0b1..14594619ab55 100644 --- a/lib/datadog_api_client/v1/models/widget_vertical_align.rb +++ b/lib/datadog_api_client/v1/models/widget_vertical_align.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetVerticalAlign.constants.select { |c| WidgetVerticalAlign::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetVerticalAlign" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_view_mode.rb b/lib/datadog_api_client/v1/models/widget_view_mode.rb index d62fbcc24925..ef0eb695e2cf 100644 --- a/lib/datadog_api_client/v1/models/widget_view_mode.rb +++ b/lib/datadog_api_client/v1/models/widget_view_mode.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetViewMode.constants.select { |c| WidgetViewMode::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetViewMode" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v1/models/widget_viz_type.rb b/lib/datadog_api_client/v1/models/widget_viz_type.rb index 05e8a60b88a2..5af423653f06 100644 --- a/lib/datadog_api_client/v1/models/widget_viz_type.rb +++ b/lib/datadog_api_client/v1/models/widget_viz_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = WidgetVizType.constants.select { |c| WidgetVizType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #WidgetVizType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/configuration.rb b/lib/datadog_api_client/v2/configuration.rb index 63de1330a9cc..1577de090900 100644 --- a/lib/datadog_api_client/v2/configuration.rb +++ b/lib/datadog_api_client/v2/configuration.rb @@ -358,4 +358,18 @@ def server_url(index, variables = {}, servers = nil) url end end + + class UnparsedObject + # Defines unparsed object + attr_accessor :data + + def initialize(data) + @data = data + end + + def to_hash + self.data + end + end + end diff --git a/lib/datadog_api_client/v2/models/api_error_response.rb b/lib/datadog_api_client/v2/models/api_error_response.rb index 1025ad7f4900..dd38d85b8b75 100644 --- a/lib/datadog_api_client/v2/models/api_error_response.rb +++ b/lib/datadog_api_client/v2/models/api_error_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # API error response. class APIErrorResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A list of errors. attr_accessor :errors @@ -178,7 +181,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/api_key_create_attributes.rb b/lib/datadog_api_client/v2/models/api_key_create_attributes.rb index 95381c02991a..f17c376a7aef 100644 --- a/lib/datadog_api_client/v2/models/api_key_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/api_key_create_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes used to create an API Key. class APIKeyCreateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Name of the API key. attr_accessor :name @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/api_key_create_data.rb b/lib/datadog_api_client/v2/models/api_key_create_data.rb index d7be31cc67b5..67a287dc87b4 100644 --- a/lib/datadog_api_client/v2/models/api_key_create_data.rb +++ b/lib/datadog_api_client/v2/models/api_key_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object used to create an API key. class APIKeyCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :type @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/api_key_create_request.rb b/lib/datadog_api_client/v2/models/api_key_create_request.rb index e0c7bf6ef360..e4bbbe0aecc5 100644 --- a/lib/datadog_api_client/v2/models/api_key_create_request.rb +++ b/lib/datadog_api_client/v2/models/api_key_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Request used to create an API key. class APIKeyCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/api_key_relationships.rb b/lib/datadog_api_client/v2/models/api_key_relationships.rb index 249e9b6c1404..b95296bbe61e 100644 --- a/lib/datadog_api_client/v2/models/api_key_relationships.rb +++ b/lib/datadog_api_client/v2/models/api_key_relationships.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Resources related to the API key. class APIKeyRelationships + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :created_by attr_accessor :modified_by @@ -179,7 +182,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/api_key_response.rb b/lib/datadog_api_client/v2/models/api_key_response.rb index 088fcaefe3f1..82b7d5cec467 100644 --- a/lib/datadog_api_client/v2/models/api_key_response.rb +++ b/lib/datadog_api_client/v2/models/api_key_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response for retrieving an API key. class APIKeyResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Array of objects related to the API key. @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/api_key_response_included_item.rb b/lib/datadog_api_client/v2/models/api_key_response_included_item.rb index a7f6c50920bd..833600cf11f6 100644 --- a/lib/datadog_api_client/v2/models/api_key_response_included_item.rb +++ b/lib/datadog_api_client/v2/models/api_key_response_included_item.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # An object related to an API key. module APIKeyResponseIncludedItem class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -42,12 +44,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/api_key_update_attributes.rb b/lib/datadog_api_client/v2/models/api_key_update_attributes.rb index e1c9246b8fa5..9e85cccf7692 100644 --- a/lib/datadog_api_client/v2/models/api_key_update_attributes.rb +++ b/lib/datadog_api_client/v2/models/api_key_update_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes used to update an API Key. class APIKeyUpdateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Name of the API key. attr_accessor :name @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/api_key_update_data.rb b/lib/datadog_api_client/v2/models/api_key_update_data.rb index e5312291573c..c9222ad49c6c 100644 --- a/lib/datadog_api_client/v2/models/api_key_update_data.rb +++ b/lib/datadog_api_client/v2/models/api_key_update_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object used to update an API key. class APIKeyUpdateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the API key. @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/api_key_update_request.rb b/lib/datadog_api_client/v2/models/api_key_update_request.rb index 424bdac7a7a7..857ef91e127e 100644 --- a/lib/datadog_api_client/v2/models/api_key_update_request.rb +++ b/lib/datadog_api_client/v2/models/api_key_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Request used to update an API key. class APIKeyUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/api_keys_response.rb b/lib/datadog_api_client/v2/models/api_keys_response.rb index e1159a1e5ed8..c520e00c12b4 100644 --- a/lib/datadog_api_client/v2/models/api_keys_response.rb +++ b/lib/datadog_api_client/v2/models/api_keys_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response for a list of API keys. class APIKeysResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of API keys. attr_accessor :data @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/api_keys_sort.rb b/lib/datadog_api_client/v2/models/api_keys_sort.rb index a905b3425c48..42dbf2394605 100644 --- a/lib/datadog_api_client/v2/models/api_keys_sort.rb +++ b/lib/datadog_api_client/v2/models/api_keys_sort.rb @@ -39,8 +39,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = APIKeysSort.constants.select { |c| APIKeysSort::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #APIKeysSort" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/api_keys_type.rb b/lib/datadog_api_client/v2/models/api_keys_type.rb index d2fbde749104..73805b89fe7d 100644 --- a/lib/datadog_api_client/v2/models/api_keys_type.rb +++ b/lib/datadog_api_client/v2/models/api_keys_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = APIKeysType.constants.select { |c| APIKeysType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #APIKeysType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/application_key_create_attributes.rb b/lib/datadog_api_client/v2/models/application_key_create_attributes.rb index 257d7f3bb369..2a0ae58c9b8d 100644 --- a/lib/datadog_api_client/v2/models/application_key_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/application_key_create_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes used to create an application Key. class ApplicationKeyCreateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Name of the application key. attr_accessor :name @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/application_key_create_data.rb b/lib/datadog_api_client/v2/models/application_key_create_data.rb index e0ea3c78c687..57173bb1d817 100644 --- a/lib/datadog_api_client/v2/models/application_key_create_data.rb +++ b/lib/datadog_api_client/v2/models/application_key_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object used to create an application key. class ApplicationKeyCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :type @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/application_key_create_request.rb b/lib/datadog_api_client/v2/models/application_key_create_request.rb index 290ae68a0780..12b06d3d0243 100644 --- a/lib/datadog_api_client/v2/models/application_key_create_request.rb +++ b/lib/datadog_api_client/v2/models/application_key_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Request used to create an application key. class ApplicationKeyCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/application_key_relationships.rb b/lib/datadog_api_client/v2/models/application_key_relationships.rb index 5e88d5568a30..8947e24c1296 100644 --- a/lib/datadog_api_client/v2/models/application_key_relationships.rb +++ b/lib/datadog_api_client/v2/models/application_key_relationships.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Resources related to the application key. class ApplicationKeyRelationships + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :owned_by # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/application_key_response.rb b/lib/datadog_api_client/v2/models/application_key_response.rb index bc9c39925eac..a0a4c9269d36 100644 --- a/lib/datadog_api_client/v2/models/application_key_response.rb +++ b/lib/datadog_api_client/v2/models/application_key_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response for retrieving an application key. class ApplicationKeyResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Array of objects related to the application key. @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/application_key_response_included_item.rb b/lib/datadog_api_client/v2/models/application_key_response_included_item.rb index d60bf7e0a9ac..51ed30aa28fb 100644 --- a/lib/datadog_api_client/v2/models/application_key_response_included_item.rb +++ b/lib/datadog_api_client/v2/models/application_key_response_included_item.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # An object related to an application key. module ApplicationKeyResponseIncludedItem class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -43,12 +45,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/application_key_update_attributes.rb b/lib/datadog_api_client/v2/models/application_key_update_attributes.rb index 8c8d3fe2d626..993f69bd0801 100644 --- a/lib/datadog_api_client/v2/models/application_key_update_attributes.rb +++ b/lib/datadog_api_client/v2/models/application_key_update_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes used to update an application Key. class ApplicationKeyUpdateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Name of the application key. attr_accessor :name @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/application_key_update_data.rb b/lib/datadog_api_client/v2/models/application_key_update_data.rb index 47e4b881ff82..f031df2c8fb3 100644 --- a/lib/datadog_api_client/v2/models/application_key_update_data.rb +++ b/lib/datadog_api_client/v2/models/application_key_update_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object used to update an application key. class ApplicationKeyUpdateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the application key. @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/application_key_update_request.rb b/lib/datadog_api_client/v2/models/application_key_update_request.rb index ba3f7649e882..4dcc277be3ed 100644 --- a/lib/datadog_api_client/v2/models/application_key_update_request.rb +++ b/lib/datadog_api_client/v2/models/application_key_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Request used to update an application key. class ApplicationKeyUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/application_keys_sort.rb b/lib/datadog_api_client/v2/models/application_keys_sort.rb index 28bd97aa7154..46878ee2c302 100644 --- a/lib/datadog_api_client/v2/models/application_keys_sort.rb +++ b/lib/datadog_api_client/v2/models/application_keys_sort.rb @@ -37,8 +37,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ApplicationKeysSort.constants.select { |c| ApplicationKeysSort::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ApplicationKeysSort" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/application_keys_type.rb b/lib/datadog_api_client/v2/models/application_keys_type.rb index e6610d45ca67..e90e6010afb3 100644 --- a/lib/datadog_api_client/v2/models/application_keys_type.rb +++ b/lib/datadog_api_client/v2/models/application_keys_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ApplicationKeysType.constants.select { |c| ApplicationKeysType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ApplicationKeysType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/creator.rb b/lib/datadog_api_client/v2/models/creator.rb index 9cc10ce8de7c..34d92f4f8905 100644 --- a/lib/datadog_api_client/v2/models/creator.rb +++ b/lib/datadog_api_client/v2/models/creator.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Creator of the object. class Creator + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Email of the creator. attr_accessor :email @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/dashboard_list_add_items_request.rb b/lib/datadog_api_client/v2/models/dashboard_list_add_items_request.rb index 1633f9a224a8..a7f6467f0854 100644 --- a/lib/datadog_api_client/v2/models/dashboard_list_add_items_request.rb +++ b/lib/datadog_api_client/v2/models/dashboard_list_add_items_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Request containing a list of dashboards to add. class DashboardListAddItemsRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of dashboards to add the dashboard list. attr_accessor :dashboards @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/dashboard_list_add_items_response.rb b/lib/datadog_api_client/v2/models/dashboard_list_add_items_response.rb index b63edb783821..6ff80ee85cae 100644 --- a/lib/datadog_api_client/v2/models/dashboard_list_add_items_response.rb +++ b/lib/datadog_api_client/v2/models/dashboard_list_add_items_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response containing a list of added dashboards. class DashboardListAddItemsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of dashboards added to the dashboard list. attr_accessor :added_dashboards_to_list @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/dashboard_list_delete_items_request.rb b/lib/datadog_api_client/v2/models/dashboard_list_delete_items_request.rb index a9515687b3bb..dfef3451e5a9 100644 --- a/lib/datadog_api_client/v2/models/dashboard_list_delete_items_request.rb +++ b/lib/datadog_api_client/v2/models/dashboard_list_delete_items_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Request containing a list of dashboards to delete. class DashboardListDeleteItemsRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of dashboards to delete from the dashboard list. attr_accessor :dashboards @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/dashboard_list_delete_items_response.rb b/lib/datadog_api_client/v2/models/dashboard_list_delete_items_response.rb index 163da8e5e874..5809cb1b894f 100644 --- a/lib/datadog_api_client/v2/models/dashboard_list_delete_items_response.rb +++ b/lib/datadog_api_client/v2/models/dashboard_list_delete_items_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response containing a list of deleted dashboards. class DashboardListDeleteItemsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of dashboards deleted from the dashboard list. attr_accessor :deleted_dashboards_from_list @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/dashboard_list_item.rb b/lib/datadog_api_client/v2/models/dashboard_list_item.rb index e81faf910088..54068fe5b1f7 100644 --- a/lib/datadog_api_client/v2/models/dashboard_list_item.rb +++ b/lib/datadog_api_client/v2/models/dashboard_list_item.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A dashboard within a list. class DashboardListItem + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :author # Date of creation of the dashboard. @@ -304,7 +307,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/dashboard_list_item_request.rb b/lib/datadog_api_client/v2/models/dashboard_list_item_request.rb index 80db3abcaded..57eb26c6c844 100644 --- a/lib/datadog_api_client/v2/models/dashboard_list_item_request.rb +++ b/lib/datadog_api_client/v2/models/dashboard_list_item_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A dashboard within a list. class DashboardListItemRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # ID of the dashboard. attr_accessor :id @@ -190,7 +193,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/dashboard_list_item_response.rb b/lib/datadog_api_client/v2/models/dashboard_list_item_response.rb index e759ecb22d3b..f2f92b4415f3 100644 --- a/lib/datadog_api_client/v2/models/dashboard_list_item_response.rb +++ b/lib/datadog_api_client/v2/models/dashboard_list_item_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A dashboard within a list. class DashboardListItemResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # ID of the dashboard. attr_accessor :id @@ -190,7 +193,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/dashboard_list_items.rb b/lib/datadog_api_client/v2/models/dashboard_list_items.rb index f20d3419461b..cb2b3fd24c80 100644 --- a/lib/datadog_api_client/v2/models/dashboard_list_items.rb +++ b/lib/datadog_api_client/v2/models/dashboard_list_items.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Dashboards within a list. class DashboardListItems + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of dashboards in the dashboard list. attr_accessor :dashboards @@ -188,7 +191,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/dashboard_list_update_items_request.rb b/lib/datadog_api_client/v2/models/dashboard_list_update_items_request.rb index 28f2272d9879..0760e40ba512 100644 --- a/lib/datadog_api_client/v2/models/dashboard_list_update_items_request.rb +++ b/lib/datadog_api_client/v2/models/dashboard_list_update_items_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Request containing the list of dashboards to update to. class DashboardListUpdateItemsRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of dashboards to update the dashboard list to. attr_accessor :dashboards @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/dashboard_list_update_items_response.rb b/lib/datadog_api_client/v2/models/dashboard_list_update_items_response.rb index 395bb1fb9a8c..193a4538b8ab 100644 --- a/lib/datadog_api_client/v2/models/dashboard_list_update_items_response.rb +++ b/lib/datadog_api_client/v2/models/dashboard_list_update_items_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response containing a list of updated dashboards. class DashboardListUpdateItemsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of dashboards in the dashboard list. attr_accessor :dashboards @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/dashboard_type.rb b/lib/datadog_api_client/v2/models/dashboard_type.rb index 180086905687..b82cf7eccf83 100644 --- a/lib/datadog_api_client/v2/models/dashboard_type.rb +++ b/lib/datadog_api_client/v2/models/dashboard_type.rb @@ -36,8 +36,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = DashboardType.constants.select { |c| DashboardType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #DashboardType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/full_api_key.rb b/lib/datadog_api_client/v2/models/full_api_key.rb index f0fe672de8bd..7938340c7419 100644 --- a/lib/datadog_api_client/v2/models/full_api_key.rb +++ b/lib/datadog_api_client/v2/models/full_api_key.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Datadog API key. class FullAPIKey + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the API key. @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/full_api_key_attributes.rb b/lib/datadog_api_client/v2/models/full_api_key_attributes.rb index 91143188878f..f74ccd7092d7 100644 --- a/lib/datadog_api_client/v2/models/full_api_key_attributes.rb +++ b/lib/datadog_api_client/v2/models/full_api_key_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of a full API key. class FullAPIKeyAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation date of the API key. attr_accessor :created_at @@ -235,7 +238,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/full_application_key.rb b/lib/datadog_api_client/v2/models/full_application_key.rb index f00ea99c2cdc..3b28363bd433 100644 --- a/lib/datadog_api_client/v2/models/full_application_key.rb +++ b/lib/datadog_api_client/v2/models/full_application_key.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Datadog application key. class FullApplicationKey + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the application key. @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/full_application_key_attributes.rb b/lib/datadog_api_client/v2/models/full_application_key_attributes.rb index 320280e8ca03..80664240d576 100644 --- a/lib/datadog_api_client/v2/models/full_application_key_attributes.rb +++ b/lib/datadog_api_client/v2/models/full_application_key_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of a full application key. class FullApplicationKeyAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation date of the application key. attr_accessor :created_at @@ -225,7 +228,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_create_attributes.rb b/lib/datadog_api_client/v2/models/incident_create_attributes.rb index a1035ea871d3..f3eafcc45b6e 100644 --- a/lib/datadog_api_client/v2/models/incident_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/incident_create_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident's attributes for a create request. class IncidentCreateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A flag indicating whether the incident caused customer impact. attr_accessor :customer_impacted @@ -227,7 +230,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_create_data.rb b/lib/datadog_api_client/v2/models/incident_create_data.rb index 6b04e21174a8..2cfc5a3caad7 100644 --- a/lib/datadog_api_client/v2/models/incident_create_data.rb +++ b/lib/datadog_api_client/v2/models/incident_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Incident data for a create request. class IncidentCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :relationships @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_create_relationships.rb b/lib/datadog_api_client/v2/models/incident_create_relationships.rb index c2d642ff1aac..c1e14cd88b7a 100644 --- a/lib/datadog_api_client/v2/models/incident_create_relationships.rb +++ b/lib/datadog_api_client/v2/models/incident_create_relationships.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The relationships the incident will have with other resources once created. class IncidentCreateRelationships + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :commander # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_create_request.rb b/lib/datadog_api_client/v2/models/incident_create_request.rb index 7ac0ef377570..524b818479a7 100644 --- a/lib/datadog_api_client/v2/models/incident_create_request.rb +++ b/lib/datadog_api_client/v2/models/incident_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Create request for an incident. class IncidentCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_field_attributes.rb b/lib/datadog_api_client/v2/models/incident_field_attributes.rb index f0bdb37fd349..773188038ab3 100644 --- a/lib/datadog_api_client/v2/models/incident_field_attributes.rb +++ b/lib/datadog_api_client/v2/models/incident_field_attributes.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # Dynamic fields for which selections can be made, with field names as keys. module IncidentFieldAttributes class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -43,12 +45,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/incident_field_attributes_multiple_value.rb b/lib/datadog_api_client/v2/models/incident_field_attributes_multiple_value.rb index abf8c090702e..89f7ec587b17 100644 --- a/lib/datadog_api_client/v2/models/incident_field_attributes_multiple_value.rb +++ b/lib/datadog_api_client/v2/models/incident_field_attributes_multiple_value.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A field with potentially multiple values selected. class IncidentFieldAttributesMultipleValue + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :type # The multiple values selected for this field. @@ -184,7 +187,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_field_attributes_single_value.rb b/lib/datadog_api_client/v2/models/incident_field_attributes_single_value.rb index c760b8600d40..b712f3711365 100644 --- a/lib/datadog_api_client/v2/models/incident_field_attributes_single_value.rb +++ b/lib/datadog_api_client/v2/models/incident_field_attributes_single_value.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A field with a single value selected. class IncidentFieldAttributesSingleValue + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :type # The single value selected for this field. @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_field_attributes_single_value_type.rb b/lib/datadog_api_client/v2/models/incident_field_attributes_single_value_type.rb index f4a558b7394a..731dd66c9279 100644 --- a/lib/datadog_api_client/v2/models/incident_field_attributes_single_value_type.rb +++ b/lib/datadog_api_client/v2/models/incident_field_attributes_single_value_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = IncidentFieldAttributesSingleValueType.constants.select { |c| IncidentFieldAttributesSingleValueType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #IncidentFieldAttributesSingleValueType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/incident_field_attributes_value_type.rb b/lib/datadog_api_client/v2/models/incident_field_attributes_value_type.rb index a8ec2da44dda..82ada1553a39 100644 --- a/lib/datadog_api_client/v2/models/incident_field_attributes_value_type.rb +++ b/lib/datadog_api_client/v2/models/incident_field_attributes_value_type.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = IncidentFieldAttributesValueType.constants.select { |c| IncidentFieldAttributesValueType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #IncidentFieldAttributesValueType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/incident_integration_metadata_type.rb b/lib/datadog_api_client/v2/models/incident_integration_metadata_type.rb index e0b1442531ba..1e9796d1d699 100644 --- a/lib/datadog_api_client/v2/models/incident_integration_metadata_type.rb +++ b/lib/datadog_api_client/v2/models/incident_integration_metadata_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = IncidentIntegrationMetadataType.constants.select { |c| IncidentIntegrationMetadataType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #IncidentIntegrationMetadataType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/incident_postmortem_type.rb b/lib/datadog_api_client/v2/models/incident_postmortem_type.rb index ba1f56304289..b81885c7ec5b 100644 --- a/lib/datadog_api_client/v2/models/incident_postmortem_type.rb +++ b/lib/datadog_api_client/v2/models/incident_postmortem_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = IncidentPostmortemType.constants.select { |c| IncidentPostmortemType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #IncidentPostmortemType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/incident_related_object.rb b/lib/datadog_api_client/v2/models/incident_related_object.rb index 1d83d1960b0a..9cdc3de6f8ac 100644 --- a/lib/datadog_api_client/v2/models/incident_related_object.rb +++ b/lib/datadog_api_client/v2/models/incident_related_object.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = IncidentRelatedObject.constants.select { |c| IncidentRelatedObject::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #IncidentRelatedObject" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/incident_response.rb b/lib/datadog_api_client/v2/models/incident_response.rb index 1215210d10f4..f502f9274eff 100644 --- a/lib/datadog_api_client/v2/models/incident_response.rb +++ b/lib/datadog_api_client/v2/models/incident_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response with an incident. class IncidentResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Included related resources that the user requested. @@ -187,7 +190,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_response_attributes.rb b/lib/datadog_api_client/v2/models/incident_response_attributes.rb index dab43737cc1b..94629d7afed9 100644 --- a/lib/datadog_api_client/v2/models/incident_response_attributes.rb +++ b/lib/datadog_api_client/v2/models/incident_response_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident's attributes from a response. class IncidentResponseAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Timestamp when the incident was created. attr_accessor :created @@ -355,7 +358,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_response_data.rb b/lib/datadog_api_client/v2/models/incident_response_data.rb index 76a9df7516e7..b46cebeebcfa 100644 --- a/lib/datadog_api_client/v2/models/incident_response_data.rb +++ b/lib/datadog_api_client/v2/models/incident_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Incident data from a response. class IncidentResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The incident's ID. @@ -210,7 +213,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_response_included_item.rb b/lib/datadog_api_client/v2/models/incident_response_included_item.rb index 7afbaf792146..a9dcefbc718e 100644 --- a/lib/datadog_api_client/v2/models/incident_response_included_item.rb +++ b/lib/datadog_api_client/v2/models/incident_response_included_item.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # An object related to an incident that is included in the response. module IncidentResponseIncludedItem class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -42,12 +44,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/incident_response_relationships.rb b/lib/datadog_api_client/v2/models/incident_response_relationships.rb index 0d9c1a213455..d41e3324d5e6 100644 --- a/lib/datadog_api_client/v2/models/incident_response_relationships.rb +++ b/lib/datadog_api_client/v2/models/incident_response_relationships.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident's relationships from a response. class IncidentResponseRelationships + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :commander_user attr_accessor :created_by_user @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_service_create_attributes.rb b/lib/datadog_api_client/v2/models/incident_service_create_attributes.rb index 1719b8292e86..9be65d784d60 100644 --- a/lib/datadog_api_client/v2/models/incident_service_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/incident_service_create_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident service's attributes for a create request. class IncidentServiceCreateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Name of the incident service. attr_accessor :name @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_service_create_data.rb b/lib/datadog_api_client/v2/models/incident_service_create_data.rb index 03e902b5b21d..9a32f03db104 100644 --- a/lib/datadog_api_client/v2/models/incident_service_create_data.rb +++ b/lib/datadog_api_client/v2/models/incident_service_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Incident Service payload for create requests. class IncidentServiceCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :relationships @@ -195,7 +198,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_service_create_request.rb b/lib/datadog_api_client/v2/models/incident_service_create_request.rb index 196097e88797..637a89b2af3d 100644 --- a/lib/datadog_api_client/v2/models/incident_service_create_request.rb +++ b/lib/datadog_api_client/v2/models/incident_service_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Create request with an incident service payload. class IncidentServiceCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_service_included_items.rb b/lib/datadog_api_client/v2/models/incident_service_included_items.rb index 7ec4156a5c0f..d84164215124 100644 --- a/lib/datadog_api_client/v2/models/incident_service_included_items.rb +++ b/lib/datadog_api_client/v2/models/incident_service_included_items.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # An object related to an incident service which is present in the included payload. module IncidentServiceIncludedItems class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -42,12 +44,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/incident_service_relationships.rb b/lib/datadog_api_client/v2/models/incident_service_relationships.rb index 6189e6162f57..d7f3ef59cb8b 100644 --- a/lib/datadog_api_client/v2/models/incident_service_relationships.rb +++ b/lib/datadog_api_client/v2/models/incident_service_relationships.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident service's relationships. class IncidentServiceRelationships + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :created_by attr_accessor :last_modified_by @@ -179,7 +182,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_service_response.rb b/lib/datadog_api_client/v2/models/incident_service_response.rb index 2ae1dcd07516..9d92b845b15b 100644 --- a/lib/datadog_api_client/v2/models/incident_service_response.rb +++ b/lib/datadog_api_client/v2/models/incident_service_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response with an incident service payload. class IncidentServiceResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Included objects from relationships. @@ -187,7 +190,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_service_response_attributes.rb b/lib/datadog_api_client/v2/models/incident_service_response_attributes.rb index 2af9bb3f4aaf..b2932ff7dc21 100644 --- a/lib/datadog_api_client/v2/models/incident_service_response_attributes.rb +++ b/lib/datadog_api_client/v2/models/incident_service_response_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident service's attributes from a response. class IncidentServiceResponseAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Timestamp of when the incident service was created. attr_accessor :created @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_service_response_data.rb b/lib/datadog_api_client/v2/models/incident_service_response_data.rb index 177333850b76..806ef7347913 100644 --- a/lib/datadog_api_client/v2/models/incident_service_response_data.rb +++ b/lib/datadog_api_client/v2/models/incident_service_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Incident Service data from responses. class IncidentServiceResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The incident service's ID. @@ -210,7 +213,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_service_type.rb b/lib/datadog_api_client/v2/models/incident_service_type.rb index 72e8ac18cd03..17035fd6d859 100644 --- a/lib/datadog_api_client/v2/models/incident_service_type.rb +++ b/lib/datadog_api_client/v2/models/incident_service_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = IncidentServiceType.constants.select { |c| IncidentServiceType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #IncidentServiceType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/incident_service_update_attributes.rb b/lib/datadog_api_client/v2/models/incident_service_update_attributes.rb index b3191a290eaf..e3f161648c06 100644 --- a/lib/datadog_api_client/v2/models/incident_service_update_attributes.rb +++ b/lib/datadog_api_client/v2/models/incident_service_update_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident service's attributes for an update request. class IncidentServiceUpdateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Name of the incident service. attr_accessor :name @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_service_update_data.rb b/lib/datadog_api_client/v2/models/incident_service_update_data.rb index 72e0f59e0d3b..8617b6024b3c 100644 --- a/lib/datadog_api_client/v2/models/incident_service_update_data.rb +++ b/lib/datadog_api_client/v2/models/incident_service_update_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Incident Service payload for update requests. class IncidentServiceUpdateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The incident service's ID. @@ -205,7 +208,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_service_update_request.rb b/lib/datadog_api_client/v2/models/incident_service_update_request.rb index c06aa64a8fe4..7ba925a43678 100644 --- a/lib/datadog_api_client/v2/models/incident_service_update_request.rb +++ b/lib/datadog_api_client/v2/models/incident_service_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Update request with an incident service payload. class IncidentServiceUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_services_response.rb b/lib/datadog_api_client/v2/models/incident_services_response.rb index 6eb0072a304c..8b7501620e43 100644 --- a/lib/datadog_api_client/v2/models/incident_services_response.rb +++ b/lib/datadog_api_client/v2/models/incident_services_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response with a list of incident service payloads. class IncidentServicesResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of incident services. attr_accessor :data @@ -199,7 +202,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_services_response_meta.rb b/lib/datadog_api_client/v2/models/incident_services_response_meta.rb index ce9dbdc2b860..7c29bdb93f19 100644 --- a/lib/datadog_api_client/v2/models/incident_services_response_meta.rb +++ b/lib/datadog_api_client/v2/models/incident_services_response_meta.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The metadata object containing pagination metadata. class IncidentServicesResponseMeta + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :pagination # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_services_response_meta_pagination.rb b/lib/datadog_api_client/v2/models/incident_services_response_meta_pagination.rb index 7d6731f63cb6..942efe1403ae 100644 --- a/lib/datadog_api_client/v2/models/incident_services_response_meta_pagination.rb +++ b/lib/datadog_api_client/v2/models/incident_services_response_meta_pagination.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Pagination properties. class IncidentServicesResponseMetaPagination + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The index of the first element in the next page of results. Equal to page size added to the current offset. attr_accessor :next_offset @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_team_create_attributes.rb b/lib/datadog_api_client/v2/models/incident_team_create_attributes.rb index 6ecec36c89f5..77ee2ccfdc01 100644 --- a/lib/datadog_api_client/v2/models/incident_team_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/incident_team_create_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident team's attributes for a create request. class IncidentTeamCreateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Name of the incident team. attr_accessor :name @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_team_create_data.rb b/lib/datadog_api_client/v2/models/incident_team_create_data.rb index bc31a7fbdb6c..c62443475795 100644 --- a/lib/datadog_api_client/v2/models/incident_team_create_data.rb +++ b/lib/datadog_api_client/v2/models/incident_team_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Incident Team data for a create request. class IncidentTeamCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :relationships @@ -195,7 +198,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_team_create_request.rb b/lib/datadog_api_client/v2/models/incident_team_create_request.rb index 53af5f4ee546..8e6b56debfb7 100644 --- a/lib/datadog_api_client/v2/models/incident_team_create_request.rb +++ b/lib/datadog_api_client/v2/models/incident_team_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Create request with an incident team payload. class IncidentTeamCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_team_included_items.rb b/lib/datadog_api_client/v2/models/incident_team_included_items.rb index e1b984a78335..cd91bddcbacf 100644 --- a/lib/datadog_api_client/v2/models/incident_team_included_items.rb +++ b/lib/datadog_api_client/v2/models/incident_team_included_items.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # An object related to an incident team which is present in the included payload. module IncidentTeamIncludedItems class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -42,12 +44,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/incident_team_relationships.rb b/lib/datadog_api_client/v2/models/incident_team_relationships.rb index fcd3e5359bde..272fa17f6943 100644 --- a/lib/datadog_api_client/v2/models/incident_team_relationships.rb +++ b/lib/datadog_api_client/v2/models/incident_team_relationships.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident team's relationships. class IncidentTeamRelationships + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :created_by attr_accessor :last_modified_by @@ -179,7 +182,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_team_response.rb b/lib/datadog_api_client/v2/models/incident_team_response.rb index 3d086dea0a74..a663c9a04046 100644 --- a/lib/datadog_api_client/v2/models/incident_team_response.rb +++ b/lib/datadog_api_client/v2/models/incident_team_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response with an incident team payload. class IncidentTeamResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Included objects from relationships. @@ -187,7 +190,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_team_response_attributes.rb b/lib/datadog_api_client/v2/models/incident_team_response_attributes.rb index 493c62dbb9bc..a802c14f735b 100644 --- a/lib/datadog_api_client/v2/models/incident_team_response_attributes.rb +++ b/lib/datadog_api_client/v2/models/incident_team_response_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident team's attributes from a response. class IncidentTeamResponseAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Timestamp of when the incident team was created. attr_accessor :created @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_team_response_data.rb b/lib/datadog_api_client/v2/models/incident_team_response_data.rb index 2e29f110396d..0393f430ed33 100644 --- a/lib/datadog_api_client/v2/models/incident_team_response_data.rb +++ b/lib/datadog_api_client/v2/models/incident_team_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Incident Team data from a response. class IncidentTeamResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The incident team's ID. @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_team_type.rb b/lib/datadog_api_client/v2/models/incident_team_type.rb index 608c439665bc..30dcbc9ab6d4 100644 --- a/lib/datadog_api_client/v2/models/incident_team_type.rb +++ b/lib/datadog_api_client/v2/models/incident_team_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = IncidentTeamType.constants.select { |c| IncidentTeamType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #IncidentTeamType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/incident_team_update_attributes.rb b/lib/datadog_api_client/v2/models/incident_team_update_attributes.rb index 09d517741f57..e16066ce1a56 100644 --- a/lib/datadog_api_client/v2/models/incident_team_update_attributes.rb +++ b/lib/datadog_api_client/v2/models/incident_team_update_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident team's attributes for an update request. class IncidentTeamUpdateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Name of the incident team. attr_accessor :name @@ -176,7 +179,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_team_update_data.rb b/lib/datadog_api_client/v2/models/incident_team_update_data.rb index e1ec05bc949e..ff56ed7dc994 100644 --- a/lib/datadog_api_client/v2/models/incident_team_update_data.rb +++ b/lib/datadog_api_client/v2/models/incident_team_update_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Incident Team data for an update request. class IncidentTeamUpdateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The incident team's ID. @@ -205,7 +208,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_team_update_request.rb b/lib/datadog_api_client/v2/models/incident_team_update_request.rb index 10563de774de..8224c63f7b11 100644 --- a/lib/datadog_api_client/v2/models/incident_team_update_request.rb +++ b/lib/datadog_api_client/v2/models/incident_team_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Update request with an incident team payload. class IncidentTeamUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_teams_response.rb b/lib/datadog_api_client/v2/models/incident_teams_response.rb index 7ad9b13677de..4be628c5ee27 100644 --- a/lib/datadog_api_client/v2/models/incident_teams_response.rb +++ b/lib/datadog_api_client/v2/models/incident_teams_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response with a list of incident team payloads. class IncidentTeamsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of incident teams. attr_accessor :data @@ -199,7 +202,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_timeline_cell_create_attributes.rb b/lib/datadog_api_client/v2/models/incident_timeline_cell_create_attributes.rb index b9e6a8b05401..d04788b43282 100644 --- a/lib/datadog_api_client/v2/models/incident_timeline_cell_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/incident_timeline_cell_create_attributes.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # The timeline cell's attributes for a create request. module IncidentTimelineCellCreateAttributes class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -42,12 +44,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/incident_timeline_cell_markdown_content_type.rb b/lib/datadog_api_client/v2/models/incident_timeline_cell_markdown_content_type.rb index 2df4a4cf35b3..9d2ed6d589e3 100644 --- a/lib/datadog_api_client/v2/models/incident_timeline_cell_markdown_content_type.rb +++ b/lib/datadog_api_client/v2/models/incident_timeline_cell_markdown_content_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = IncidentTimelineCellMarkdownContentType.constants.select { |c| IncidentTimelineCellMarkdownContentType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #IncidentTimelineCellMarkdownContentType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/incident_timeline_cell_markdown_create_attributes.rb b/lib/datadog_api_client/v2/models/incident_timeline_cell_markdown_create_attributes.rb index c006d9299030..43c7dc13b9e2 100644 --- a/lib/datadog_api_client/v2/models/incident_timeline_cell_markdown_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/incident_timeline_cell_markdown_create_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Timeline cell data for Markdown timeline cells for a create request. class IncidentTimelineCellMarkdownCreateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :cell_type attr_accessor :content @@ -203,7 +206,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_timeline_cell_markdown_create_attributes_content.rb b/lib/datadog_api_client/v2/models/incident_timeline_cell_markdown_create_attributes_content.rb index cb0cb4c25f24..b30aadbcd354 100644 --- a/lib/datadog_api_client/v2/models/incident_timeline_cell_markdown_create_attributes_content.rb +++ b/lib/datadog_api_client/v2/models/incident_timeline_cell_markdown_create_attributes_content.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The Markdown timeline cell contents. class IncidentTimelineCellMarkdownCreateAttributesContent + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The Markdown content of the cell. attr_accessor :content @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_type.rb b/lib/datadog_api_client/v2/models/incident_type.rb index 41677719c761..2a8c4aea490f 100644 --- a/lib/datadog_api_client/v2/models/incident_type.rb +++ b/lib/datadog_api_client/v2/models/incident_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = IncidentType.constants.select { |c| IncidentType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #IncidentType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/incident_update_attributes.rb b/lib/datadog_api_client/v2/models/incident_update_attributes.rb index 0615b61869e9..9239375441dd 100644 --- a/lib/datadog_api_client/v2/models/incident_update_attributes.rb +++ b/lib/datadog_api_client/v2/models/incident_update_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident's attributes for an update request. class IncidentUpdateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Timestamp when customers were no longer impacted by the incident. attr_accessor :customer_impact_end @@ -259,7 +262,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_update_data.rb b/lib/datadog_api_client/v2/models/incident_update_data.rb index 0feca396b17c..e783581a6c42 100644 --- a/lib/datadog_api_client/v2/models/incident_update_data.rb +++ b/lib/datadog_api_client/v2/models/incident_update_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Incident data for an update request. class IncidentUpdateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The team's ID. @@ -210,7 +213,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_update_relationships.rb b/lib/datadog_api_client/v2/models/incident_update_relationships.rb index a0439d6bd53e..b4eaf255c58e 100644 --- a/lib/datadog_api_client/v2/models/incident_update_relationships.rb +++ b/lib/datadog_api_client/v2/models/incident_update_relationships.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The incident's relationships for an update request. class IncidentUpdateRelationships + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :commander_user attr_accessor :created_by_user @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incident_update_request.rb b/lib/datadog_api_client/v2/models/incident_update_request.rb index e97b230ffeba..4ca78450779d 100644 --- a/lib/datadog_api_client/v2/models/incident_update_request.rb +++ b/lib/datadog_api_client/v2/models/incident_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Update request for an incident. class IncidentUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/incidents_response.rb b/lib/datadog_api_client/v2/models/incidents_response.rb index 5c4f5c8fd769..2feac7eb97a4 100644 --- a/lib/datadog_api_client/v2/models/incidents_response.rb +++ b/lib/datadog_api_client/v2/models/incidents_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response with a list of incidents. class IncidentsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of incidents. attr_accessor :data @@ -199,7 +202,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/list_application_keys_response.rb b/lib/datadog_api_client/v2/models/list_application_keys_response.rb index 33d017590518..9ed319124593 100644 --- a/lib/datadog_api_client/v2/models/list_application_keys_response.rb +++ b/lib/datadog_api_client/v2/models/list_application_keys_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response for a list of application keys. class ListApplicationKeysResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of application keys. attr_accessor :data @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/log.rb b/lib/datadog_api_client/v2/models/log.rb index 01844d13314c..0d2dc6fc1918 100644 --- a/lib/datadog_api_client/v2/models/log.rb +++ b/lib/datadog_api_client/v2/models/log.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object description of a log after being processed and stored by Datadog. class Log + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # Unique ID of the Log. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/log_attributes.rb b/lib/datadog_api_client/v2/models/log_attributes.rb index ff3373e308f9..f1d577356d36 100644 --- a/lib/datadog_api_client/v2/models/log_attributes.rb +++ b/lib/datadog_api_client/v2/models/log_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # JSON object containing all log attributes and their associated values. class LogAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # JSON object of attributes from your log. attr_accessor :attributes @@ -235,7 +238,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/log_type.rb b/lib/datadog_api_client/v2/models/log_type.rb index 39505198fb54..ef6c674844fe 100644 --- a/lib/datadog_api_client/v2/models/log_type.rb +++ b/lib/datadog_api_client/v2/models/log_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogType.constants.select { |c| LogType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_aggregate_bucket.rb b/lib/datadog_api_client/v2/models/logs_aggregate_bucket.rb index 5eea48b107b1..826a028fbe5e 100644 --- a/lib/datadog_api_client/v2/models/logs_aggregate_bucket.rb +++ b/lib/datadog_api_client/v2/models/logs_aggregate_bucket.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A bucket values class LogsAggregateBucket + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The key, value pairs for each group by attr_accessor :by @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_aggregate_bucket_value.rb b/lib/datadog_api_client/v2/models/logs_aggregate_bucket_value.rb index b198ef888160..9c9ab047ac72 100644 --- a/lib/datadog_api_client/v2/models/logs_aggregate_bucket_value.rb +++ b/lib/datadog_api_client/v2/models/logs_aggregate_bucket_value.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # A bucket value, can be either a timeseries or a single value module LogsAggregateBucketValue class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -44,12 +46,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/logs_aggregate_bucket_value_timeseries_point.rb b/lib/datadog_api_client/v2/models/logs_aggregate_bucket_value_timeseries_point.rb index feffa6602031..65d5335fe4fa 100644 --- a/lib/datadog_api_client/v2/models/logs_aggregate_bucket_value_timeseries_point.rb +++ b/lib/datadog_api_client/v2/models/logs_aggregate_bucket_value_timeseries_point.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A timeseries point class LogsAggregateBucketValueTimeseriesPoint + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The time value for this point attr_accessor :time @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_aggregate_request.rb b/lib/datadog_api_client/v2/models/logs_aggregate_request.rb index c1d8a25baa18..a21cad3dad8d 100644 --- a/lib/datadog_api_client/v2/models/logs_aggregate_request.rb +++ b/lib/datadog_api_client/v2/models/logs_aggregate_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The object sent with the request to retrieve a list of logs from your organization. class LogsAggregateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The list of metrics or timeseries to compute for the retrieved buckets. attr_accessor :compute @@ -212,7 +215,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_aggregate_request_page.rb b/lib/datadog_api_client/v2/models/logs_aggregate_request_page.rb index 1cf400eabc14..2aadd903a16e 100644 --- a/lib/datadog_api_client/v2/models/logs_aggregate_request_page.rb +++ b/lib/datadog_api_client/v2/models/logs_aggregate_request_page.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Paging settings class LogsAggregateRequestPage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The returned paging point to use to get the next results attr_accessor :cursor @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_aggregate_response.rb b/lib/datadog_api_client/v2/models/logs_aggregate_response.rb index a64dd4fa5f30..e898b48a4e84 100644 --- a/lib/datadog_api_client/v2/models/logs_aggregate_response.rb +++ b/lib/datadog_api_client/v2/models/logs_aggregate_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The response object for the logs aggregate API endpoint class LogsAggregateResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data attr_accessor :meta @@ -179,7 +182,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_aggregate_response_data.rb b/lib/datadog_api_client/v2/models/logs_aggregate_response_data.rb index 37e188870038..1b8959e8a102 100644 --- a/lib/datadog_api_client/v2/models/logs_aggregate_response_data.rb +++ b/lib/datadog_api_client/v2/models/logs_aggregate_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The query results class LogsAggregateResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The list of matching buckets, one item per bucket attr_accessor :buckets @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_aggregate_response_status.rb b/lib/datadog_api_client/v2/models/logs_aggregate_response_status.rb index 1bc41bacbdf4..251d3dfe8ee1 100644 --- a/lib/datadog_api_client/v2/models/logs_aggregate_response_status.rb +++ b/lib/datadog_api_client/v2/models/logs_aggregate_response_status.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsAggregateResponseStatus.constants.select { |c| LogsAggregateResponseStatus::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsAggregateResponseStatus" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_aggregate_sort.rb b/lib/datadog_api_client/v2/models/logs_aggregate_sort.rb index 816de651ae87..72181815edcc 100644 --- a/lib/datadog_api_client/v2/models/logs_aggregate_sort.rb +++ b/lib/datadog_api_client/v2/models/logs_aggregate_sort.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A sort rule class LogsAggregateSort + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :aggregation # The metric to sort by (only used for `type=measure`) @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_aggregate_sort_type.rb b/lib/datadog_api_client/v2/models/logs_aggregate_sort_type.rb index 8dba4ab739fe..cd4976a41017 100644 --- a/lib/datadog_api_client/v2/models/logs_aggregate_sort_type.rb +++ b/lib/datadog_api_client/v2/models/logs_aggregate_sort_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsAggregateSortType.constants.select { |c| LogsAggregateSortType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsAggregateSortType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_aggregation_function.rb b/lib/datadog_api_client/v2/models/logs_aggregation_function.rb index 18a3d2c03f7d..c7c2cec9c4dd 100644 --- a/lib/datadog_api_client/v2/models/logs_aggregation_function.rb +++ b/lib/datadog_api_client/v2/models/logs_aggregation_function.rb @@ -42,8 +42,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsAggregationFunction.constants.select { |c| LogsAggregationFunction::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsAggregationFunction" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_archive.rb b/lib/datadog_api_client/v2/models/logs_archive.rb index 341cf4fe5390..6853f6d7a97a 100644 --- a/lib/datadog_api_client/v2/models/logs_archive.rb +++ b/lib/datadog_api_client/v2/models/logs_archive.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The logs archive. class LogsArchive + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_attributes.rb b/lib/datadog_api_client/v2/models/logs_archive_attributes.rb index 2a7db81871bc..78252fde1988 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_attributes.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The attributes associated with the archive. class LogsArchiveAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :destination # To store the tags in the archive, set the value \"true\". If it is set to \"false\", the tags will be deleted when the logs are sent to the archive. @@ -234,7 +237,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_create_request.rb b/lib/datadog_api_client/v2/models/logs_archive_create_request.rb index 107284912ee5..5f29fe70cb7c 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_create_request.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The logs archive. class LogsArchiveCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_create_request_attributes.rb b/lib/datadog_api_client/v2/models/logs_archive_create_request_attributes.rb index d9b6c07b0949..388fbabb2a50 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_create_request_attributes.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_create_request_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The attributes associated with the archive. class LogsArchiveCreateRequestAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :destination # To store the tags in the archive, set the value \"true\". If it is set to \"false\", the tags will be deleted when the logs are sent to the archive. @@ -229,7 +232,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_create_request_definition.rb b/lib/datadog_api_client/v2/models/logs_archive_create_request_definition.rb index c2b7bc0eaf07..ce991e629778 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_create_request_definition.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_create_request_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The definition of an archive. class LogsArchiveCreateRequestDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The type of the resource. The value should always be archives. @@ -187,7 +190,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_create_request_destination.rb b/lib/datadog_api_client/v2/models/logs_archive_create_request_destination.rb index 7bfcf83bac9c..75246df81b9a 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_create_request_destination.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_create_request_destination.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # An archive's destination. module LogsArchiveCreateRequestDestination class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -44,12 +46,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/logs_archive_definition.rb b/lib/datadog_api_client/v2/models/logs_archive_definition.rb index e6c886dd72ba..7d8cb6c06f42 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_definition.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The definition of an archive. class LogsArchiveDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The archive ID. @@ -197,7 +200,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_destination.rb b/lib/datadog_api_client/v2/models/logs_archive_destination.rb index e8fa3a586860..efad95bda1e6 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_destination.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_destination.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # An archive's destination. module LogsArchiveDestination class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -44,12 +46,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/logs_archive_destination_azure.rb b/lib/datadog_api_client/v2/models/logs_archive_destination_azure.rb index b7a616bdf12f..fa4231e43d89 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_destination_azure.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_destination_azure.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The Azure archive destination. class LogsArchiveDestinationAzure + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The container where the archive will be stored. attr_accessor :container @@ -241,7 +244,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_destination_azure_type.rb b/lib/datadog_api_client/v2/models/logs_archive_destination_azure_type.rb index 70c6e440b084..53e863c67425 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_destination_azure_type.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_destination_azure_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsArchiveDestinationAzureType.constants.select { |c| LogsArchiveDestinationAzureType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsArchiveDestinationAzureType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_destination_gcs.rb b/lib/datadog_api_client/v2/models/logs_archive_destination_gcs.rb index 68db5a3bcd15..0e0510f5afef 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_destination_gcs.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_destination_gcs.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The GCS archive destination. class LogsArchiveDestinationGCS + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The bucket where the archive will be stored. attr_accessor :bucket @@ -216,7 +219,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_destination_gcs_type.rb b/lib/datadog_api_client/v2/models/logs_archive_destination_gcs_type.rb index ea199fc87b56..037b0176c29e 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_destination_gcs_type.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_destination_gcs_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsArchiveDestinationGCSType.constants.select { |c| LogsArchiveDestinationGCSType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsArchiveDestinationGCSType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_destination_s3.rb b/lib/datadog_api_client/v2/models/logs_archive_destination_s3.rb index c47e5439b8cf..d9d364d1aee8 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_destination_s3.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_destination_s3.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The S3 archive destination. class LogsArchiveDestinationS3 + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The bucket where the archive will be stored. attr_accessor :bucket @@ -216,7 +219,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_destination_s3_type.rb b/lib/datadog_api_client/v2/models/logs_archive_destination_s3_type.rb index 0b90583d82c6..dc7cb33d05e4 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_destination_s3_type.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_destination_s3_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsArchiveDestinationS3Type.constants.select { |c| LogsArchiveDestinationS3Type::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsArchiveDestinationS3Type" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_integration_azure.rb b/lib/datadog_api_client/v2/models/logs_archive_integration_azure.rb index d3899c06856c..e4c145955cb2 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_integration_azure.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_integration_azure.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The Azure archive's integration destination. class LogsArchiveIntegrationAzure + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A client ID. attr_accessor :client_id @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_integration_gcs.rb b/lib/datadog_api_client/v2/models/logs_archive_integration_gcs.rb index 9796f02a597e..c5120835d2f8 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_integration_gcs.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_integration_gcs.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The GCS archive's integration destination. class LogsArchiveIntegrationGCS + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A client email. attr_accessor :client_email @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_integration_s3.rb b/lib/datadog_api_client/v2/models/logs_archive_integration_s3.rb index 25239bc97386..f3335e22fc51 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_integration_s3.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_integration_s3.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The S3 Archive's integration destination. class LogsArchiveIntegrationS3 + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The account ID for the integration. attr_accessor :account_id @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_order.rb b/lib/datadog_api_client/v2/models/logs_archive_order.rb index d9c335a2fba5..d640ef0a872c 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_order.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_order.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A ordered list of archive IDs. class LogsArchiveOrder + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_order_attributes.rb b/lib/datadog_api_client/v2/models/logs_archive_order_attributes.rb index 9982c62e875b..dd9c7d318028 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_order_attributes.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_order_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The attributes associated with the archive order. class LogsArchiveOrderAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An ordered array of `` strings, the order of archive IDs in the array define the overall archives order for Datadog. attr_accessor :archive_ids @@ -178,7 +181,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_order_definition.rb b/lib/datadog_api_client/v2/models/logs_archive_order_definition.rb index f34d24adc797..42a53881193f 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_order_definition.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_order_definition.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The definition of an archive order. class LogsArchiveOrderDefinition + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :type @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_order_definition_type.rb b/lib/datadog_api_client/v2/models/logs_archive_order_definition_type.rb index 2d277c34e22e..8c4c1c3cdc65 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_order_definition_type.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_order_definition_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsArchiveOrderDefinitionType.constants.select { |c| LogsArchiveOrderDefinitionType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsArchiveOrderDefinitionType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_archive_state.rb b/lib/datadog_api_client/v2/models/logs_archive_state.rb index bbcd625f8514..91c6c8c4531e 100644 --- a/lib/datadog_api_client/v2/models/logs_archive_state.rb +++ b/lib/datadog_api_client/v2/models/logs_archive_state.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsArchiveState.constants.select { |c| LogsArchiveState::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsArchiveState" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_archives.rb b/lib/datadog_api_client/v2/models/logs_archives.rb index f08257f57270..53a2c8437c2c 100644 --- a/lib/datadog_api_client/v2/models/logs_archives.rb +++ b/lib/datadog_api_client/v2/models/logs_archives.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The available archives. class LogsArchives + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A list of archives. attr_accessor :data @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_compute.rb b/lib/datadog_api_client/v2/models/logs_compute.rb index c8dbf66650ab..ef4d5c35cfe0 100644 --- a/lib/datadog_api_client/v2/models/logs_compute.rb +++ b/lib/datadog_api_client/v2/models/logs_compute.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A compute rule to compute metrics or timeseries class LogsCompute + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :aggregation # The time buckets' size (only used for type=timeseries) Defaults to a resolution of 150 points @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_compute_type.rb b/lib/datadog_api_client/v2/models/logs_compute_type.rb index ee723a1c447b..c60784ca5622 100644 --- a/lib/datadog_api_client/v2/models/logs_compute_type.rb +++ b/lib/datadog_api_client/v2/models/logs_compute_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsComputeType.constants.select { |c| LogsComputeType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsComputeType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_group_by.rb b/lib/datadog_api_client/v2/models/logs_group_by.rb index ab2ac6cf4dca..34f22cc22a8f 100644 --- a/lib/datadog_api_client/v2/models/logs_group_by.rb +++ b/lib/datadog_api_client/v2/models/logs_group_by.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A group by rule class LogsGroupBy + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The name of the facet to use (required) attr_accessor :facet @@ -224,7 +227,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_group_by_histogram.rb b/lib/datadog_api_client/v2/models/logs_group_by_histogram.rb index 36d57c1b6b52..391faa16fc13 100644 --- a/lib/datadog_api_client/v2/models/logs_group_by_histogram.rb +++ b/lib/datadog_api_client/v2/models/logs_group_by_histogram.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Used to perform a histogram computation (only for measure facets). Note: At most 100 buckets are allowed, the number of buckets is (max - min)/interval. class LogsGroupByHistogram + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The bin size of the histogram buckets attr_accessor :interval @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_group_by_missing.rb b/lib/datadog_api_client/v2/models/logs_group_by_missing.rb index ff32e17474f3..7ca581912fd7 100644 --- a/lib/datadog_api_client/v2/models/logs_group_by_missing.rb +++ b/lib/datadog_api_client/v2/models/logs_group_by_missing.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # The value to use for logs that don't have the facet used to group by module LogsGroupByMissing class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -43,12 +45,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/logs_group_by_total.rb b/lib/datadog_api_client/v2/models/logs_group_by_total.rb index 6c3ac04de173..703e309f6a12 100644 --- a/lib/datadog_api_client/v2/models/logs_group_by_total.rb +++ b/lib/datadog_api_client/v2/models/logs_group_by_total.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # A resulting object to put the given computes in over all the matching records. module LogsGroupByTotal class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -44,12 +46,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/logs_list_request.rb b/lib/datadog_api_client/v2/models/logs_list_request.rb index cf2e0b7c4ad5..fdcb36cc1262 100644 --- a/lib/datadog_api_client/v2/models/logs_list_request.rb +++ b/lib/datadog_api_client/v2/models/logs_list_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The request for a logs list. class LogsListRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :filter attr_accessor :options @@ -197,7 +200,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_list_request_page.rb b/lib/datadog_api_client/v2/models/logs_list_request_page.rb index d7e4af11c1c6..7bbc419b08e4 100644 --- a/lib/datadog_api_client/v2/models/logs_list_request_page.rb +++ b/lib/datadog_api_client/v2/models/logs_list_request_page.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Paging attributes for listing logs. class LogsListRequestPage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List following results with a cursor provided in the previous query. attr_accessor :cursor @@ -198,7 +201,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_list_response.rb b/lib/datadog_api_client/v2/models/logs_list_response.rb index 4b2e3bf476c5..29b2d6733772 100644 --- a/lib/datadog_api_client/v2/models/logs_list_response.rb +++ b/lib/datadog_api_client/v2/models/logs_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response object with all logs matching the request and pagination information. class LogsListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of logs matching the request. attr_accessor :data @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_list_response_links.rb b/lib/datadog_api_client/v2/models/logs_list_response_links.rb index 564618e006fc..e7fb26550921 100644 --- a/lib/datadog_api_client/v2/models/logs_list_response_links.rb +++ b/lib/datadog_api_client/v2/models/logs_list_response_links.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Links attributes. class LogsListResponseLinks + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Link for the next set of results. Note that the request can also be made using the POST endpoint. attr_accessor :_next @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_compute.rb b/lib/datadog_api_client/v2/models/logs_metric_compute.rb index 0e3cc61a9240..8abf13becedf 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_compute.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_compute.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The compute rule to compute the log-based metric. class LogsMetricCompute + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :aggregation_type # The path to the value the log-based metric will aggregate on (only used if the aggregation type is a \"distribution\"). @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_compute_aggregation_type.rb b/lib/datadog_api_client/v2/models/logs_metric_compute_aggregation_type.rb index e0b13ad9e89e..31d4cf4b830f 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_compute_aggregation_type.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_compute_aggregation_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsMetricComputeAggregationType.constants.select { |c| LogsMetricComputeAggregationType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsMetricComputeAggregationType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_create_attributes.rb b/lib/datadog_api_client/v2/models/logs_metric_create_attributes.rb index 31515ef75af2..e8c963658c85 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_create_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The object describing the Datadog log-based metric to create. class LogsMetricCreateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :compute attr_accessor :filter @@ -196,7 +199,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_create_data.rb b/lib/datadog_api_client/v2/models/logs_metric_create_data.rb index 81c01f4f956c..3682998a949d 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_create_data.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The new log-based metric properties. class LogsMetricCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The name of the log-based metric. @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_create_request.rb b/lib/datadog_api_client/v2/models/logs_metric_create_request.rb index 153a0b8fc9fe..ef4d4f5b9caf 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_create_request.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The new log-based metric body. class LogsMetricCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_filter.rb b/lib/datadog_api_client/v2/models/logs_metric_filter.rb index e4081e84d108..6f2a273fddb2 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_filter.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_filter.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The log-based metric filter. Logs matching this filter will be aggregated in this metric. class LogsMetricFilter + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The search query - following the log search syntax. attr_accessor :query @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_group_by.rb b/lib/datadog_api_client/v2/models/logs_metric_group_by.rb index 5b082de4f7d8..aa3d4c875e78 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_group_by.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_group_by.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A group by rule. class LogsMetricGroupBy + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The path to the value the log-based metric will be aggregated over. attr_accessor :path @@ -186,7 +189,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_response.rb b/lib/datadog_api_client/v2/models/logs_metric_response.rb index fd29e6f1c6a6..e77eb333e2f1 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_response.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The log-based metric object. class LogsMetricResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_response_attributes.rb b/lib/datadog_api_client/v2/models/logs_metric_response_attributes.rb index 619182f77f67..c40383e45f00 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_response_attributes.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_response_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The object describing a Datadog log-based metric. class LogsMetricResponseAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :compute attr_accessor :filter @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_response_compute.rb b/lib/datadog_api_client/v2/models/logs_metric_response_compute.rb index ef735e043d24..160d9095d187 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_response_compute.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_response_compute.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The compute rule to compute the log-based metric. class LogsMetricResponseCompute + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :aggregation_type # The path to the value the log-based metric will aggregate on (only used if the aggregation type is a \"distribution\"). @@ -180,7 +183,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_response_compute_aggregation_type.rb b/lib/datadog_api_client/v2/models/logs_metric_response_compute_aggregation_type.rb index a1020bdae690..0bc77e5a0b1c 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_response_compute_aggregation_type.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_response_compute_aggregation_type.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsMetricResponseComputeAggregationType.constants.select { |c| LogsMetricResponseComputeAggregationType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsMetricResponseComputeAggregationType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_response_data.rb b/lib/datadog_api_client/v2/models/logs_metric_response_data.rb index 02b5ab6fccec..becce33e5ab0 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_response_data.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The log-based metric properties. class LogsMetricResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The name of the log-based metric. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_response_filter.rb b/lib/datadog_api_client/v2/models/logs_metric_response_filter.rb index 50d4c506d3f8..53667c65cc99 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_response_filter.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_response_filter.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The log-based metric filter. Logs matching this filter will be aggregated in this metric. class LogsMetricResponseFilter + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The search query - following the log search syntax. attr_accessor :query @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_response_group_by.rb b/lib/datadog_api_client/v2/models/logs_metric_response_group_by.rb index 1be7628b5770..6c0dae628e3c 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_response_group_by.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_response_group_by.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A group by rule. class LogsMetricResponseGroupBy + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The path to the value the log-based metric will be aggregated over. attr_accessor :path @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_type.rb b/lib/datadog_api_client/v2/models/logs_metric_type.rb index bcfeb0eae529..a7855174f62d 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_type.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsMetricType.constants.select { |c| LogsMetricType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsMetricType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_update_attributes.rb b/lib/datadog_api_client/v2/models/logs_metric_update_attributes.rb index 630fd5d1e1da..07402f2ac6fc 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_update_attributes.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_update_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The log-based metric properties that will be updated. class LogsMetricUpdateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :filter # The rules for the group by. @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_update_data.rb b/lib/datadog_api_client/v2/models/logs_metric_update_data.rb index 0e502ea182e9..2614ebf53d45 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_update_data.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_update_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The new log-based metric properties. class LogsMetricUpdateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :type @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metric_update_request.rb b/lib/datadog_api_client/v2/models/logs_metric_update_request.rb index 56523397731f..e9a84e3246e6 100644 --- a/lib/datadog_api_client/v2/models/logs_metric_update_request.rb +++ b/lib/datadog_api_client/v2/models/logs_metric_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The new log-based metric body. class LogsMetricUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_metrics_response.rb b/lib/datadog_api_client/v2/models/logs_metrics_response.rb index f26954d14148..d969b756b19d 100644 --- a/lib/datadog_api_client/v2/models/logs_metrics_response.rb +++ b/lib/datadog_api_client/v2/models/logs_metrics_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # All the available log-based metric objects. class LogsMetricsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A list of log-based metric objects. attr_accessor :data @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_query_filter.rb b/lib/datadog_api_client/v2/models/logs_query_filter.rb index ff7bd3c8e066..4e4e7f1842e9 100644 --- a/lib/datadog_api_client/v2/models/logs_query_filter.rb +++ b/lib/datadog_api_client/v2/models/logs_query_filter.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The search and filter query settings class LogsQueryFilter + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The minimum time for the requested logs, supports date math and regular timestamps attr_accessor :from @@ -209,7 +212,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_query_options.rb b/lib/datadog_api_client/v2/models/logs_query_options.rb index c33cc5f1cfeb..07d677a046e6 100644 --- a/lib/datadog_api_client/v2/models/logs_query_options.rb +++ b/lib/datadog_api_client/v2/models/logs_query_options.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Global query options that are used during the query. Note: You should only supply timezone or time offset but not both otherwise the query will fail. class LogsQueryOptions + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The time offset (in seconds) to apply to the query. attr_accessor :time_offset @@ -183,7 +186,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_response_metadata.rb b/lib/datadog_api_client/v2/models/logs_response_metadata.rb index 129af69ded88..681d22b97ad4 100644 --- a/lib/datadog_api_client/v2/models/logs_response_metadata.rb +++ b/lib/datadog_api_client/v2/models/logs_response_metadata.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The metadata associated with a request class LogsResponseMetadata + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The time elapsed in milliseconds attr_accessor :elapsed @@ -211,7 +214,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_response_metadata_page.rb b/lib/datadog_api_client/v2/models/logs_response_metadata_page.rb index e38dc27654b3..5b7118092cf7 100644 --- a/lib/datadog_api_client/v2/models/logs_response_metadata_page.rb +++ b/lib/datadog_api_client/v2/models/logs_response_metadata_page.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Paging attributes. class LogsResponseMetadataPage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The cursor to use to get the next results, if any. To make the next request, use the same. parameters with the addition of the `page[cursor]`. attr_accessor :after @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/logs_sort.rb b/lib/datadog_api_client/v2/models/logs_sort.rb index fc6ccc950c8e..dc07e798a987 100644 --- a/lib/datadog_api_client/v2/models/logs_sort.rb +++ b/lib/datadog_api_client/v2/models/logs_sort.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsSort.constants.select { |c| LogsSort::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsSort" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_sort_order.rb b/lib/datadog_api_client/v2/models/logs_sort_order.rb index ed05edd43564..1fdddd97bc0b 100644 --- a/lib/datadog_api_client/v2/models/logs_sort_order.rb +++ b/lib/datadog_api_client/v2/models/logs_sort_order.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = LogsSortOrder.constants.select { |c| LogsSortOrder::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #LogsSortOrder" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/logs_warning.rb b/lib/datadog_api_client/v2/models/logs_warning.rb index 93069262a7f1..e13af9cea796 100644 --- a/lib/datadog_api_client/v2/models/logs_warning.rb +++ b/lib/datadog_api_client/v2/models/logs_warning.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A warning message indicating something that went wrong with the query class LogsWarning + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A unique code for this type of warning attr_accessor :code @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric.rb b/lib/datadog_api_client/v2/models/metric.rb index 8eae57275af0..398d3e21a2a0 100644 --- a/lib/datadog_api_client/v2/models/metric.rb +++ b/lib/datadog_api_client/v2/models/metric.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object for a single metric tag configuration. class Metric + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The metric name for this resource. attr_accessor :id @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_all_tags.rb b/lib/datadog_api_client/v2/models/metric_all_tags.rb index 3e4dd104263d..b579c74fa5de 100644 --- a/lib/datadog_api_client/v2/models/metric_all_tags.rb +++ b/lib/datadog_api_client/v2/models/metric_all_tags.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object for a single metric's indexed tags. class MetricAllTags + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The metric name for this resource. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_all_tags_attributes.rb b/lib/datadog_api_client/v2/models/metric_all_tags_attributes.rb index 014ed7f34559..2493659cc801 100644 --- a/lib/datadog_api_client/v2/models/metric_all_tags_attributes.rb +++ b/lib/datadog_api_client/v2/models/metric_all_tags_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object containing the definition of a metric's tags. class MetricAllTagsAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of indexed tag value pairs. attr_accessor :tags @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_all_tags_response.rb b/lib/datadog_api_client/v2/models/metric_all_tags_response.rb index e08f3adfa588..33f74b3a55b5 100644 --- a/lib/datadog_api_client/v2/models/metric_all_tags_response.rb +++ b/lib/datadog_api_client/v2/models/metric_all_tags_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response object that includes a single metric's indexed tags. class MetricAllTagsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_distinct_volume.rb b/lib/datadog_api_client/v2/models/metric_distinct_volume.rb index 1e3e429731af..70d835784eeb 100644 --- a/lib/datadog_api_client/v2/models/metric_distinct_volume.rb +++ b/lib/datadog_api_client/v2/models/metric_distinct_volume.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object for a single metric's distinct volume. class MetricDistinctVolume + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The metric name for this resource. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_distinct_volume_attributes.rb b/lib/datadog_api_client/v2/models/metric_distinct_volume_attributes.rb index c2b7b826b735..db6f4bf472c1 100644 --- a/lib/datadog_api_client/v2/models/metric_distinct_volume_attributes.rb +++ b/lib/datadog_api_client/v2/models/metric_distinct_volume_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object containing the definition of a metric's distinct volume. class MetricDistinctVolumeAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Distinct volume for the given metric. attr_accessor :distinct_volume @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_distinct_volume_type.rb b/lib/datadog_api_client/v2/models/metric_distinct_volume_type.rb index 4ae337d3f940..fd78a17be849 100644 --- a/lib/datadog_api_client/v2/models/metric_distinct_volume_type.rb +++ b/lib/datadog_api_client/v2/models/metric_distinct_volume_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = MetricDistinctVolumeType.constants.select { |c| MetricDistinctVolumeType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #MetricDistinctVolumeType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume.rb b/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume.rb index 62506f68d2ee..1492e86ffef8 100644 --- a/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume.rb +++ b/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object for a single metric's ingested and indexed volume. class MetricIngestedIndexedVolume + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The metric name for this resource. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume_attributes.rb b/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume_attributes.rb index ebc7a181d813..18c9082affa1 100644 --- a/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume_attributes.rb +++ b/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object containing the definition of a metric's ingested and indexed volume. class MetricIngestedIndexedVolumeAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Indexed volume for the given metric. attr_accessor :indexed_volume @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume_type.rb b/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume_type.rb index a8fec465f841..4182f273dc4b 100644 --- a/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume_type.rb +++ b/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = MetricIngestedIndexedVolumeType.constants.select { |c| MetricIngestedIndexedVolumeType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #MetricIngestedIndexedVolumeType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/metric_tag_configuration.rb b/lib/datadog_api_client/v2/models/metric_tag_configuration.rb index 7414d46ceab8..770a1e1ec414 100644 --- a/lib/datadog_api_client/v2/models/metric_tag_configuration.rb +++ b/lib/datadog_api_client/v2/models/metric_tag_configuration.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object for a single metric tag configuration. class MetricTagConfiguration + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The metric name for this resource. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_tag_configuration_attributes.rb b/lib/datadog_api_client/v2/models/metric_tag_configuration_attributes.rb index 0f63f5917e9d..95003d1457a5 100644 --- a/lib/datadog_api_client/v2/models/metric_tag_configuration_attributes.rb +++ b/lib/datadog_api_client/v2/models/metric_tag_configuration_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object containing the definition of a metric tag configuration attributes. class MetricTagConfigurationAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Timestamp when the tag configuration was created. attr_accessor :created_at @@ -214,7 +217,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_tag_configuration_create_attributes.rb b/lib/datadog_api_client/v2/models/metric_tag_configuration_create_attributes.rb index c7d5f345d307..f4d340434c5d 100644 --- a/lib/datadog_api_client/v2/models/metric_tag_configuration_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/metric_tag_configuration_create_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object containing the definition of a metric tag configuration to be created. class MetricTagConfigurationCreateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Toggle to include/exclude percentiles for a distribution metric. Defaults to false. Can only be applied to metrics that have a `metric_type` of `distribution`. attr_accessor :include_percentiles @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_tag_configuration_create_data.rb b/lib/datadog_api_client/v2/models/metric_tag_configuration_create_data.rb index d3cb512df326..699d3cad9432 100644 --- a/lib/datadog_api_client/v2/models/metric_tag_configuration_create_data.rb +++ b/lib/datadog_api_client/v2/models/metric_tag_configuration_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object for a single metric to be configure tags on. class MetricTagConfigurationCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The metric name for this resource. @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_tag_configuration_create_request.rb b/lib/datadog_api_client/v2/models/metric_tag_configuration_create_request.rb index 1431a752747e..2ae31becb065 100644 --- a/lib/datadog_api_client/v2/models/metric_tag_configuration_create_request.rb +++ b/lib/datadog_api_client/v2/models/metric_tag_configuration_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Request object that includes the metric that you would like to configure tags for. class MetricTagConfigurationCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_tag_configuration_metric_types.rb b/lib/datadog_api_client/v2/models/metric_tag_configuration_metric_types.rb index cf65f4514fe4..4d4ad5e4b0b9 100644 --- a/lib/datadog_api_client/v2/models/metric_tag_configuration_metric_types.rb +++ b/lib/datadog_api_client/v2/models/metric_tag_configuration_metric_types.rb @@ -35,8 +35,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = MetricTagConfigurationMetricTypes.constants.select { |c| MetricTagConfigurationMetricTypes::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #MetricTagConfigurationMetricTypes" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/metric_tag_configuration_response.rb b/lib/datadog_api_client/v2/models/metric_tag_configuration_response.rb index 630c429165a2..82840400351b 100644 --- a/lib/datadog_api_client/v2/models/metric_tag_configuration_response.rb +++ b/lib/datadog_api_client/v2/models/metric_tag_configuration_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response object which includes a single metric's tag configuration. class MetricTagConfigurationResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_tag_configuration_type.rb b/lib/datadog_api_client/v2/models/metric_tag_configuration_type.rb index cacab207e23f..0ebb603409ce 100644 --- a/lib/datadog_api_client/v2/models/metric_tag_configuration_type.rb +++ b/lib/datadog_api_client/v2/models/metric_tag_configuration_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = MetricTagConfigurationType.constants.select { |c| MetricTagConfigurationType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #MetricTagConfigurationType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/metric_tag_configuration_update_attributes.rb b/lib/datadog_api_client/v2/models/metric_tag_configuration_update_attributes.rb index ff331f9e2f39..8666de71ce0e 100644 --- a/lib/datadog_api_client/v2/models/metric_tag_configuration_update_attributes.rb +++ b/lib/datadog_api_client/v2/models/metric_tag_configuration_update_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object containing the definition of a metric tag configuration to be updated. class MetricTagConfigurationUpdateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Toggle to include/exclude percentiles for a distribution metric. Defaults to false. Can only be applied to metrics that have a `metric_type` of `distribution`. attr_accessor :include_percentiles @@ -185,7 +188,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_tag_configuration_update_data.rb b/lib/datadog_api_client/v2/models/metric_tag_configuration_update_data.rb index f15df773c6fb..f0fa76a942a3 100644 --- a/lib/datadog_api_client/v2/models/metric_tag_configuration_update_data.rb +++ b/lib/datadog_api_client/v2/models/metric_tag_configuration_update_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object for a single tag configuration to be edited. class MetricTagConfigurationUpdateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The metric name for this resource. @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_tag_configuration_update_request.rb b/lib/datadog_api_client/v2/models/metric_tag_configuration_update_request.rb index b82b3af3bf17..497a3ab0a58d 100644 --- a/lib/datadog_api_client/v2/models/metric_tag_configuration_update_request.rb +++ b/lib/datadog_api_client/v2/models/metric_tag_configuration_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Request object that includes the metric that you would like to edit the tag configuration on. class MetricTagConfigurationUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metric_type.rb b/lib/datadog_api_client/v2/models/metric_type.rb index c466aaca4af6..1ec58eb27be0 100644 --- a/lib/datadog_api_client/v2/models/metric_type.rb +++ b/lib/datadog_api_client/v2/models/metric_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = MetricType.constants.select { |c| MetricType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #MetricType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/metric_volumes.rb b/lib/datadog_api_client/v2/models/metric_volumes.rb index 646c082b6ad3..bf431f1ee421 100644 --- a/lib/datadog_api_client/v2/models/metric_volumes.rb +++ b/lib/datadog_api_client/v2/models/metric_volumes.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # Possible response objects for a metric's volume. module MetricVolumes class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -43,12 +45,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/metric_volumes_response.rb b/lib/datadog_api_client/v2/models/metric_volumes_response.rb index 3e94db58e071..9d67a0840825 100644 --- a/lib/datadog_api_client/v2/models/metric_volumes_response.rb +++ b/lib/datadog_api_client/v2/models/metric_volumes_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response object which includes a single metric's volume. class MetricVolumesResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations.rb b/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations.rb index 6cd2bd927c19..8d5691e7be64 100644 --- a/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations.rb +++ b/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # Object for a metrics and metric tag configurations. module MetricsAndMetricTagConfigurations class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -43,12 +45,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations_response.rb b/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations_response.rb index bd2a67ceedd1..ff608ab0147f 100644 --- a/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations_response.rb +++ b/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response object that includes metrics and metric tag configurations. class MetricsAndMetricTagConfigurationsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of metrics and metric tag configurations. attr_accessor :data @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/organization.rb b/lib/datadog_api_client/v2/models/organization.rb index 10eaddc52773..4606c7b1cf8b 100644 --- a/lib/datadog_api_client/v2/models/organization.rb +++ b/lib/datadog_api_client/v2/models/organization.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Organization object. class Organization + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the organization. @@ -196,7 +199,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/organization_attributes.rb b/lib/datadog_api_client/v2/models/organization_attributes.rb index e460152e6e16..e9d274425c88 100644 --- a/lib/datadog_api_client/v2/models/organization_attributes.rb +++ b/lib/datadog_api_client/v2/models/organization_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of the organization. class OrganizationAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation time of the organization. attr_accessor :created_at @@ -241,7 +244,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/organizations_type.rb b/lib/datadog_api_client/v2/models/organizations_type.rb index 59af96cd4493..fb66d082358e 100644 --- a/lib/datadog_api_client/v2/models/organizations_type.rb +++ b/lib/datadog_api_client/v2/models/organizations_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = OrganizationsType.constants.select { |c| OrganizationsType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #OrganizationsType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/pagination.rb b/lib/datadog_api_client/v2/models/pagination.rb index 984013de265d..9bc187322d3b 100644 --- a/lib/datadog_api_client/v2/models/pagination.rb +++ b/lib/datadog_api_client/v2/models/pagination.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Pagination object. class Pagination + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Total count. attr_accessor :total_count @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/partial_api_key.rb b/lib/datadog_api_client/v2/models/partial_api_key.rb index 458db5de0acd..c858e08c20f3 100644 --- a/lib/datadog_api_client/v2/models/partial_api_key.rb +++ b/lib/datadog_api_client/v2/models/partial_api_key.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Partial Datadog API key. class PartialAPIKey + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the API key. @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/partial_api_key_attributes.rb b/lib/datadog_api_client/v2/models/partial_api_key_attributes.rb index 10a8e4134806..96aa986f9be2 100644 --- a/lib/datadog_api_client/v2/models/partial_api_key_attributes.rb +++ b/lib/datadog_api_client/v2/models/partial_api_key_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of a partial API key. class PartialAPIKeyAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation date of the API key. attr_accessor :created_at @@ -225,7 +228,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/partial_application_key.rb b/lib/datadog_api_client/v2/models/partial_application_key.rb index d0c516c95b22..94476beed481 100644 --- a/lib/datadog_api_client/v2/models/partial_application_key.rb +++ b/lib/datadog_api_client/v2/models/partial_application_key.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Partial Datadog application key. class PartialApplicationKey + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the application key. @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/partial_application_key_attributes.rb b/lib/datadog_api_client/v2/models/partial_application_key_attributes.rb index b0704d767db3..a189206b8bc2 100644 --- a/lib/datadog_api_client/v2/models/partial_application_key_attributes.rb +++ b/lib/datadog_api_client/v2/models/partial_application_key_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of a partial application key. class PartialApplicationKeyAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation date of the application key. attr_accessor :created_at @@ -215,7 +218,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/partial_application_key_response.rb b/lib/datadog_api_client/v2/models/partial_application_key_response.rb index 5d1586016afa..3cb9441bfdb0 100644 --- a/lib/datadog_api_client/v2/models/partial_application_key_response.rb +++ b/lib/datadog_api_client/v2/models/partial_application_key_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response for retrieving a partial application key. class PartialApplicationKeyResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Array of objects related to the application key. @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/permission.rb b/lib/datadog_api_client/v2/models/permission.rb index 37c5ff0a4b1b..eb7a0f358ea9 100644 --- a/lib/datadog_api_client/v2/models/permission.rb +++ b/lib/datadog_api_client/v2/models/permission.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Permission object. class Permission + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the permission. @@ -196,7 +199,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/permission_attributes.rb b/lib/datadog_api_client/v2/models/permission_attributes.rb index fa5df0479ca7..5e27148c1bf9 100644 --- a/lib/datadog_api_client/v2/models/permission_attributes.rb +++ b/lib/datadog_api_client/v2/models/permission_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of a permission. class PermissionAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation time of the permission. attr_accessor :created @@ -231,7 +234,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/permissions_response.rb b/lib/datadog_api_client/v2/models/permissions_response.rb index 30dfde423d50..8809740d69ab 100644 --- a/lib/datadog_api_client/v2/models/permissions_response.rb +++ b/lib/datadog_api_client/v2/models/permissions_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Payload with API-returned permissions. class PermissionsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of permissions. attr_accessor :data @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/permissions_type.rb b/lib/datadog_api_client/v2/models/permissions_type.rb index f245df5db7cc..8542155d0e6d 100644 --- a/lib/datadog_api_client/v2/models/permissions_type.rb +++ b/lib/datadog_api_client/v2/models/permissions_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = PermissionsType.constants.select { |c| PermissionsType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #PermissionsType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/process_summaries_meta.rb b/lib/datadog_api_client/v2/models/process_summaries_meta.rb index 63701b06c17b..088a1874614d 100644 --- a/lib/datadog_api_client/v2/models/process_summaries_meta.rb +++ b/lib/datadog_api_client/v2/models/process_summaries_meta.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response metadata object. class ProcessSummariesMeta + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :page # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/process_summaries_meta_page.rb b/lib/datadog_api_client/v2/models/process_summaries_meta_page.rb index 4ae0105a6585..0559dac51567 100644 --- a/lib/datadog_api_client/v2/models/process_summaries_meta_page.rb +++ b/lib/datadog_api_client/v2/models/process_summaries_meta_page.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Paging attributes. class ProcessSummariesMetaPage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The cursor used to get the next results, if any. To make the next request, use the same parameters with the addition of the `page[cursor]`. attr_accessor :after @@ -205,7 +208,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/process_summaries_response.rb b/lib/datadog_api_client/v2/models/process_summaries_response.rb index a483656fc196..84037de37e4f 100644 --- a/lib/datadog_api_client/v2/models/process_summaries_response.rb +++ b/lib/datadog_api_client/v2/models/process_summaries_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # List of process summaries. class ProcessSummariesResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of process summary objects. attr_accessor :data @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/process_summary.rb b/lib/datadog_api_client/v2/models/process_summary.rb index 5b81becb32f1..b73158a6b327 100644 --- a/lib/datadog_api_client/v2/models/process_summary.rb +++ b/lib/datadog_api_client/v2/models/process_summary.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Process summary object. class ProcessSummary + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # Process ID. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/process_summary_attributes.rb b/lib/datadog_api_client/v2/models/process_summary_attributes.rb index dc2732e8c250..4ba97740a9a9 100644 --- a/lib/datadog_api_client/v2/models/process_summary_attributes.rb +++ b/lib/datadog_api_client/v2/models/process_summary_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes for a process summary. class ProcessSummaryAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Process command line. attr_accessor :cmdline @@ -243,7 +246,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/process_summary_type.rb b/lib/datadog_api_client/v2/models/process_summary_type.rb index 30de5117c8e4..f229ed5c9114 100644 --- a/lib/datadog_api_client/v2/models/process_summary_type.rb +++ b/lib/datadog_api_client/v2/models/process_summary_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = ProcessSummaryType.constants.select { |c| ProcessSummaryType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #ProcessSummaryType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/query_sort_order.rb b/lib/datadog_api_client/v2/models/query_sort_order.rb index a5e9e6484b78..52c3ec573ad5 100644 --- a/lib/datadog_api_client/v2/models/query_sort_order.rb +++ b/lib/datadog_api_client/v2/models/query_sort_order.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = QuerySortOrder.constants.select { |c| QuerySortOrder::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #QuerySortOrder" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_incident_integration_metadata_data.rb b/lib/datadog_api_client/v2/models/relationship_to_incident_integration_metadata_data.rb index 25ff1a5bb149..00e604e2d959 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_incident_integration_metadata_data.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_incident_integration_metadata_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A relationship reference for an integration metadata object. class RelationshipToIncidentIntegrationMetadataData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A unique identifier that represents the integration metadata. attr_accessor :id @@ -192,7 +195,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_incident_integration_metadatas.rb b/lib/datadog_api_client/v2/models/relationship_to_incident_integration_metadatas.rb index cc70cb4d28c8..965953561e03 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_incident_integration_metadatas.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_incident_integration_metadatas.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A relationship reference for multiple integration metadata objects. class RelationshipToIncidentIntegrationMetadatas + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The integration metadata relationship array attr_accessor :data @@ -178,7 +181,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_incident_postmortem.rb b/lib/datadog_api_client/v2/models/relationship_to_incident_postmortem.rb index da1c40f058f1..57777b2280e9 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_incident_postmortem.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_incident_postmortem.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A relationship reference for postmortems. class RelationshipToIncidentPostmortem + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_incident_postmortem_data.rb b/lib/datadog_api_client/v2/models/relationship_to_incident_postmortem_data.rb index d292d944155f..03b423136816 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_incident_postmortem_data.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_incident_postmortem_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The postmortem relationship data. class RelationshipToIncidentPostmortemData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A unique identifier that represents the postmortem. attr_accessor :id @@ -192,7 +195,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_organization.rb b/lib/datadog_api_client/v2/models/relationship_to_organization.rb index e17df87fe2ae..5b5f73b48d9a 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_organization.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_organization.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationship to an organization. class RelationshipToOrganization + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_organization_data.rb b/lib/datadog_api_client/v2/models/relationship_to_organization_data.rb index 74e163c7edc5..4f1b064c118e 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_organization_data.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_organization_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationship to organization object. class RelationshipToOrganizationData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # ID of the organization. attr_accessor :id @@ -192,7 +195,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_organizations.rb b/lib/datadog_api_client/v2/models/relationship_to_organizations.rb index 0b3ab2a4a8cc..015220678d19 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_organizations.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_organizations.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationship to organizations. class RelationshipToOrganizations + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Relationships to organization objects. attr_accessor :data @@ -178,7 +181,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_permission.rb b/lib/datadog_api_client/v2/models/relationship_to_permission.rb index c33c07ce695b..057b729a0e63 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_permission.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_permission.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationship to a permissions object. class RelationshipToPermission + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_permission_data.rb b/lib/datadog_api_client/v2/models/relationship_to_permission_data.rb index cfd9fb284071..817dfd5b2306 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_permission_data.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_permission_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationship to permission object. class RelationshipToPermissionData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # ID of the permission. attr_accessor :id @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_permissions.rb b/lib/datadog_api_client/v2/models/relationship_to_permissions.rb index 6fa3324d3957..e037607df3cb 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_permissions.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_permissions.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationship to multiple permissions objects. class RelationshipToPermissions + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Relationships to permission objects. attr_accessor :data @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_role.rb b/lib/datadog_api_client/v2/models/relationship_to_role.rb index f6096bbb58f7..a8082272651a 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_role.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_role.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationship to role. class RelationshipToRole + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_role_data.rb b/lib/datadog_api_client/v2/models/relationship_to_role_data.rb index a71bf8e4613a..8172292e4243 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_role_data.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_role_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationship to role object. class RelationshipToRoleData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # ID of the role. attr_accessor :id @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_roles.rb b/lib/datadog_api_client/v2/models/relationship_to_roles.rb index 139b98907a52..e3c741a1e316 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_roles.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_roles.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationship to roles. class RelationshipToRoles + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array containing type and ID of a role. attr_accessor :data @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_user.rb b/lib/datadog_api_client/v2/models/relationship_to_user.rb index 300bad4aab7c..217bd8837f76 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_user.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_user.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationship to user. class RelationshipToUser + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_user_data.rb b/lib/datadog_api_client/v2/models/relationship_to_user_data.rb index 53a84302ed65..9d019c1a4c79 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_user_data.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_user_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationship to user object. class RelationshipToUserData + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A unique identifier that represents the user. attr_accessor :id @@ -192,7 +195,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/relationship_to_users.rb b/lib/datadog_api_client/v2/models/relationship_to_users.rb index 023a56624cd6..a45a4290cdf1 100644 --- a/lib/datadog_api_client/v2/models/relationship_to_users.rb +++ b/lib/datadog_api_client/v2/models/relationship_to_users.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationship to users. class RelationshipToUsers + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Relationships to user objects. attr_accessor :data @@ -178,7 +181,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/response_meta_attributes.rb b/lib/datadog_api_client/v2/models/response_meta_attributes.rb index 3ac2ed6fe1ba..5cba0d21d682 100644 --- a/lib/datadog_api_client/v2/models/response_meta_attributes.rb +++ b/lib/datadog_api_client/v2/models/response_meta_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object describing meta attributes of response. class ResponseMetaAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :page # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role.rb b/lib/datadog_api_client/v2/models/role.rb index caa42bdad9b6..8213adb520c1 100644 --- a/lib/datadog_api_client/v2/models/role.rb +++ b/lib/datadog_api_client/v2/models/role.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Role object returned by the API. class Role + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the role. @@ -205,7 +208,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_attributes.rb b/lib/datadog_api_client/v2/models/role_attributes.rb index a545c4da8e26..80c6dc51ed8e 100644 --- a/lib/datadog_api_client/v2/models/role_attributes.rb +++ b/lib/datadog_api_client/v2/models/role_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of the role. class RoleAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation time of the role. attr_accessor :created_at @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_create_attributes.rb b/lib/datadog_api_client/v2/models/role_create_attributes.rb index 9d3817d4624b..484f4d5c4caf 100644 --- a/lib/datadog_api_client/v2/models/role_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/role_create_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of the created role. class RoleCreateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation time of the role. attr_accessor :created_at @@ -196,7 +199,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_create_data.rb b/lib/datadog_api_client/v2/models/role_create_data.rb index 905e882a1150..bdf7f38feed6 100644 --- a/lib/datadog_api_client/v2/models/role_create_data.rb +++ b/lib/datadog_api_client/v2/models/role_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Data related to the creation of a role. class RoleCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :relationships @@ -195,7 +198,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_create_request.rb b/lib/datadog_api_client/v2/models/role_create_request.rb index 45fbfc056ef9..7d6aa360b728 100644 --- a/lib/datadog_api_client/v2/models/role_create_request.rb +++ b/lib/datadog_api_client/v2/models/role_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Create a role. class RoleCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_create_response.rb b/lib/datadog_api_client/v2/models/role_create_response.rb index 0c04dec8b9a0..ecd00ff0cd78 100644 --- a/lib/datadog_api_client/v2/models/role_create_response.rb +++ b/lib/datadog_api_client/v2/models/role_create_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response containing information about a created role. class RoleCreateResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_create_response_data.rb b/lib/datadog_api_client/v2/models/role_create_response_data.rb index 77b8289421c9..60a3d5332894 100644 --- a/lib/datadog_api_client/v2/models/role_create_response_data.rb +++ b/lib/datadog_api_client/v2/models/role_create_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Role object returned by the API. class RoleCreateResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the role. @@ -205,7 +208,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_relationships.rb b/lib/datadog_api_client/v2/models/role_relationships.rb index 6a5be465267d..d3be15df40cb 100644 --- a/lib/datadog_api_client/v2/models/role_relationships.rb +++ b/lib/datadog_api_client/v2/models/role_relationships.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationships of the role object. class RoleRelationships + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :permissions attr_accessor :users @@ -179,7 +182,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_response.rb b/lib/datadog_api_client/v2/models/role_response.rb index 3ce821d8cefb..e96e2f24294a 100644 --- a/lib/datadog_api_client/v2/models/role_response.rb +++ b/lib/datadog_api_client/v2/models/role_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response containing information about a single role. class RoleResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_response_relationships.rb b/lib/datadog_api_client/v2/models/role_response_relationships.rb index 4049ee83c0c4..c282d5eb8ef8 100644 --- a/lib/datadog_api_client/v2/models/role_response_relationships.rb +++ b/lib/datadog_api_client/v2/models/role_response_relationships.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationships of the role object returned by the API. class RoleResponseRelationships + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :permissions # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_update_attributes.rb b/lib/datadog_api_client/v2/models/role_update_attributes.rb index 54401b85d0df..4c344b44af76 100644 --- a/lib/datadog_api_client/v2/models/role_update_attributes.rb +++ b/lib/datadog_api_client/v2/models/role_update_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of the role. class RoleUpdateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation time of the role. attr_accessor :created_at @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_update_data.rb b/lib/datadog_api_client/v2/models/role_update_data.rb index d85b38003a1d..90c6b4339518 100644 --- a/lib/datadog_api_client/v2/models/role_update_data.rb +++ b/lib/datadog_api_client/v2/models/role_update_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Data related to the update of a role. class RoleUpdateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the role. @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_update_request.rb b/lib/datadog_api_client/v2/models/role_update_request.rb index 792486e3e05c..7e14c9c8607f 100644 --- a/lib/datadog_api_client/v2/models/role_update_request.rb +++ b/lib/datadog_api_client/v2/models/role_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Update a role. class RoleUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_update_response.rb b/lib/datadog_api_client/v2/models/role_update_response.rb index f7eb1fc64bb1..7e1f62b5f243 100644 --- a/lib/datadog_api_client/v2/models/role_update_response.rb +++ b/lib/datadog_api_client/v2/models/role_update_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response containing information about an updated role. class RoleUpdateResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/role_update_response_data.rb b/lib/datadog_api_client/v2/models/role_update_response_data.rb index 78a9144b8eaa..c6ca5e529d76 100644 --- a/lib/datadog_api_client/v2/models/role_update_response_data.rb +++ b/lib/datadog_api_client/v2/models/role_update_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Role object returned by the API. class RoleUpdateResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the role. @@ -205,7 +208,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/roles_response.rb b/lib/datadog_api_client/v2/models/roles_response.rb index 94b732a18262..accb0fae7e69 100644 --- a/lib/datadog_api_client/v2/models/roles_response.rb +++ b/lib/datadog_api_client/v2/models/roles_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response containing information about multiple roles. class RolesResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of returned roles. attr_accessor :data @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/roles_sort.rb b/lib/datadog_api_client/v2/models/roles_sort.rb index d559f12152c5..a71edad88a13 100644 --- a/lib/datadog_api_client/v2/models/roles_sort.rb +++ b/lib/datadog_api_client/v2/models/roles_sort.rb @@ -37,8 +37,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = RolesSort.constants.select { |c| RolesSort::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #RolesSort" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/roles_type.rb b/lib/datadog_api_client/v2/models/roles_type.rb index d3daedeacd52..9b602ed66534 100644 --- a/lib/datadog_api_client/v2/models/roles_type.rb +++ b/lib/datadog_api_client/v2/models/roles_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = RolesType.constants.select { |c| RolesType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #RolesType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_filter.rb b/lib/datadog_api_client/v2/models/security_filter.rb index eaf387cc1be9..f07db2070c9d 100644 --- a/lib/datadog_api_client/v2/models/security_filter.rb +++ b/lib/datadog_api_client/v2/models/security_filter.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The security filter's properties. class SecurityFilter + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The ID of the security filter. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_filter_attributes.rb b/lib/datadog_api_client/v2/models/security_filter_attributes.rb index 54baafa1338f..9c41ba7b82c0 100644 --- a/lib/datadog_api_client/v2/models/security_filter_attributes.rb +++ b/lib/datadog_api_client/v2/models/security_filter_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The object describing a security filter. class SecurityFilterAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The list of exclusion filters applied in this security filter. attr_accessor :exclusion_filters @@ -247,7 +250,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_filter_create_attributes.rb b/lib/datadog_api_client/v2/models/security_filter_create_attributes.rb index 1a19bb794a0c..46da976d30f2 100644 --- a/lib/datadog_api_client/v2/models/security_filter_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/security_filter_create_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object containing the attributes of the security filter to be created. class SecurityFilterCreateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Exclusion filters to exclude some logs from the security filter. attr_accessor :exclusion_filters @@ -237,7 +240,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_filter_create_data.rb b/lib/datadog_api_client/v2/models/security_filter_create_data.rb index 6abcd597ac6b..1bf15e24a8ec 100644 --- a/lib/datadog_api_client/v2/models/security_filter_create_data.rb +++ b/lib/datadog_api_client/v2/models/security_filter_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object for a single security filter. class SecurityFilterCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :type @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_filter_create_request.rb b/lib/datadog_api_client/v2/models/security_filter_create_request.rb index 6379ce63330f..f80f85e4321a 100644 --- a/lib/datadog_api_client/v2/models/security_filter_create_request.rb +++ b/lib/datadog_api_client/v2/models/security_filter_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Request object that includes the security filter that you would like to create. class SecurityFilterCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_filter_exclusion_filter.rb b/lib/datadog_api_client/v2/models/security_filter_exclusion_filter.rb index 80147ad04dd4..6d56452c86e3 100644 --- a/lib/datadog_api_client/v2/models/security_filter_exclusion_filter.rb +++ b/lib/datadog_api_client/v2/models/security_filter_exclusion_filter.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Exclusion filter for the security filter. class SecurityFilterExclusionFilter + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Exclusion filter name. attr_accessor :name @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_filter_exclusion_filter_response.rb b/lib/datadog_api_client/v2/models/security_filter_exclusion_filter_response.rb index feffae039f94..04181674f7e9 100644 --- a/lib/datadog_api_client/v2/models/security_filter_exclusion_filter_response.rb +++ b/lib/datadog_api_client/v2/models/security_filter_exclusion_filter_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # A single exclusion filter. class SecurityFilterExclusionFilterResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The exclusion filter name. attr_accessor :name @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_filter_filtered_data_type.rb b/lib/datadog_api_client/v2/models/security_filter_filtered_data_type.rb index 2b36d362ce3b..cad4bdac4c74 100644 --- a/lib/datadog_api_client/v2/models/security_filter_filtered_data_type.rb +++ b/lib/datadog_api_client/v2/models/security_filter_filtered_data_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityFilterFilteredDataType.constants.select { |c| SecurityFilterFilteredDataType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityFilterFilteredDataType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_filter_meta.rb b/lib/datadog_api_client/v2/models/security_filter_meta.rb index 580f3ec100e4..5307148d8dd4 100644 --- a/lib/datadog_api_client/v2/models/security_filter_meta.rb +++ b/lib/datadog_api_client/v2/models/security_filter_meta.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Optional metadata associated to the response. class SecurityFilterMeta + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A warning message. attr_accessor :warning @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_filter_response.rb b/lib/datadog_api_client/v2/models/security_filter_response.rb index 140fad95b22d..26d6685f933f 100644 --- a/lib/datadog_api_client/v2/models/security_filter_response.rb +++ b/lib/datadog_api_client/v2/models/security_filter_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response object which includes a single security filter. class SecurityFilterResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data attr_accessor :meta @@ -179,7 +182,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_filter_type.rb b/lib/datadog_api_client/v2/models/security_filter_type.rb index b1ebf82f1a99..1ce98a50223a 100644 --- a/lib/datadog_api_client/v2/models/security_filter_type.rb +++ b/lib/datadog_api_client/v2/models/security_filter_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityFilterType.constants.select { |c| SecurityFilterType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityFilterType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_filter_update_attributes.rb b/lib/datadog_api_client/v2/models/security_filter_update_attributes.rb index 1e287a8b92f4..b365572851f4 100644 --- a/lib/datadog_api_client/v2/models/security_filter_update_attributes.rb +++ b/lib/datadog_api_client/v2/models/security_filter_update_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The security filters properties to be updated. class SecurityFilterUpdateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Exclusion filters to exclude some logs from the security filter. attr_accessor :exclusion_filters @@ -237,7 +240,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_filter_update_data.rb b/lib/datadog_api_client/v2/models/security_filter_update_data.rb index 94c75e02c439..6ce2e8db6e94 100644 --- a/lib/datadog_api_client/v2/models/security_filter_update_data.rb +++ b/lib/datadog_api_client/v2/models/security_filter_update_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The new security filter properties. class SecurityFilterUpdateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :type @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_filter_update_request.rb b/lib/datadog_api_client/v2/models/security_filter_update_request.rb index 97c525a4ced4..e3ef8e6fb261 100644 --- a/lib/datadog_api_client/v2/models/security_filter_update_request.rb +++ b/lib/datadog_api_client/v2/models/security_filter_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The new security filter body. class SecurityFilterUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_filters_response.rb b/lib/datadog_api_client/v2/models/security_filters_response.rb index c61fc1f1ebc1..a88c0fe77503 100644 --- a/lib/datadog_api_client/v2/models/security_filters_response.rb +++ b/lib/datadog_api_client/v2/models/security_filters_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # All the available security filters objects. class SecurityFiltersResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A list of security filters objects. attr_accessor :data @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_filter.rb b/lib/datadog_api_client/v2/models/security_monitoring_filter.rb index 241f3ba35941..22f96f03aebe 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_filter.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_filter.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The rule's suppression filter. class SecurityMonitoringFilter + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :action # Query for selecting logs to apply the filtering action. @@ -180,7 +183,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_filter_action.rb b/lib/datadog_api_client/v2/models/security_monitoring_filter_action.rb index 1c60d476bb94..5c6ae988bdd1 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_filter_action.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_filter_action.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityMonitoringFilterAction.constants.select { |c| SecurityMonitoringFilterAction::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityMonitoringFilterAction" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_list_rules_response.rb b/lib/datadog_api_client/v2/models/security_monitoring_list_rules_response.rb index 98aff0b9edd9..3c0e48d6d0fe 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_list_rules_response.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_list_rules_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # List of rules. class SecurityMonitoringListRulesResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array containing the list of rules. attr_accessor :data @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_case.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_case.rb index 8a3238754e96..d5e6e5855271 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_case.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_case.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Case when signal is generated. class SecurityMonitoringRuleCase + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A rule case contains logical operations (`>`,`>=`, `&&`, `||`) to determine if a signal should be generated based on the event counts in the previously defined queries. attr_accessor :condition @@ -202,7 +205,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_case_create.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_case_create.rb index 2479fd776045..a4179d97f1e3 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_case_create.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_case_create.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Case when signal is generated. class SecurityMonitoringRuleCaseCreate + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A rule case contains logical operations (`>`,`>=`, `&&`, `||`) to determine if a signal should be generated based on the event counts in the previously defined queries. attr_accessor :condition @@ -207,7 +210,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_create_payload.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_create_payload.rb index 4e8361f5222e..cb42e2a3ae07 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_create_payload.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_create_payload.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Create a new rule. class SecurityMonitoringRuleCreatePayload + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Cases for generating signals. attr_accessor :cases @@ -288,7 +291,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_detection_method.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_detection_method.rb index e240e1f7ad5b..e8b642747838 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_detection_method.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_detection_method.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityMonitoringRuleDetectionMethod.constants.select { |c| SecurityMonitoringRuleDetectionMethod::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityMonitoringRuleDetectionMethod" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_evaluation_window.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_evaluation_window.rb index 55f992f4afa8..f698dec4f89d 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_evaluation_window.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_evaluation_window.rb @@ -39,8 +39,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityMonitoringRuleEvaluationWindow.constants.select { |c| SecurityMonitoringRuleEvaluationWindow::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityMonitoringRuleEvaluationWindow" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_keep_alive.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_keep_alive.rb index 651c49c8616f..8439d99370e3 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_keep_alive.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_keep_alive.rb @@ -41,8 +41,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityMonitoringRuleKeepAlive.constants.select { |c| SecurityMonitoringRuleKeepAlive::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityMonitoringRuleKeepAlive" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_max_signal_duration.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_max_signal_duration.rb index b3a64fc2f605..22fa87ef37e4 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_max_signal_duration.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_max_signal_duration.rb @@ -43,8 +43,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityMonitoringRuleMaxSignalDuration.constants.select { |c| SecurityMonitoringRuleMaxSignalDuration::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityMonitoringRuleMaxSignalDuration" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options.rb index b359a317c9d8..d4f3a061767d 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Options on new value rules. class SecurityMonitoringRuleNewValueOptions + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :forget_after attr_accessor :learning_duration @@ -179,7 +182,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options_forget_after.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options_forget_after.rb index 9623e6fc45bc..c3c3bddbb63f 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options_forget_after.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options_forget_after.rb @@ -37,8 +37,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityMonitoringRuleNewValueOptionsForgetAfter.constants.select { |c| SecurityMonitoringRuleNewValueOptionsForgetAfter::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityMonitoringRuleNewValueOptionsForgetAfter" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options_learning_duration.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options_learning_duration.rb index a1998ded0d1a..7ff678531fb1 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options_learning_duration.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options_learning_duration.rb @@ -34,8 +34,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityMonitoringRuleNewValueOptionsLearningDuration.constants.select { |c| SecurityMonitoringRuleNewValueOptionsLearningDuration::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityMonitoringRuleNewValueOptionsLearningDuration" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb index 64bb838a23b4..37146adbd868 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Options on rules. class SecurityMonitoringRuleOptions + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :detection_method attr_accessor :evaluation_window @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_query.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_query.rb index 47b51f7a65ee..d4fba38d7634 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_query.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_query.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Query for matching rule. class SecurityMonitoringRuleQuery + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :agent_rule attr_accessor :aggregation @@ -233,7 +236,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_query_aggregation.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_query_aggregation.rb index a6b3dafeada0..483bdace1ebc 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_query_aggregation.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_query_aggregation.rb @@ -36,8 +36,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityMonitoringRuleQueryAggregation.constants.select { |c| SecurityMonitoringRuleQueryAggregation::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityMonitoringRuleQueryAggregation" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_query_create.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_query_create.rb index c3da73af073e..d0fd8da45415 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_query_create.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_query_create.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Query for matching rule. class SecurityMonitoringRuleQueryCreate + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :agent_rule attr_accessor :aggregation @@ -238,7 +241,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_response.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_response.rb index ef7750be912d..1b380f7263c5 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_response.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Rule. class SecurityMonitoringRuleResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Cases for generating signals. attr_accessor :cases @@ -328,7 +331,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_severity.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_severity.rb index 1e729c7080fb..fb759c4fa487 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_severity.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_severity.rb @@ -36,8 +36,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityMonitoringRuleSeverity.constants.select { |c| SecurityMonitoringRuleSeverity::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityMonitoringRuleSeverity" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb b/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb index 29555dcdf37a..b1a6f64e4abc 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Update an existing rule. class SecurityMonitoringRuleUpdatePayload + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Cases for generating signals. attr_accessor :cases @@ -283,7 +286,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_runtime_agent_rule.rb b/lib/datadog_api_client/v2/models/security_monitoring_runtime_agent_rule.rb index 4ff3629c3073..beebd350702f 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_runtime_agent_rule.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_runtime_agent_rule.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The Agent rule. class SecurityMonitoringRuntimeAgentRule + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The Agent rule ID. Must be unique within the rule. attr_accessor :agent_rule_id @@ -181,7 +184,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_signal.rb b/lib/datadog_api_client/v2/models/security_monitoring_signal.rb index fb21405635a2..8b23b0c809af 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_signal.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_signal.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object description of a security signal. class SecurityMonitoringSignal + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # The unique ID of the security signal. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_signal_attributes.rb b/lib/datadog_api_client/v2/models/security_monitoring_signal_attributes.rb index d82f1c4fccf9..256cfe4c63f4 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_signal_attributes.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_signal_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The object containing all signal attributes and their associated values. class SecurityMonitoringSignalAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A JSON object of attributes in the security signal. attr_accessor :attributes @@ -205,7 +208,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_signal_list_request.rb b/lib/datadog_api_client/v2/models/security_monitoring_signal_list_request.rb index 83a64987142b..ce1d651ae0f3 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_signal_list_request.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_signal_list_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The request for a security signal list. class SecurityMonitoringSignalListRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :filter attr_accessor :page @@ -188,7 +191,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_signal_list_request_filter.rb b/lib/datadog_api_client/v2/models/security_monitoring_signal_list_request_filter.rb index e399a4756488..c0ed1bcba797 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_signal_list_request_filter.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_signal_list_request_filter.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Search filters for listing security signals. class SecurityMonitoringSignalListRequestFilter + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The minimum timestamp for requested security signals. attr_accessor :from @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_signal_list_request_page.rb b/lib/datadog_api_client/v2/models/security_monitoring_signal_list_request_page.rb index 947b5d98df6c..ca4ff46efc46 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_signal_list_request_page.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_signal_list_request_page.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The paging attributes for listing security signals. class SecurityMonitoringSignalListRequestPage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # A list of results using the cursor provided in the previous query. attr_accessor :cursor @@ -198,7 +201,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_signal_type.rb b/lib/datadog_api_client/v2/models/security_monitoring_signal_type.rb index 8c44d7f0c348..52089d2c0a08 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_signal_type.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_signal_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityMonitoringSignalType.constants.select { |c| SecurityMonitoringSignalType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityMonitoringSignalType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response.rb b/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response.rb index 98a2a0bd1eec..be9cdeba6b17 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # The response object with all security signals matching the request and pagination information. class SecurityMonitoringSignalsListResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # An array of security signals matching the request. attr_accessor :data @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response_links.rb b/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response_links.rb index 8811b97fc089..02a0547ad427 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response_links.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response_links.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Links attributes. class SecurityMonitoringSignalsListResponseLinks + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The link for the next set of results. **Note**: The request can also be made using the POST endpoint. attr_accessor :_next @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response_meta.rb b/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response_meta.rb index 074c90f5bc62..e1a8a94b9ec3 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response_meta.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response_meta.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Meta attributes. class SecurityMonitoringSignalsListResponseMeta + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :page # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response_meta_page.rb b/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response_meta_page.rb index 6615b6c93f5e..13da72f7be32 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response_meta_page.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_signals_list_response_meta_page.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Paging attributes. class SecurityMonitoringSignalsListResponseMetaPage + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The cursor used to get the next results, if any. To make the next request, use the same parameters with the addition of the `page[cursor]`. attr_accessor :after @@ -171,7 +174,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_signals_sort.rb b/lib/datadog_api_client/v2/models/security_monitoring_signals_sort.rb index 6d6782b79023..51f229923fad 100644 --- a/lib/datadog_api_client/v2/models/security_monitoring_signals_sort.rb +++ b/lib/datadog_api_client/v2/models/security_monitoring_signals_sort.rb @@ -33,8 +33,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = SecurityMonitoringSignalsSort.constants.select { |c| SecurityMonitoringSignalsSort::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #SecurityMonitoringSignalsSort" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/service_account_create_attributes.rb b/lib/datadog_api_client/v2/models/service_account_create_attributes.rb index 42769a2c3e4a..783edbb8b4dc 100644 --- a/lib/datadog_api_client/v2/models/service_account_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/service_account_create_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of the created user. class ServiceAccountCreateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The email of the user. attr_accessor :email @@ -211,7 +214,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/service_account_create_data.rb b/lib/datadog_api_client/v2/models/service_account_create_data.rb index e1e2898c97ea..957bfb041643 100644 --- a/lib/datadog_api_client/v2/models/service_account_create_data.rb +++ b/lib/datadog_api_client/v2/models/service_account_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object to create a service account User. class ServiceAccountCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :relationships @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/service_account_create_request.rb b/lib/datadog_api_client/v2/models/service_account_create_request.rb index b27391c2bbf4..16b0dc4c200f 100644 --- a/lib/datadog_api_client/v2/models/service_account_create_request.rb +++ b/lib/datadog_api_client/v2/models/service_account_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Create a service account. class ServiceAccountCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user.rb b/lib/datadog_api_client/v2/models/user.rb index df4cfeafc638..ebc853159209 100644 --- a/lib/datadog_api_client/v2/models/user.rb +++ b/lib/datadog_api_client/v2/models/user.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # User object returned by the API. class User + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the user. @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_attributes.rb b/lib/datadog_api_client/v2/models/user_attributes.rb index 44b605d5b064..96bf6e9b66a0 100644 --- a/lib/datadog_api_client/v2/models/user_attributes.rb +++ b/lib/datadog_api_client/v2/models/user_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of user object returned by the API. class UserAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation time of the user. attr_accessor :created_at @@ -271,7 +274,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_create_attributes.rb b/lib/datadog_api_client/v2/models/user_create_attributes.rb index 584f0998aa4e..e99e33e4f0ad 100644 --- a/lib/datadog_api_client/v2/models/user_create_attributes.rb +++ b/lib/datadog_api_client/v2/models/user_create_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of the created user. class UserCreateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # The email of the user. attr_accessor :email @@ -196,7 +199,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_create_data.rb b/lib/datadog_api_client/v2/models/user_create_data.rb index 06a4bd60724b..fd546008f006 100644 --- a/lib/datadog_api_client/v2/models/user_create_data.rb +++ b/lib/datadog_api_client/v2/models/user_create_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object to create a user. class UserCreateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes attr_accessor :relationships @@ -200,7 +203,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_create_request.rb b/lib/datadog_api_client/v2/models/user_create_request.rb index af0962c648a7..5d621334fd59 100644 --- a/lib/datadog_api_client/v2/models/user_create_request.rb +++ b/lib/datadog_api_client/v2/models/user_create_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Create a user. class UserCreateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_invitation_data.rb b/lib/datadog_api_client/v2/models/user_invitation_data.rb index 023f78017ffe..adc928ad7414 100644 --- a/lib/datadog_api_client/v2/models/user_invitation_data.rb +++ b/lib/datadog_api_client/v2/models/user_invitation_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object to create a user invitation. class UserInvitationData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :relationships attr_accessor :type @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_invitation_data_attributes.rb b/lib/datadog_api_client/v2/models/user_invitation_data_attributes.rb index a490779ab385..519e036b8a2f 100644 --- a/lib/datadog_api_client/v2/models/user_invitation_data_attributes.rb +++ b/lib/datadog_api_client/v2/models/user_invitation_data_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of a user invitation. class UserInvitationDataAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Creation time of the user invitation. attr_accessor :created_at @@ -201,7 +204,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_invitation_relationships.rb b/lib/datadog_api_client/v2/models/user_invitation_relationships.rb index eb0bacba8c51..b318c1d2a236 100644 --- a/lib/datadog_api_client/v2/models/user_invitation_relationships.rb +++ b/lib/datadog_api_client/v2/models/user_invitation_relationships.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationships data for user invitation. class UserInvitationRelationships + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :user # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_invitation_response.rb b/lib/datadog_api_client/v2/models/user_invitation_response.rb index 543937115d77..d8375dd1bb4e 100644 --- a/lib/datadog_api_client/v2/models/user_invitation_response.rb +++ b/lib/datadog_api_client/v2/models/user_invitation_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # User invitation as returned by the API. class UserInvitationResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_invitation_response_data.rb b/lib/datadog_api_client/v2/models/user_invitation_response_data.rb index 373fcdf7c1fe..7a85bf7c2df8 100644 --- a/lib/datadog_api_client/v2/models/user_invitation_response_data.rb +++ b/lib/datadog_api_client/v2/models/user_invitation_response_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object of a user invitation returned by the API. class UserInvitationResponseData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the user invitation. @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_invitations_request.rb b/lib/datadog_api_client/v2/models/user_invitations_request.rb index 2a146adaa313..44a1c1d9556c 100644 --- a/lib/datadog_api_client/v2/models/user_invitations_request.rb +++ b/lib/datadog_api_client/v2/models/user_invitations_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object to invite users to join the organization. class UserInvitationsRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + # List of user invitations. attr_accessor :data @@ -178,7 +181,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_invitations_response.rb b/lib/datadog_api_client/v2/models/user_invitations_response.rb index 7bc5dedce194..41c2f0ffaa8b 100644 --- a/lib/datadog_api_client/v2/models/user_invitations_response.rb +++ b/lib/datadog_api_client/v2/models/user_invitations_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # User invitations as returned by the API. class UserInvitationsResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of user invitations. attr_accessor :data @@ -173,7 +176,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_invitations_type.rb b/lib/datadog_api_client/v2/models/user_invitations_type.rb index eb61427275e8..8fd76a9de31a 100644 --- a/lib/datadog_api_client/v2/models/user_invitations_type.rb +++ b/lib/datadog_api_client/v2/models/user_invitations_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = UserInvitationsType.constants.select { |c| UserInvitationsType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #UserInvitationsType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/lib/datadog_api_client/v2/models/user_relationships.rb b/lib/datadog_api_client/v2/models/user_relationships.rb index 48f8bf1f7d45..1fc0f16e7c5e 100644 --- a/lib/datadog_api_client/v2/models/user_relationships.rb +++ b/lib/datadog_api_client/v2/models/user_relationships.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationships of the user object. class UserRelationships + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :roles # Attribute mapping from ruby-style variable name to JSON key. @@ -170,7 +173,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_response.rb b/lib/datadog_api_client/v2/models/user_response.rb index 53b8d4858e6a..e65b95649ed9 100644 --- a/lib/datadog_api_client/v2/models/user_response.rb +++ b/lib/datadog_api_client/v2/models/user_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response containing information about a single user. class UserResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Array of objects related to the user. @@ -182,7 +185,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_response_included_item.rb b/lib/datadog_api_client/v2/models/user_response_included_item.rb index 0c9bcb93f900..3f5c6314238a 100644 --- a/lib/datadog_api_client/v2/models/user_response_included_item.rb +++ b/lib/datadog_api_client/v2/models/user_response_included_item.rb @@ -20,6 +20,8 @@ module DatadogAPIClient::V2 # An object related to a user. module UserResponseIncludedItem class << self + attr_accessor :_unparsed + # List of class defined in oneOf (OpenAPI v3) def openapi_one_of [ @@ -44,12 +46,19 @@ def build(data) begin next if klass == :AnyType # "nullable: true" typed_data = find_and_cast_into_type(klass, data) + next if typed_data._unparsed return typed_data if typed_data rescue # rescue all errors so we keep iterating even if the current item lookup raises end end - openapi_one_of.include?(:AnyType) ? data : nil + if openapi_one_of.include?(:AnyType) + data + else + self._unparsed = true + DatadogAPIClient::V2::UnparsedObject.new(data) + end + end private diff --git a/lib/datadog_api_client/v2/models/user_response_relationships.rb b/lib/datadog_api_client/v2/models/user_response_relationships.rb index f1d22bb45dff..4c383f397218 100644 --- a/lib/datadog_api_client/v2/models/user_response_relationships.rb +++ b/lib/datadog_api_client/v2/models/user_response_relationships.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Relationships of the user object returned by the API. class UserResponseRelationships + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :org attr_accessor :other_orgs @@ -197,7 +200,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_update_attributes.rb b/lib/datadog_api_client/v2/models/user_update_attributes.rb index 52121ebd1fbf..cba67672c84e 100644 --- a/lib/datadog_api_client/v2/models/user_update_attributes.rb +++ b/lib/datadog_api_client/v2/models/user_update_attributes.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Attributes of the edited user. class UserUpdateAttributes + # whether the object has unparsed attributes + attr_accessor :_unparsed + # If the user is enabled or disabled. attr_accessor :disabled @@ -191,7 +194,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_update_data.rb b/lib/datadog_api_client/v2/models/user_update_data.rb index 4363683ba533..e3e0f501744c 100644 --- a/lib/datadog_api_client/v2/models/user_update_data.rb +++ b/lib/datadog_api_client/v2/models/user_update_data.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Object to update a user. class UserUpdateData + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :attributes # ID of the user. @@ -206,7 +209,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/user_update_request.rb b/lib/datadog_api_client/v2/models/user_update_request.rb index 2a629c1d49c9..32365ac843c7 100644 --- a/lib/datadog_api_client/v2/models/user_update_request.rb +++ b/lib/datadog_api_client/v2/models/user_update_request.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Update a user. class UserUpdateRequest + # whether the object has unparsed attributes + attr_accessor :_unparsed + attr_accessor :data # Attribute mapping from ruby-style variable name to JSON key. @@ -175,7 +178,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/users_response.rb b/lib/datadog_api_client/v2/models/users_response.rb index 45b3fba665c9..98a19cf91ccf 100644 --- a/lib/datadog_api_client/v2/models/users_response.rb +++ b/lib/datadog_api_client/v2/models/users_response.rb @@ -19,6 +19,9 @@ module DatadogAPIClient::V2 # Response containing information about multiple users. class UsersResponse + # whether the object has unparsed attributes + attr_accessor :_unparsed + # Array of returned users. attr_accessor :data @@ -194,7 +197,11 @@ def _deserialize(type, value) else # model # models (e.g. Pet) or oneOf klass = DatadogAPIClient::V2.const_get(type) - klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + if res.instance_of? DatadogAPIClient::V2::UnparsedObject + self._unparsed = true + end + res end end diff --git a/lib/datadog_api_client/v2/models/users_type.rb b/lib/datadog_api_client/v2/models/users_type.rb index 352e11dfc162..fdbe5ac2a8db 100644 --- a/lib/datadog_api_client/v2/models/users_type.rb +++ b/lib/datadog_api_client/v2/models/users_type.rb @@ -32,8 +32,7 @@ def self.build_from_hash(value) # @return [String] The enum value def build_from_hash(value) constantValues = UsersType.constants.select { |c| UsersType::const_get(c) == value } - raise "Invalid ENUM value #{value} for class #UsersType" if constantValues.empty? - value + constantValues.empty? ? DatadogAPIClient::V2::UnparsedObject.new(value) : value end end end diff --git a/spec/fixtures/logs_archive_unknown_nested_oneof.json b/spec/fixtures/logs_archive_unknown_nested_oneof.json new file mode 100644 index 000000000000..d00ede27a65b --- /dev/null +++ b/spec/fixtures/logs_archive_unknown_nested_oneof.json @@ -0,0 +1,23 @@ +{ + "data": { + "type": "archives", + "id": "n_XDSxVpScepiBnyhysj_A", + "attributes": { + "name": "my first azure archive", + "query": "service:toto", + "state": "UNKNOWN", + "destination": { + "container": "my-container", + "storage_account": "storageaccount", + "path": "/path/blou", + "type": "A non existent destination", + "integration": { + "tenant_id": "tf-TestAccDatadogLogsArchiveAzure_basic-local-1624981538", + "client_id": "testc7f6-1234-5678-9101-3fcbf464test" + } + }, + "rehydration_tags": [], + "include_tags": false + } + } +} \ No newline at end of file diff --git a/spec/fixtures/synthetics_unknown_nested_enum.json b/spec/fixtures/synthetics_unknown_nested_enum.json new file mode 100644 index 000000000000..1a9c48b48f28 --- /dev/null +++ b/spec/fixtures/synthetics_unknown_nested_enum.json @@ -0,0 +1,34 @@ +{ + "status": "live", + "public_id": "g6d-gcm-pdq", + "tags": [], + "locations": [ + "aws:eu-central-1", + "aws:ap-northeast-1" + ], + "message": "", + "name": "Check on www.10.0.0.1.xip.io", + "monitor_id": 7464050, + "type": "api", + "created_at": "2018-12-07T17:30:49.785089+00:00", + "modified_at": "2019-09-04T17:01:09.921070+00:00", + "subtype": "http", + "key_what": "test", + "config": { + "request": { + "url": "https://www.10.0.0.1.xip.io", + "method": "A non existent method", + "timeout": 30 + }, + "assertions": [ + { + "operator": "is", + "type": "statusCode", + "target": 200 + } + ] + }, + "options": { + "tick_every": 60 + } +} \ No newline at end of file diff --git a/spec/fixtures/synthetics_unknown_nested_enum_in_list.json b/spec/fixtures/synthetics_unknown_nested_enum_in_list.json new file mode 100644 index 000000000000..c416029421bb --- /dev/null +++ b/spec/fixtures/synthetics_unknown_nested_enum_in_list.json @@ -0,0 +1,59 @@ +{ + "status": "live", + "public_id": "2fx-64b-fb8", + "tags": [ + "mini-website", + "team:synthetics", + "firefox", + "synthetics-ci-browser", + "edge", + "chrome" + ], + "locations": [ + "aws:ap-northeast-1", + "aws:eu-north-1", + "aws:eu-west-3", + "aws:eu-central-1" + ], + "message": "This mini-website check failed, please investigate why. @slack-synthetics-ops-worker", + "name": "Mini Website - Click Trap", + "monitor_id": 7647262, + "type": "browser", + "created_at": "2018-12-20T13:19:23.734004+00:00", + "modified_at": "2021-06-30T15:46:49.387631+00:00", + "config": { + "variables": [], + "setCookie": "", + "request": { + "url": "http://34.95.79.70/click-trap", + "headers": {}, + "method": "GET" + }, + "assertions": [], + "configVariables": [] + }, + "options": { + "ci": { + "executionRule": "blocking" + }, + "retry": { + "count": 1, + "interval": 1000 + }, + "min_location_failed": 1, + "min_failure_duration": 0, + "noScreenshot": false, + "tick_every": 300, + "forwardProxy": false, + "disableCors": false, + "device_ids": [ + "chrome.laptop_large", + "firefox.laptop_large", + "A non existent device ID" + ], + "monitor_options": { + "renotify_interval": 360 + }, + "ignoreServerCertificateError": true + } +} \ No newline at end of file diff --git a/spec/fixtures/synthetics_unknown_nested_oneof_in_list.json b/spec/fixtures/synthetics_unknown_nested_oneof_in_list.json new file mode 100644 index 000000000000..c8cf515c368b --- /dev/null +++ b/spec/fixtures/synthetics_unknown_nested_oneof_in_list.json @@ -0,0 +1,61 @@ +{ + "status": "paused", + "public_id": "jv7-wfd-kvt", + "tags": [], + "locations": [ + "pl:pl-kevin-y-6382df0d72d4588e1817f090b131541f" + ], + "message": "", + "name": "Test on www.example.com", + "monitor_id": 28558768, + "type": "api", + "created_at": "2021-01-12T10:11:40.802074+00:00", + "modified_at": "2021-01-22T16:42:10.520384+00:00", + "subtype": "http", + "config": { + "request": { + "url": "https://www.example.com", + "method": "GET", + "timeout": 30 + }, + "assertions": [ + { + "operator": "lessThan", + "type": "responseTime", + "target": 1000 + }, + { + "operator": "is", + "type": "statusCode", + "target": 200 + }, + { + "operator": "A non existent operator", + "type": "body", + "target": { + "xPath": "//html/head/title", + "operator": "contains", + "targetValue": "Example" + } + } + ], + "configVariables": [] + }, + "options": { + "monitor_options": { + "notify_audit": false, + "locked": false, + "include_tags": true, + "new_host_delay": 300, + "notify_no_data": false, + "renotify_interval": 0 + }, + "retry": { + "count": 0, + "interval": 300 + }, + "min_location_failed": 1, + "min_failure_duration": 0, + "tick_every": 60 + } +} \ No newline at end of file diff --git a/spec/fixtures/synthetics_unknown_top_level_enum.json b/spec/fixtures/synthetics_unknown_top_level_enum.json new file mode 100644 index 000000000000..0fa14e7cc12b --- /dev/null +++ b/spec/fixtures/synthetics_unknown_top_level_enum.json @@ -0,0 +1,33 @@ +{ + "status": "live", + "public_id": "g6d-gcm-pdq", + "tags": [], + "locations": [ + "aws:eu-central-1", + "aws:ap-northeast-1" + ], + "message": "", + "name": "Check on www.10.0.0.1.xip.io", + "monitor_id": 7464050, + "type": "A non existent test type", + "created_at": "2018-12-07T17:30:49.785089+00:00", + "modified_at": "2019-09-04T17:01:09.921070+00:00", + "subtype": "http", + "config": { + "request": { + "url": "https://www.10.0.0.1.xip.io", + "method": "GET", + "timeout": 30 + }, + "assertions": [ + { + "operator": "is", + "type": "statusCode", + "target": 200 + } + ] + }, + "options": { + "tick_every": 60 + } +} \ No newline at end of file diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index defc9711071f..f8d71a615e09 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -93,23 +93,25 @@ def load_fixture(fixture) end config.before(:example) do |example| - now = Time.now - name = example.metadata[:full_description].gsub(/[^A-Za-z0-9]+/, '-')[0..100] - @unique ||= "ruby-#{name}-#{now.to_i}" - m = example.metadata[:file_path].match /spec\/v(?\d+)\/.*/ - @api_version = m[:version] - api = Object.const_get("DatadogAPIClient::V#{@api_version}") - @configuration = api::Configuration.new - @configuration.api_key = ENV["DD_TEST_CLIENT_API_KEY"] - @configuration.application_key = ENV["DD_TEST_CLIENT_APP_KEY"] - @configuration.debugging = (!ENV["DEBUG"].nil? and ENV["DEBUG"] != "false") - @configuration.configure do |c| - if ENV.key? 'DD_TEST_SITE' then - c.server_index = 2 - c.server_variables[:site] = ENV['DD_TEST_SITE'] + unless example.metadata[:skip_before] + now = Time.now + name = example.metadata[:full_description].gsub(/[^A-Za-z0-9]+/, '-')[0..100] + @unique ||= "ruby-#{name}-#{now.to_i}" + m = example.metadata[:file_path].match /spec\/v(?\d+)\/.*/ + @api_version = m[:version] + api = Object.const_get("DatadogAPIClient::V#{@api_version}") + @configuration = api::Configuration.new + @configuration.api_key = ENV["DD_TEST_CLIENT_API_KEY"] + @configuration.application_key = ENV["DD_TEST_CLIENT_APP_KEY"] + @configuration.debugging = (!ENV["DEBUG"].nil? and ENV["DEBUG"] != "false") + @configuration.configure do |c| + if ENV.key? 'DD_TEST_SITE' then + c.server_index = 2 + c.server_variables[:site] = ENV['DD_TEST_SITE'] + end end + @api_client = api::APIClient.new @configuration end - @api_client = api::APIClient.new @configuration end config.example_status_persistence_file_path = 'failed.txt' diff --git a/spec/v1/deserialization_spec.rb b/spec/v1/deserialization_spec.rb new file mode 100644 index 000000000000..518c19b1e8be --- /dev/null +++ b/spec/v1/deserialization_spec.rb @@ -0,0 +1,99 @@ +=begin +#Datadog API V1 Collection + +#Collection of all Datadog Public endpoints. + +The version of the OpenAPI document: 1.0 +Contact: support@datadoghq.com +Generated by: https://openapi-generator.tech + + Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + This product includes software developed at Datadog (https://www.datadoghq.com/). + Copyright 2020-Present Datadog, Inc. + +=end + +require 'json' + +describe 'Deserialization', skip_before: true do + describe 'synthetics_test deserialization test' do + before do + # run before each test + @api_instance = DatadogAPIClient::V1::SyntheticsAPI.new + @base_path = @api_instance.api_client.build_request_url('') + end + + it 'should deserialize unknown nested oneOf in list' do + fixture = File.read('spec/fixtures/synthetics_unknown_nested_oneof_in_list.json') + stub_request(:get, "#{@base_path}api/v1/synthetics/tests/api/public_id") + .to_return(:body => fixture, :headers => [{"Content-Type": "application/json"}], :status => 299) + + data = @api_instance.get_api_test("public_id") + + expect(data).to be_a DatadogAPIClient::V1::SyntheticsAPITest + expect(data.config.assertions.length).to be 3 + expect(data.config._unparsed).to be true + expect(data.config.assertions[2].data[:operator]).to eq "A non existent operator" + end + + it 'should deserialize unknown nested enum in list' do + fixture = File.read('spec/fixtures/synthetics_unknown_nested_enum_in_list.json') + stub_request(:get, "#{@base_path}api/v1/synthetics/tests/api/public_id") + .to_return(:body => fixture, :headers => [{"Content-Type": "application/json"}], :status => 299) + + data = @api_instance.get_api_test("public_id") + + expect(data).to be_a DatadogAPIClient::V1::SyntheticsAPITest + expect(data.options.device_ids.length).to be 3 + expect(data.options._unparsed).to be true + expect(data.options.device_ids[2].to_hash).to eq DatadogAPIClient::V1::SyntheticsDeviceID.build_from_hash("A non existent device ID").to_hash + end + + it 'should deserialize unknown top level enum' do + fixture = File.read('spec/fixtures/synthetics_unknown_top_level_enum.json') + stub_request(:get, "#{@base_path}api/v1/synthetics/tests/api/public_id") + .to_return(:body => fixture, :headers => [{"Content-Type": "application/json"}], :status => 299) + + data = @api_instance.get_api_test("public_id") + + expect(data).to be_a DatadogAPIClient::V1::SyntheticsAPITest + expect(data.type.to_hash).to eq "A non existent test type" + expect(data.name).to eq "Check on www.10.0.0.1.xip.io" + end + + it 'should deserialize unknown nested enum' do + fixture = File.read('spec/fixtures/synthetics_unknown_nested_enum.json') + stub_request(:get, "#{@base_path}api/v1/synthetics/tests/api/public_id") + .to_return(:body => fixture, :headers => [{"Content-Type": "application/json"}], :status => 299) + + data = @api_instance.get_api_test("public_id") + + expect(data).to be_a DatadogAPIClient::V1::SyntheticsAPITest + expect(data.config.request).to be_a DatadogAPIClient::V1::SyntheticsTestRequest + expect(data.config.request._unparsed).to be true + expect(data.config.request.timeout).to eq 30 + expect(data.config.request.method.to_hash).to eq "A non existent method" + end + end + + describe 'logs_archive deserialization test' do + before do + # run before each test + @api_instance = DatadogAPIClient::V2::LogsArchivesAPI.new + @base_path = @api_instance.api_client.build_request_url('') + @body = DatadogAPIClient::V2::LogsArchiveCreateRequest.new + end + + it 'should deserialize unknown nested OneOf' do + fixture = File.read('spec/fixtures/logs_archive_unknown_nested_oneof.json') + stub_request(:post, "#{@base_path}api/v2/logs/config/archives") + .to_return(:body => fixture, :headers => [{"Content-Type": "application/json"}], :status => 299) + + data = @api_instance.create_logs_archive(@body) + + expect(data).to be_a DatadogAPIClient::V2::LogsArchive + expect(data.data.attributes._unparsed).to be true + expect(data.data.attributes.destination.data[:type]).to eq "A non existent destination" + end + end +end \ No newline at end of file