getSchemas() {
+ return AnthropicAPIKeyApiToken.schemas;
+ }
+
+ /**
+ * Set the instance that matches the oneOf child schema, check the instance parameter is valid
+ * against the oneOf child schemas: String, ActionConnectionAWSSecretsManagerReference
+ *
+ * It could be an instance of the 'oneOf' schemas. The oneOf child schemas may themselves be a
+ * composed schema (allOf, anyOf, oneOf).
+ */
+ @Override
+ public void setActualInstance(Object instance) {
+ if (JSON.isInstanceOf(String.class, instance, new HashSet>())) {
+ super.setActualInstance(instance);
+ return;
+ }
+ if (JSON.isInstanceOf(
+ ActionConnectionAWSSecretsManagerReference.class, instance, new HashSet>())) {
+ super.setActualInstance(instance);
+ return;
+ }
+
+ if (JSON.isInstanceOf(UnparsedObject.class, instance, new HashSet>())) {
+ super.setActualInstance(instance);
+ return;
+ }
+ throw new RuntimeException(
+ "Invalid instance type. Must be String, ActionConnectionAWSSecretsManagerReference");
+ }
+
+ /**
+ * Get the actual instance, which can be the following: String,
+ * ActionConnectionAWSSecretsManagerReference
+ *
+ * @return The actual instance (String, ActionConnectionAWSSecretsManagerReference)
+ */
+ @Override
+ public Object getActualInstance() {
+ return super.getActualInstance();
+ }
+
+ /**
+ * Get the actual instance of `String`. If the actual instance is not `String`, the
+ * ClassCastException will be thrown.
+ *
+ * @return The actual instance of `String`
+ * @throws ClassCastException if the instance is not `String`
+ */
+ public String getString() throws ClassCastException {
+ return (String) super.getActualInstance();
+ }
+
+ /**
+ * Get the actual instance of `ActionConnectionAWSSecretsManagerReference`. If the actual instance
+ * is not `ActionConnectionAWSSecretsManagerReference`, the ClassCastException will be thrown.
+ *
+ * @return The actual instance of `ActionConnectionAWSSecretsManagerReference`
+ * @throws ClassCastException if the instance is not `ActionConnectionAWSSecretsManagerReference`
+ */
+ public ActionConnectionAWSSecretsManagerReference getActionConnectionAWSSecretsManagerReference()
+ throws ClassCastException {
+ return (ActionConnectionAWSSecretsManagerReference) super.getActualInstance();
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/AnthropicAPIKeyUpdate.java b/src/main/java/com/datadog/api/client/v2/model/AnthropicAPIKeyUpdate.java
index 5979c73c6b1..41f0aff0e77 100644
--- a/src/main/java/com/datadog/api/client/v2/model/AnthropicAPIKeyUpdate.java
+++ b/src/main/java/com/datadog/api/client/v2/model/AnthropicAPIKeyUpdate.java
@@ -27,7 +27,7 @@
public class AnthropicAPIKeyUpdate {
@JsonIgnore public boolean unparsed = false;
public static final String JSON_PROPERTY_API_TOKEN = "api_token";
- private String apiToken;
+ private AnthropicAPIKeyUpdateApiToken apiToken;
public static final String JSON_PROPERTY_TYPE = "type";
private AnthropicAPIKeyType type;
@@ -41,8 +41,9 @@ public AnthropicAPIKeyUpdate(
this.unparsed |= !type.isValid();
}
- public AnthropicAPIKeyUpdate apiToken(String apiToken) {
+ public AnthropicAPIKeyUpdate apiToken(AnthropicAPIKeyUpdateApiToken apiToken) {
this.apiToken = apiToken;
+ this.unparsed |= apiToken.unparsed;
return this;
}
@@ -54,12 +55,15 @@ public AnthropicAPIKeyUpdate apiToken(String apiToken) {
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_API_TOKEN)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public String getApiToken() {
+ public AnthropicAPIKeyUpdateApiToken getApiToken() {
return apiToken;
}
- public void setApiToken(String apiToken) {
+ public void setApiToken(AnthropicAPIKeyUpdateApiToken apiToken) {
this.apiToken = apiToken;
+ if (apiToken != null) {
+ this.unparsed |= apiToken.unparsed;
+ }
}
public AnthropicAPIKeyUpdate type(AnthropicAPIKeyType type) {
diff --git a/src/main/java/com/datadog/api/client/v2/model/AnthropicAPIKeyUpdateApiToken.java b/src/main/java/com/datadog/api/client/v2/model/AnthropicAPIKeyUpdateApiToken.java
new file mode 100644
index 00000000000..fffa825de49
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/AnthropicAPIKeyUpdateApiToken.java
@@ -0,0 +1,291 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.datadog.api.client.AbstractOpenApiSchema;
+import com.datadog.api.client.JSON;
+import com.datadog.api.client.UnparsedObject;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.core.JsonGenerator;
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.core.JsonToken;
+import com.fasterxml.jackson.core.type.TypeReference;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.JsonMappingException;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.MapperFeature;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.SerializerProvider;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
+import com.fasterxml.jackson.databind.ser.std.StdSerializer;
+import jakarta.ws.rs.core.GenericType;
+import java.io.IOException;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+@JsonDeserialize(
+ using = AnthropicAPIKeyUpdateApiToken.AnthropicAPIKeyUpdateApiTokenDeserializer.class)
+@JsonSerialize(using = AnthropicAPIKeyUpdateApiToken.AnthropicAPIKeyUpdateApiTokenSerializer.class)
+public class AnthropicAPIKeyUpdateApiToken extends AbstractOpenApiSchema {
+ private static final Logger log = Logger.getLogger(AnthropicAPIKeyUpdateApiToken.class.getName());
+
+ @JsonIgnore public boolean unparsed = false;
+
+ public static class AnthropicAPIKeyUpdateApiTokenSerializer
+ extends StdSerializer {
+ public AnthropicAPIKeyUpdateApiTokenSerializer(Class t) {
+ super(t);
+ }
+
+ public AnthropicAPIKeyUpdateApiTokenSerializer() {
+ this(null);
+ }
+
+ @Override
+ public void serialize(
+ AnthropicAPIKeyUpdateApiToken value, JsonGenerator jgen, SerializerProvider provider)
+ throws IOException, JsonProcessingException {
+ jgen.writeObject(value.getActualInstance());
+ }
+ }
+
+ public static class AnthropicAPIKeyUpdateApiTokenDeserializer
+ extends StdDeserializer {
+ public AnthropicAPIKeyUpdateApiTokenDeserializer() {
+ this(AnthropicAPIKeyUpdateApiToken.class);
+ }
+
+ public AnthropicAPIKeyUpdateApiTokenDeserializer(Class> vc) {
+ super(vc);
+ }
+
+ @Override
+ public AnthropicAPIKeyUpdateApiToken deserialize(JsonParser jp, DeserializationContext ctxt)
+ throws IOException, JsonProcessingException {
+ JsonNode tree = jp.readValueAsTree();
+ Object deserialized = null;
+ Object tmp = null;
+ boolean typeCoercion = ctxt.isEnabled(MapperFeature.ALLOW_COERCION_OF_SCALARS);
+ int match = 0;
+ JsonToken token = tree.traverse(jp.getCodec()).nextToken();
+ // deserialize String
+ try {
+ boolean attemptParsing = true;
+ // ensure that we respect type coercion as set on the client ObjectMapper
+ if (String.class.equals(Integer.class)
+ || String.class.equals(Long.class)
+ || String.class.equals(Float.class)
+ || String.class.equals(Double.class)
+ || String.class.equals(Boolean.class)
+ || String.class.equals(String.class)) {
+ attemptParsing = typeCoercion;
+ if (!attemptParsing) {
+ attemptParsing |=
+ ((String.class.equals(Integer.class) || String.class.equals(Long.class))
+ && token == JsonToken.VALUE_NUMBER_INT);
+ attemptParsing |=
+ ((String.class.equals(Float.class) || String.class.equals(Double.class))
+ && (token == JsonToken.VALUE_NUMBER_FLOAT
+ || token == JsonToken.VALUE_NUMBER_INT));
+ attemptParsing |=
+ (String.class.equals(Boolean.class)
+ && (token == JsonToken.VALUE_FALSE || token == JsonToken.VALUE_TRUE));
+ attemptParsing |=
+ (String.class.equals(String.class) && token == JsonToken.VALUE_STRING);
+ }
+ }
+ if (attemptParsing) {
+ tmp = tree.traverse(jp.getCodec()).readValueAs(String.class);
+ // TODO: there is no validation against JSON schema constraints
+ // (min, max, enum, pattern...), this does not perform a strict JSON
+ // validation, which means the 'match' count may be higher than it should be.
+ deserialized = tmp;
+ match++;
+
+ log.log(Level.FINER, "Input data matches schema 'String'");
+ }
+ } catch (Exception e) {
+ // deserialization failed, continue
+ log.log(Level.FINER, "Input data does not match schema 'String'", e);
+ }
+
+ // deserialize ActionConnectionAWSSecretsManagerReference
+ try {
+ boolean attemptParsing = true;
+ // ensure that we respect type coercion as set on the client ObjectMapper
+ if (ActionConnectionAWSSecretsManagerReference.class.equals(Integer.class)
+ || ActionConnectionAWSSecretsManagerReference.class.equals(Long.class)
+ || ActionConnectionAWSSecretsManagerReference.class.equals(Float.class)
+ || ActionConnectionAWSSecretsManagerReference.class.equals(Double.class)
+ || ActionConnectionAWSSecretsManagerReference.class.equals(Boolean.class)
+ || ActionConnectionAWSSecretsManagerReference.class.equals(String.class)) {
+ attemptParsing = typeCoercion;
+ if (!attemptParsing) {
+ attemptParsing |=
+ ((ActionConnectionAWSSecretsManagerReference.class.equals(Integer.class)
+ || ActionConnectionAWSSecretsManagerReference.class.equals(Long.class))
+ && token == JsonToken.VALUE_NUMBER_INT);
+ attemptParsing |=
+ ((ActionConnectionAWSSecretsManagerReference.class.equals(Float.class)
+ || ActionConnectionAWSSecretsManagerReference.class.equals(Double.class))
+ && (token == JsonToken.VALUE_NUMBER_FLOAT
+ || token == JsonToken.VALUE_NUMBER_INT));
+ attemptParsing |=
+ (ActionConnectionAWSSecretsManagerReference.class.equals(Boolean.class)
+ && (token == JsonToken.VALUE_FALSE || token == JsonToken.VALUE_TRUE));
+ attemptParsing |=
+ (ActionConnectionAWSSecretsManagerReference.class.equals(String.class)
+ && token == JsonToken.VALUE_STRING);
+ }
+ }
+ if (attemptParsing) {
+ tmp =
+ tree.traverse(jp.getCodec())
+ .readValueAs(ActionConnectionAWSSecretsManagerReference.class);
+ // TODO: there is no validation against JSON schema constraints
+ // (min, max, enum, pattern...), this does not perform a strict JSON
+ // validation, which means the 'match' count may be higher than it should be.
+ if (!((ActionConnectionAWSSecretsManagerReference) tmp).unparsed) {
+ deserialized = tmp;
+ match++;
+ }
+ log.log(
+ Level.FINER,
+ "Input data matches schema 'ActionConnectionAWSSecretsManagerReference'");
+ }
+ } catch (Exception e) {
+ // deserialization failed, continue
+ log.log(
+ Level.FINER,
+ "Input data does not match schema 'ActionConnectionAWSSecretsManagerReference'",
+ e);
+ }
+
+ AnthropicAPIKeyUpdateApiToken ret = new AnthropicAPIKeyUpdateApiToken();
+ if (match == 1) {
+ ret.setActualInstance(deserialized);
+ } else {
+ Map res =
+ new ObjectMapper()
+ .readValue(
+ tree.traverse(jp.getCodec()).readValueAsTree().toString(),
+ new TypeReference