* | :heavy_minus_sign: | The URL that is associated with the trigger event. This is the endpoint that must be called using the specified HTTP method to start the workflow. | https://example.com/resource/123 |
\ No newline at end of file
diff --git a/gradle.properties b/gradle.properties
index 0a36ed9..670e0d5 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,4 +1,4 @@
groupId=com.docusign
artifactId=iam-sdk
-version=1.0.0-beta.9
+version=1.0.0-beta.10
org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g
diff --git a/src/main/java/com/docusign/iam/sdk/SDKConfiguration.java b/src/main/java/com/docusign/iam/sdk/SDKConfiguration.java
index ccd49c2..6390fb4 100644
--- a/src/main/java/com/docusign/iam/sdk/SDKConfiguration.java
+++ b/src/main/java/com/docusign/iam/sdk/SDKConfiguration.java
@@ -16,8 +16,8 @@ public class SDKConfiguration {
private static final String LANGUAGE = "java";
public static final String OPENAPI_DOC_VERSION = "v1";
- public static final String SDK_VERSION = "1.0.0-beta.9";
- public static final String GEN_VERSION = "2.882.0";
+ public static final String SDK_VERSION = "1.0.0-beta.10";
+ public static final String GEN_VERSION = "2.893.0";
private static final String BASE_PACKAGE = "com.docusign.iam.sdk";
public static final String USER_AGENT =
String.format("speakeasy-sdk/%s %s %s %s %s",
diff --git a/src/main/java/com/docusign/iam/sdk/models/components/Affordance.java b/src/main/java/com/docusign/iam/sdk/models/components/Affordance.java
new file mode 100644
index 0000000..2ebc634
--- /dev/null
+++ b/src/main/java/com/docusign/iam/sdk/models/components/Affordance.java
@@ -0,0 +1,726 @@
+/*
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+ */
+package com.docusign.iam.sdk.models.components;
+
+import com.docusign.iam.sdk.utils.LazySingletonValue;
+import com.docusign.iam.sdk.utils.Utils;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude.Include;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.core.type.TypeReference;
+import java.lang.Boolean;
+import java.lang.Integer;
+import java.lang.Long;
+import java.lang.Object;
+import java.lang.Override;
+import java.lang.String;
+import java.lang.SuppressWarnings;
+import java.util.Map;
+import java.util.Optional;
+import org.openapitools.jackson.nullable.JsonNullable;
+
+/**
+ * Affordance
+ *
+ * Affordances (aka 'actions') describe the available operations on a resource, including CRUD and
+ * RPC-like operations. It details the
+ * expected input payload, http method, query parameters, and the resulting output.
+ *
+ *
Affordances enable clients to dynamically adapt to the API's current state and available actions.
+ * Instead of
+ * hardcoding all possible endpoints and their associated logic, a client can inspect the affordances
+ * within a
+ * resource's representation to discover what actions are possible and how to perform them.
+ */
+public class Affordance {
+
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("href")
+ private JsonNullable href;
+
+ /**
+ * The http method to use when invoking this affordance
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("method")
+ private Optional extends AffordanceMethod> method;
+
+ /**
+ * Indicates if an action must be performed on a resource. This may include a manadatory step as part
+ * of a business process, especially
+ * when failing to execute a subsequent action will leave the resource in a bad or incomplete state.
+ * # note: would it be necessary for manadatory/required actionsto be performed prior to an optional
+ * action
+ * # note: mandatory actions which have previously been executed on a resource should not be be
+ * returned in the server response
+ * # execept in cases where the resource is in a state that permits this action to be performed again.
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("required")
+ private Optional required;
+
+ /**
+ * Provides a stable and consistent order to a collection of resources. Useful when multiple processes
+ * are working in parallel to iterate over
+ * a collection of resources with a mandatory/required action.
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("sequence")
+ private Optional sequence;
+
+ /**
+ * Placeholder
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("description")
+ private Optional description;
+
+ /**
+ * A natural language dictionary of JSON template variables used in invoke an action
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("template_variables")
+ private Optional extends Map> templateVariables;
+
+ /**
+ * Additional HTTP request headers needed in the request to invoke an action.
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("headers")
+ private Optional extends Map> headers;
+
+ /**
+ * Limits and restrictions on
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("constraints")
+ private Optional extends Object> constraints;
+
+ /**
+ * Success status codes (2xx range) indicating the request was received,
+ * understood, and accepted.
+ * Common codes:
+ * - 200: OK - Standard successful response
+ * - 201: Created - Resource successfully created
+ * - 202: Accepted - Request accepted for processing
+ * - 204: No Content - Successful with no response body
+ * - 206: Partial Content - Partial resource returned
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("success_status_code")
+ private Optional successStatusCode;
+
+ @JsonCreator
+ public Affordance(
+ @JsonProperty("href") JsonNullable href,
+ @JsonProperty("method") Optional extends AffordanceMethod> method,
+ @JsonProperty("required") Optional required,
+ @JsonProperty("sequence") Optional sequence,
+ @JsonProperty("description") Optional description,
+ @JsonProperty("template_variables") Optional extends Map> templateVariables,
+ @JsonProperty("headers") Optional extends Map> headers,
+ @JsonProperty("constraints") Optional extends Object> constraints,
+ @JsonProperty("success_status_code") Optional successStatusCode) {
+ Utils.checkNotNull(href, "href");
+ Utils.checkNotNull(method, "method");
+ Utils.checkNotNull(required, "required");
+ Utils.checkNotNull(sequence, "sequence");
+ Utils.checkNotNull(description, "description");
+ Utils.checkNotNull(templateVariables, "templateVariables");
+ Utils.checkNotNull(headers, "headers");
+ Utils.checkNotNull(constraints, "constraints");
+ Utils.checkNotNull(successStatusCode, "successStatusCode");
+ this.href = href;
+ this.method = method;
+ this.required = required;
+ this.sequence = sequence;
+ this.description = description;
+ this.templateVariables = templateVariables;
+ this.headers = headers;
+ this.constraints = constraints;
+ this.successStatusCode = successStatusCode;
+ }
+
+ public Affordance() {
+ this(JsonNullable.undefined(), Optional.empty(), Optional.empty(),
+ Optional.empty(), Optional.empty(), Optional.empty(),
+ Optional.empty(), Optional.empty(), Optional.empty());
+ }
+
+ @JsonIgnore
+ public JsonNullable href() {
+ return href;
+ }
+
+ /**
+ * The http method to use when invoking this affordance
+ */
+ @SuppressWarnings("unchecked")
+ @JsonIgnore
+ public Optional method() {
+ return (Optional) method;
+ }
+
+ /**
+ * Indicates if an action must be performed on a resource. This may include a manadatory step as part
+ * of a business process, especially
+ * when failing to execute a subsequent action will leave the resource in a bad or incomplete state.
+ * # note: would it be necessary for manadatory/required actionsto be performed prior to an optional
+ * action
+ * # note: mandatory actions which have previously been executed on a resource should not be be
+ * returned in the server response
+ * # execept in cases where the resource is in a state that permits this action to be performed again.
+ */
+ @JsonIgnore
+ public Optional required() {
+ return required;
+ }
+
+ /**
+ * Provides a stable and consistent order to a collection of resources. Useful when multiple processes
+ * are working in parallel to iterate over
+ * a collection of resources with a mandatory/required action.
+ */
+ @JsonIgnore
+ public Optional sequence() {
+ return sequence;
+ }
+
+ /**
+ * Placeholder
+ */
+ @JsonIgnore
+ public Optional description() {
+ return description;
+ }
+
+ /**
+ * A natural language dictionary of JSON template variables used in invoke an action
+ */
+ @SuppressWarnings("unchecked")
+ @JsonIgnore
+ public Optional> templateVariables() {
+ return (Optional>) templateVariables;
+ }
+
+ /**
+ * Additional HTTP request headers needed in the request to invoke an action.
+ */
+ @SuppressWarnings("unchecked")
+ @JsonIgnore
+ public Optional> headers() {
+ return (Optional>) headers;
+ }
+
+ /**
+ * Limits and restrictions on
+ */
+ @SuppressWarnings("unchecked")
+ @JsonIgnore
+ public Optional constraints() {
+ return (Optional) constraints;
+ }
+
+ /**
+ * Success status codes (2xx range) indicating the request was received,
+ * understood, and accepted.
+ * Common codes:
+ * - 200: OK - Standard successful response
+ * - 201: Created - Resource successfully created
+ * - 202: Accepted - Request accepted for processing
+ * - 204: No Content - Successful with no response body
+ * - 206: Partial Content - Partial resource returned
+ */
+ @JsonIgnore
+ public Optional successStatusCode() {
+ return successStatusCode;
+ }
+
+ public static Builder builder() {
+ return new Builder();
+ }
+
+
+ public Affordance withHref(String href) {
+ Utils.checkNotNull(href, "href");
+ this.href = JsonNullable.of(href);
+ return this;
+ }
+
+ public Affordance withHref(JsonNullable href) {
+ Utils.checkNotNull(href, "href");
+ this.href = href;
+ return this;
+ }
+
+ /**
+ * The http method to use when invoking this affordance
+ */
+ public Affordance withMethod(AffordanceMethod method) {
+ Utils.checkNotNull(method, "method");
+ this.method = Optional.ofNullable(method);
+ return this;
+ }
+
+
+ /**
+ * The http method to use when invoking this affordance
+ */
+ public Affordance withMethod(Optional extends AffordanceMethod> method) {
+ Utils.checkNotNull(method, "method");
+ this.method = method;
+ return this;
+ }
+
+ /**
+ * Indicates if an action must be performed on a resource. This may include a manadatory step as part
+ * of a business process, especially
+ * when failing to execute a subsequent action will leave the resource in a bad or incomplete state.
+ * # note: would it be necessary for manadatory/required actionsto be performed prior to an optional
+ * action
+ * # note: mandatory actions which have previously been executed on a resource should not be be
+ * returned in the server response
+ * # execept in cases where the resource is in a state that permits this action to be performed again.
+ */
+ public Affordance withRequired(boolean required) {
+ Utils.checkNotNull(required, "required");
+ this.required = Optional.ofNullable(required);
+ return this;
+ }
+
+
+ /**
+ * Indicates if an action must be performed on a resource. This may include a manadatory step as part
+ * of a business process, especially
+ * when failing to execute a subsequent action will leave the resource in a bad or incomplete state.
+ * # note: would it be necessary for manadatory/required actionsto be performed prior to an optional
+ * action
+ * # note: mandatory actions which have previously been executed on a resource should not be be
+ * returned in the server response
+ * # execept in cases where the resource is in a state that permits this action to be performed again.
+ */
+ public Affordance withRequired(Optional required) {
+ Utils.checkNotNull(required, "required");
+ this.required = required;
+ return this;
+ }
+
+ /**
+ * Provides a stable and consistent order to a collection of resources. Useful when multiple processes
+ * are working in parallel to iterate over
+ * a collection of resources with a mandatory/required action.
+ */
+ public Affordance withSequence(long sequence) {
+ Utils.checkNotNull(sequence, "sequence");
+ this.sequence = Optional.ofNullable(sequence);
+ return this;
+ }
+
+
+ /**
+ * Provides a stable and consistent order to a collection of resources. Useful when multiple processes
+ * are working in parallel to iterate over
+ * a collection of resources with a mandatory/required action.
+ */
+ public Affordance withSequence(Optional sequence) {
+ Utils.checkNotNull(sequence, "sequence");
+ this.sequence = sequence;
+ return this;
+ }
+
+ /**
+ * Placeholder
+ */
+ public Affordance withDescription(String description) {
+ Utils.checkNotNull(description, "description");
+ this.description = Optional.ofNullable(description);
+ return this;
+ }
+
+
+ /**
+ * Placeholder
+ */
+ public Affordance withDescription(Optional description) {
+ Utils.checkNotNull(description, "description");
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * A natural language dictionary of JSON template variables used in invoke an action
+ */
+ public Affordance withTemplateVariables(Map templateVariables) {
+ Utils.checkNotNull(templateVariables, "templateVariables");
+ this.templateVariables = Optional.ofNullable(templateVariables);
+ return this;
+ }
+
+
+ /**
+ * A natural language dictionary of JSON template variables used in invoke an action
+ */
+ public Affordance withTemplateVariables(Optional extends Map> templateVariables) {
+ Utils.checkNotNull(templateVariables, "templateVariables");
+ this.templateVariables = templateVariables;
+ return this;
+ }
+
+ /**
+ * Additional HTTP request headers needed in the request to invoke an action.
+ */
+ public Affordance withHeaders(Map headers) {
+ Utils.checkNotNull(headers, "headers");
+ this.headers = Optional.ofNullable(headers);
+ return this;
+ }
+
+
+ /**
+ * Additional HTTP request headers needed in the request to invoke an action.
+ */
+ public Affordance withHeaders(Optional extends Map> headers) {
+ Utils.checkNotNull(headers, "headers");
+ this.headers = headers;
+ return this;
+ }
+
+ /**
+ * Limits and restrictions on
+ */
+ public Affordance withConstraints(Object constraints) {
+ Utils.checkNotNull(constraints, "constraints");
+ this.constraints = Optional.ofNullable(constraints);
+ return this;
+ }
+
+
+ /**
+ * Limits and restrictions on
+ */
+ public Affordance withConstraints(Optional extends Object> constraints) {
+ Utils.checkNotNull(constraints, "constraints");
+ this.constraints = constraints;
+ return this;
+ }
+
+ /**
+ * Success status codes (2xx range) indicating the request was received,
+ * understood, and accepted.
+ * Common codes:
+ * - 200: OK - Standard successful response
+ * - 201: Created - Resource successfully created
+ * - 202: Accepted - Request accepted for processing
+ * - 204: No Content - Successful with no response body
+ * - 206: Partial Content - Partial resource returned
+ */
+ public Affordance withSuccessStatusCode(int successStatusCode) {
+ Utils.checkNotNull(successStatusCode, "successStatusCode");
+ this.successStatusCode = Optional.ofNullable(successStatusCode);
+ return this;
+ }
+
+
+ /**
+ * Success status codes (2xx range) indicating the request was received,
+ * understood, and accepted.
+ * Common codes:
+ * - 200: OK - Standard successful response
+ * - 201: Created - Resource successfully created
+ * - 202: Accepted - Request accepted for processing
+ * - 204: No Content - Successful with no response body
+ * - 206: Partial Content - Partial resource returned
+ */
+ public Affordance withSuccessStatusCode(Optional successStatusCode) {
+ Utils.checkNotNull(successStatusCode, "successStatusCode");
+ this.successStatusCode = successStatusCode;
+ return this;
+ }
+
+ @Override
+ public boolean equals(java.lang.Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ Affordance other = (Affordance) o;
+ return
+ Utils.enhancedDeepEquals(this.href, other.href) &&
+ Utils.enhancedDeepEquals(this.method, other.method) &&
+ Utils.enhancedDeepEquals(this.required, other.required) &&
+ Utils.enhancedDeepEquals(this.sequence, other.sequence) &&
+ Utils.enhancedDeepEquals(this.description, other.description) &&
+ Utils.enhancedDeepEquals(this.templateVariables, other.templateVariables) &&
+ Utils.enhancedDeepEquals(this.headers, other.headers) &&
+ Utils.enhancedDeepEquals(this.constraints, other.constraints) &&
+ Utils.enhancedDeepEquals(this.successStatusCode, other.successStatusCode);
+ }
+
+ @Override
+ public int hashCode() {
+ return Utils.enhancedHash(
+ href, method, required,
+ sequence, description, templateVariables,
+ headers, constraints, successStatusCode);
+ }
+
+ @Override
+ public String toString() {
+ return Utils.toString(Affordance.class,
+ "href", href,
+ "method", method,
+ "required", required,
+ "sequence", sequence,
+ "description", description,
+ "templateVariables", templateVariables,
+ "headers", headers,
+ "constraints", constraints,
+ "successStatusCode", successStatusCode);
+ }
+
+ @SuppressWarnings("UnusedReturnValue")
+ public final static class Builder {
+
+ private JsonNullable href = JsonNullable.undefined();
+
+ private Optional extends AffordanceMethod> method = Optional.empty();
+
+ private Optional required;
+
+ private Optional sequence = Optional.empty();
+
+ private Optional description = Optional.empty();
+
+ private Optional extends Map> templateVariables = Optional.empty();
+
+ private Optional extends Map> headers = Optional.empty();
+
+ private Optional extends Object> constraints = Optional.empty();
+
+ private Optional successStatusCode = Optional.empty();
+
+ private Builder() {
+ // force use of static builder() method
+ }
+
+
+ public Builder href(String href) {
+ Utils.checkNotNull(href, "href");
+ this.href = JsonNullable.of(href);
+ return this;
+ }
+
+ public Builder href(JsonNullable href) {
+ Utils.checkNotNull(href, "href");
+ this.href = href;
+ return this;
+ }
+
+
+ /**
+ * The http method to use when invoking this affordance
+ */
+ public Builder method(AffordanceMethod method) {
+ Utils.checkNotNull(method, "method");
+ this.method = Optional.ofNullable(method);
+ return this;
+ }
+
+ /**
+ * The http method to use when invoking this affordance
+ */
+ public Builder method(Optional extends AffordanceMethod> method) {
+ Utils.checkNotNull(method, "method");
+ this.method = method;
+ return this;
+ }
+
+
+ /**
+ * Indicates if an action must be performed on a resource. This may include a manadatory step as part
+ * of a business process, especially
+ * when failing to execute a subsequent action will leave the resource in a bad or incomplete state.
+ * # note: would it be necessary for manadatory/required actionsto be performed prior to an optional
+ * action
+ * # note: mandatory actions which have previously been executed on a resource should not be be
+ * returned in the server response
+ * # execept in cases where the resource is in a state that permits this action to be performed again.
+ */
+ public Builder required(boolean required) {
+ Utils.checkNotNull(required, "required");
+ this.required = Optional.ofNullable(required);
+ return this;
+ }
+
+ /**
+ * Indicates if an action must be performed on a resource. This may include a manadatory step as part
+ * of a business process, especially
+ * when failing to execute a subsequent action will leave the resource in a bad or incomplete state.
+ * # note: would it be necessary for manadatory/required actionsto be performed prior to an optional
+ * action
+ * # note: mandatory actions which have previously been executed on a resource should not be be
+ * returned in the server response
+ * # execept in cases where the resource is in a state that permits this action to be performed again.
+ */
+ public Builder required(Optional required) {
+ Utils.checkNotNull(required, "required");
+ this.required = required;
+ return this;
+ }
+
+
+ /**
+ * Provides a stable and consistent order to a collection of resources. Useful when multiple processes
+ * are working in parallel to iterate over
+ * a collection of resources with a mandatory/required action.
+ */
+ public Builder sequence(long sequence) {
+ Utils.checkNotNull(sequence, "sequence");
+ this.sequence = Optional.ofNullable(sequence);
+ return this;
+ }
+
+ /**
+ * Provides a stable and consistent order to a collection of resources. Useful when multiple processes
+ * are working in parallel to iterate over
+ * a collection of resources with a mandatory/required action.
+ */
+ public Builder sequence(Optional sequence) {
+ Utils.checkNotNull(sequence, "sequence");
+ this.sequence = sequence;
+ return this;
+ }
+
+
+ /**
+ * Placeholder
+ */
+ public Builder description(String description) {
+ Utils.checkNotNull(description, "description");
+ this.description = Optional.ofNullable(description);
+ return this;
+ }
+
+ /**
+ * Placeholder
+ */
+ public Builder description(Optional description) {
+ Utils.checkNotNull(description, "description");
+ this.description = description;
+ return this;
+ }
+
+
+ /**
+ * A natural language dictionary of JSON template variables used in invoke an action
+ */
+ public Builder templateVariables(Map templateVariables) {
+ Utils.checkNotNull(templateVariables, "templateVariables");
+ this.templateVariables = Optional.ofNullable(templateVariables);
+ return this;
+ }
+
+ /**
+ * A natural language dictionary of JSON template variables used in invoke an action
+ */
+ public Builder templateVariables(Optional extends Map> templateVariables) {
+ Utils.checkNotNull(templateVariables, "templateVariables");
+ this.templateVariables = templateVariables;
+ return this;
+ }
+
+
+ /**
+ * Additional HTTP request headers needed in the request to invoke an action.
+ */
+ public Builder headers(Map headers) {
+ Utils.checkNotNull(headers, "headers");
+ this.headers = Optional.ofNullable(headers);
+ return this;
+ }
+
+ /**
+ * Additional HTTP request headers needed in the request to invoke an action.
+ */
+ public Builder headers(Optional extends Map> headers) {
+ Utils.checkNotNull(headers, "headers");
+ this.headers = headers;
+ return this;
+ }
+
+
+ /**
+ * Limits and restrictions on
+ */
+ public Builder constraints(Object constraints) {
+ Utils.checkNotNull(constraints, "constraints");
+ this.constraints = Optional.ofNullable(constraints);
+ return this;
+ }
+
+ /**
+ * Limits and restrictions on
+ */
+ public Builder constraints(Optional extends Object> constraints) {
+ Utils.checkNotNull(constraints, "constraints");
+ this.constraints = constraints;
+ return this;
+ }
+
+
+ /**
+ * Success status codes (2xx range) indicating the request was received,
+ * understood, and accepted.
+ * Common codes:
+ * - 200: OK - Standard successful response
+ * - 201: Created - Resource successfully created
+ * - 202: Accepted - Request accepted for processing
+ * - 204: No Content - Successful with no response body
+ * - 206: Partial Content - Partial resource returned
+ */
+ public Builder successStatusCode(int successStatusCode) {
+ Utils.checkNotNull(successStatusCode, "successStatusCode");
+ this.successStatusCode = Optional.ofNullable(successStatusCode);
+ return this;
+ }
+
+ /**
+ * Success status codes (2xx range) indicating the request was received,
+ * understood, and accepted.
+ * Common codes:
+ * - 200: OK - Standard successful response
+ * - 201: Created - Resource successfully created
+ * - 202: Accepted - Request accepted for processing
+ * - 204: No Content - Successful with no response body
+ * - 206: Partial Content - Partial resource returned
+ */
+ public Builder successStatusCode(Optional successStatusCode) {
+ Utils.checkNotNull(successStatusCode, "successStatusCode");
+ this.successStatusCode = successStatusCode;
+ return this;
+ }
+
+ public Affordance build() {
+ if (required == null) {
+ required = _SINGLETON_VALUE_Required.value();
+ }
+
+ return new Affordance(
+ href, method, required,
+ sequence, description, templateVariables,
+ headers, constraints, successStatusCode);
+ }
+
+
+ private static final LazySingletonValue> _SINGLETON_VALUE_Required =
+ new LazySingletonValue<>(
+ "required",
+ "false",
+ new TypeReference>() {});
+ }
+}
diff --git a/src/main/java/com/docusign/iam/sdk/models/components/AffordanceMethod.java b/src/main/java/com/docusign/iam/sdk/models/components/AffordanceMethod.java
new file mode 100644
index 0000000..165e001
--- /dev/null
+++ b/src/main/java/com/docusign/iam/sdk/models/components/AffordanceMethod.java
@@ -0,0 +1,43 @@
+/*
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+ */
+package com.docusign.iam.sdk.models.components;
+
+import com.fasterxml.jackson.annotation.JsonValue;
+import java.lang.String;
+import java.util.Objects;
+import java.util.Optional;
+
+/**
+ * AffordanceMethod
+ *
+ * The http method to use when invoking this affordance
+ */
+public enum AffordanceMethod {
+ POST("POST"),
+ GET("GET"),
+ PATCH("PATCH"),
+ PUT("PUT"),
+ DELETE("DELETE");
+
+ @JsonValue
+ private final String value;
+
+ AffordanceMethod(String value) {
+ this.value = value;
+ }
+
+ public String value() {
+ return value;
+ }
+
+ public static Optional fromValue(String value) {
+ for (AffordanceMethod o: AffordanceMethod.values()) {
+ if (Objects.deepEquals(o.value, value)) {
+ return Optional.of(o);
+ }
+ }
+ return Optional.empty();
+ }
+}
+
diff --git a/src/main/java/com/docusign/iam/sdk/models/components/BulkJobActionTemplates.java b/src/main/java/com/docusign/iam/sdk/models/components/BulkJobActionTemplates.java
index 9b34a3f..331163e 100644
--- a/src/main/java/com/docusign/iam/sdk/models/components/BulkJobActionTemplates.java
+++ b/src/main/java/com/docusign/iam/sdk/models/components/BulkJobActionTemplates.java
@@ -21,23 +21,15 @@ public class BulkJobActionTemplates {
@JsonProperty("upload_document")
private Optional extends BulkJobActionTemplate> uploadDocument;
-
- @JsonInclude(Include.NON_ABSENT)
- @JsonProperty("upload_metadata")
- private Optional extends BulkJobActionTemplate> uploadMetadata;
-
@JsonCreator
public BulkJobActionTemplates(
- @JsonProperty("upload_document") Optional extends BulkJobActionTemplate> uploadDocument,
- @JsonProperty("upload_metadata") Optional extends BulkJobActionTemplate> uploadMetadata) {
+ @JsonProperty("upload_document") Optional extends BulkJobActionTemplate> uploadDocument) {
Utils.checkNotNull(uploadDocument, "uploadDocument");
- Utils.checkNotNull(uploadMetadata, "uploadMetadata");
this.uploadDocument = uploadDocument;
- this.uploadMetadata = uploadMetadata;
}
public BulkJobActionTemplates() {
- this(Optional.empty(), Optional.empty());
+ this(Optional.empty());
}
@SuppressWarnings("unchecked")
@@ -46,12 +38,6 @@ public Optional uploadDocument() {
return (Optional) uploadDocument;
}
- @SuppressWarnings("unchecked")
- @JsonIgnore
- public Optional uploadMetadata() {
- return (Optional) uploadMetadata;
- }
-
public static Builder builder() {
return new Builder();
}
@@ -70,19 +56,6 @@ public BulkJobActionTemplates withUploadDocument(Optional extends BulkJobActio
return this;
}
- public BulkJobActionTemplates withUploadMetadata(BulkJobActionTemplate uploadMetadata) {
- Utils.checkNotNull(uploadMetadata, "uploadMetadata");
- this.uploadMetadata = Optional.ofNullable(uploadMetadata);
- return this;
- }
-
-
- public BulkJobActionTemplates withUploadMetadata(Optional extends BulkJobActionTemplate> uploadMetadata) {
- Utils.checkNotNull(uploadMetadata, "uploadMetadata");
- this.uploadMetadata = uploadMetadata;
- return this;
- }
-
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
@@ -93,21 +66,19 @@ public boolean equals(java.lang.Object o) {
}
BulkJobActionTemplates other = (BulkJobActionTemplates) o;
return
- Utils.enhancedDeepEquals(this.uploadDocument, other.uploadDocument) &&
- Utils.enhancedDeepEquals(this.uploadMetadata, other.uploadMetadata);
+ Utils.enhancedDeepEquals(this.uploadDocument, other.uploadDocument);
}
@Override
public int hashCode() {
return Utils.enhancedHash(
- uploadDocument, uploadMetadata);
+ uploadDocument);
}
@Override
public String toString() {
return Utils.toString(BulkJobActionTemplates.class,
- "uploadDocument", uploadDocument,
- "uploadMetadata", uploadMetadata);
+ "uploadDocument", uploadDocument);
}
@SuppressWarnings("UnusedReturnValue")
@@ -115,8 +86,6 @@ public final static class Builder {
private Optional extends BulkJobActionTemplate> uploadDocument = Optional.empty();
- private Optional extends BulkJobActionTemplate> uploadMetadata = Optional.empty();
-
private Builder() {
// force use of static builder() method
}
@@ -134,23 +103,10 @@ public Builder uploadDocument(Optional extends BulkJobActionTemplate> uploadDo
return this;
}
-
- public Builder uploadMetadata(BulkJobActionTemplate uploadMetadata) {
- Utils.checkNotNull(uploadMetadata, "uploadMetadata");
- this.uploadMetadata = Optional.ofNullable(uploadMetadata);
- return this;
- }
-
- public Builder uploadMetadata(Optional extends BulkJobActionTemplate> uploadMetadata) {
- Utils.checkNotNull(uploadMetadata, "uploadMetadata");
- this.uploadMetadata = uploadMetadata;
- return this;
- }
-
public BulkJobActionTemplates build() {
return new BulkJobActionTemplates(
- uploadDocument, uploadMetadata);
+ uploadDocument);
}
}
diff --git a/src/main/java/com/docusign/iam/sdk/models/components/BulkJobEmbeddedItems.java b/src/main/java/com/docusign/iam/sdk/models/components/BulkJobEmbeddedItems.java
index 3005724..3c43e31 100644
--- a/src/main/java/com/docusign/iam/sdk/models/components/BulkJobEmbeddedItems.java
+++ b/src/main/java/com/docusign/iam/sdk/models/components/BulkJobEmbeddedItems.java
@@ -9,10 +9,12 @@
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.lang.Boolean;
import java.lang.Integer;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
+import java.util.List;
import java.util.Optional;
@@ -39,7 +41,7 @@ public class BulkJobEmbeddedItems {
private Optional sequence;
/**
- * Document status. Last 3 are terminal statuses. Matches enum with similar name in the backend.
+ * Document status. Last 4 are terminal statuses. Matches enum with similar name in the backend.
*/
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("status")
@@ -52,6 +54,13 @@ public class BulkJobEmbeddedItems {
@JsonProperty("file_name")
private Optional fileName;
+ /**
+ * Whether AI extraction was performed on this document
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("ai_extraction")
+ private Optional aiExtraction;
+
/**
* Error code if document processing failed
*/
@@ -66,7 +75,18 @@ public class BulkJobEmbeddedItems {
@JsonProperty("error")
private Optional error;
+ /**
+ * List of warnings encountered during document processing. Present when status is
+ * SUCCEEDED_WITH_WARNINGS.
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("warnings")
+ private Optional extends List> warnings;
+ /**
+ * Available actions for this document. Actions vary based on document state - upload actions during
+ * initial upload, remediation actions after processing.
+ */
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("_actions")
private Optional extends BulkJobItemActions> actions;
@@ -85,8 +105,10 @@ public BulkJobEmbeddedItems(
@JsonProperty("sequence") Optional sequence,
@JsonProperty("status") Optional extends DocStatus> status,
@JsonProperty("file_name") Optional fileName,
+ @JsonProperty("ai_extraction") Optional aiExtraction,
@JsonProperty("error_code") Optional errorCode,
@JsonProperty("error") Optional error,
+ @JsonProperty("warnings") Optional extends List> warnings,
@JsonProperty("_actions") Optional extends BulkJobItemActions> actions,
@JsonProperty("_links") Optional extends BulkJobEmbeddedItemsLinks> links) {
Utils.checkNotNull(id, "id");
@@ -94,8 +116,10 @@ public BulkJobEmbeddedItems(
Utils.checkNotNull(sequence, "sequence");
Utils.checkNotNull(status, "status");
Utils.checkNotNull(fileName, "fileName");
+ Utils.checkNotNull(aiExtraction, "aiExtraction");
Utils.checkNotNull(errorCode, "errorCode");
Utils.checkNotNull(error, "error");
+ Utils.checkNotNull(warnings, "warnings");
Utils.checkNotNull(actions, "actions");
Utils.checkNotNull(links, "links");
this.id = id;
@@ -103,8 +127,10 @@ public BulkJobEmbeddedItems(
this.sequence = sequence;
this.status = status;
this.fileName = fileName;
+ this.aiExtraction = aiExtraction;
this.errorCode = errorCode;
this.error = error;
+ this.warnings = warnings;
this.actions = actions;
this.links = links;
}
@@ -112,7 +138,8 @@ public BulkJobEmbeddedItems(
public BulkJobEmbeddedItems() {
this(Optional.empty(), Optional.empty(), Optional.empty(),
Optional.empty(), Optional.empty(), Optional.empty(),
- Optional.empty(), Optional.empty(), Optional.empty());
+ Optional.empty(), Optional.empty(), Optional.empty(),
+ Optional.empty(), Optional.empty());
}
/**
@@ -140,7 +167,7 @@ public Optional sequence() {
}
/**
- * Document status. Last 3 are terminal statuses. Matches enum with similar name in the backend.
+ * Document status. Last 4 are terminal statuses. Matches enum with similar name in the backend.
*/
@SuppressWarnings("unchecked")
@JsonIgnore
@@ -156,6 +183,14 @@ public Optional fileName() {
return fileName;
}
+ /**
+ * Whether AI extraction was performed on this document
+ */
+ @JsonIgnore
+ public Optional aiExtraction() {
+ return aiExtraction;
+ }
+
/**
* Error code if document processing failed
*/
@@ -172,6 +207,20 @@ public Optional error() {
return error;
}
+ /**
+ * List of warnings encountered during document processing. Present when status is
+ * SUCCEEDED_WITH_WARNINGS.
+ */
+ @SuppressWarnings("unchecked")
+ @JsonIgnore
+ public Optional> warnings() {
+ return (Optional>) warnings;
+ }
+
+ /**
+ * Available actions for this document. Actions vary based on document state - upload actions during
+ * initial upload, remediation actions after processing.
+ */
@SuppressWarnings("unchecked")
@JsonIgnore
public Optional actions() {
@@ -250,7 +299,7 @@ public BulkJobEmbeddedItems withSequence(Optional sequence) {
}
/**
- * Document status. Last 3 are terminal statuses. Matches enum with similar name in the backend.
+ * Document status. Last 4 are terminal statuses. Matches enum with similar name in the backend.
*/
public BulkJobEmbeddedItems withStatus(DocStatus status) {
Utils.checkNotNull(status, "status");
@@ -260,7 +309,7 @@ public BulkJobEmbeddedItems withStatus(DocStatus status) {
/**
- * Document status. Last 3 are terminal statuses. Matches enum with similar name in the backend.
+ * Document status. Last 4 are terminal statuses. Matches enum with similar name in the backend.
*/
public BulkJobEmbeddedItems withStatus(Optional extends DocStatus> status) {
Utils.checkNotNull(status, "status");
@@ -287,6 +336,25 @@ public BulkJobEmbeddedItems withFileName(Optional fileName) {
return this;
}
+ /**
+ * Whether AI extraction was performed on this document
+ */
+ public BulkJobEmbeddedItems withAiExtraction(boolean aiExtraction) {
+ Utils.checkNotNull(aiExtraction, "aiExtraction");
+ this.aiExtraction = Optional.ofNullable(aiExtraction);
+ return this;
+ }
+
+
+ /**
+ * Whether AI extraction was performed on this document
+ */
+ public BulkJobEmbeddedItems withAiExtraction(Optional aiExtraction) {
+ Utils.checkNotNull(aiExtraction, "aiExtraction");
+ this.aiExtraction = aiExtraction;
+ return this;
+ }
+
/**
* Error code if document processing failed
*/
@@ -325,6 +393,31 @@ public BulkJobEmbeddedItems withError(Optional error) {
return this;
}
+ /**
+ * List of warnings encountered during document processing. Present when status is
+ * SUCCEEDED_WITH_WARNINGS.
+ */
+ public BulkJobEmbeddedItems withWarnings(List warnings) {
+ Utils.checkNotNull(warnings, "warnings");
+ this.warnings = Optional.ofNullable(warnings);
+ return this;
+ }
+
+
+ /**
+ * List of warnings encountered during document processing. Present when status is
+ * SUCCEEDED_WITH_WARNINGS.
+ */
+ public BulkJobEmbeddedItems withWarnings(Optional extends List> warnings) {
+ Utils.checkNotNull(warnings, "warnings");
+ this.warnings = warnings;
+ return this;
+ }
+
+ /**
+ * Available actions for this document. Actions vary based on document state - upload actions during
+ * initial upload, remediation actions after processing.
+ */
public BulkJobEmbeddedItems withActions(BulkJobItemActions actions) {
Utils.checkNotNull(actions, "actions");
this.actions = Optional.ofNullable(actions);
@@ -332,6 +425,10 @@ public BulkJobEmbeddedItems withActions(BulkJobItemActions actions) {
}
+ /**
+ * Available actions for this document. Actions vary based on document state - upload actions during
+ * initial upload, remediation actions after processing.
+ */
public BulkJobEmbeddedItems withActions(Optional extends BulkJobItemActions> actions) {
Utils.checkNotNull(actions, "actions");
this.actions = actions;
@@ -372,8 +469,10 @@ public boolean equals(java.lang.Object o) {
Utils.enhancedDeepEquals(this.sequence, other.sequence) &&
Utils.enhancedDeepEquals(this.status, other.status) &&
Utils.enhancedDeepEquals(this.fileName, other.fileName) &&
+ Utils.enhancedDeepEquals(this.aiExtraction, other.aiExtraction) &&
Utils.enhancedDeepEquals(this.errorCode, other.errorCode) &&
Utils.enhancedDeepEquals(this.error, other.error) &&
+ Utils.enhancedDeepEquals(this.warnings, other.warnings) &&
Utils.enhancedDeepEquals(this.actions, other.actions) &&
Utils.enhancedDeepEquals(this.links, other.links);
}
@@ -382,8 +481,9 @@ public boolean equals(java.lang.Object o) {
public int hashCode() {
return Utils.enhancedHash(
id, agreementId, sequence,
- status, fileName, errorCode,
- error, actions, links);
+ status, fileName, aiExtraction,
+ errorCode, error, warnings,
+ actions, links);
}
@Override
@@ -394,8 +494,10 @@ public String toString() {
"sequence", sequence,
"status", status,
"fileName", fileName,
+ "aiExtraction", aiExtraction,
"errorCode", errorCode,
"error", error,
+ "warnings", warnings,
"actions", actions,
"links", links);
}
@@ -413,10 +515,14 @@ public final static class Builder {
private Optional fileName = Optional.empty();
+ private Optional aiExtraction = Optional.empty();
+
private Optional errorCode = Optional.empty();
private Optional error = Optional.empty();
+ private Optional extends List> warnings = Optional.empty();
+
private Optional extends BulkJobItemActions> actions = Optional.empty();
private Optional extends BulkJobEmbeddedItemsLinks> links = Optional.empty();
@@ -484,7 +590,7 @@ public Builder sequence(Optional sequence) {
/**
- * Document status. Last 3 are terminal statuses. Matches enum with similar name in the backend.
+ * Document status. Last 4 are terminal statuses. Matches enum with similar name in the backend.
*/
public Builder status(DocStatus status) {
Utils.checkNotNull(status, "status");
@@ -493,7 +599,7 @@ public Builder status(DocStatus status) {
}
/**
- * Document status. Last 3 are terminal statuses. Matches enum with similar name in the backend.
+ * Document status. Last 4 are terminal statuses. Matches enum with similar name in the backend.
*/
public Builder status(Optional extends DocStatus> status) {
Utils.checkNotNull(status, "status");
@@ -521,6 +627,25 @@ public Builder fileName(Optional fileName) {
}
+ /**
+ * Whether AI extraction was performed on this document
+ */
+ public Builder aiExtraction(boolean aiExtraction) {
+ Utils.checkNotNull(aiExtraction, "aiExtraction");
+ this.aiExtraction = Optional.ofNullable(aiExtraction);
+ return this;
+ }
+
+ /**
+ * Whether AI extraction was performed on this document
+ */
+ public Builder aiExtraction(Optional aiExtraction) {
+ Utils.checkNotNull(aiExtraction, "aiExtraction");
+ this.aiExtraction = aiExtraction;
+ return this;
+ }
+
+
/**
* Error code if document processing failed
*/
@@ -559,12 +684,41 @@ public Builder error(Optional error) {
}
+ /**
+ * List of warnings encountered during document processing. Present when status is
+ * SUCCEEDED_WITH_WARNINGS.
+ */
+ public Builder warnings(List warnings) {
+ Utils.checkNotNull(warnings, "warnings");
+ this.warnings = Optional.ofNullable(warnings);
+ return this;
+ }
+
+ /**
+ * List of warnings encountered during document processing. Present when status is
+ * SUCCEEDED_WITH_WARNINGS.
+ */
+ public Builder warnings(Optional extends List> warnings) {
+ Utils.checkNotNull(warnings, "warnings");
+ this.warnings = warnings;
+ return this;
+ }
+
+
+ /**
+ * Available actions for this document. Actions vary based on document state - upload actions during
+ * initial upload, remediation actions after processing.
+ */
public Builder actions(BulkJobItemActions actions) {
Utils.checkNotNull(actions, "actions");
this.actions = Optional.ofNullable(actions);
return this;
}
+ /**
+ * Available actions for this document. Actions vary based on document state - upload actions during
+ * initial upload, remediation actions after processing.
+ */
public Builder actions(Optional extends BulkJobItemActions> actions) {
Utils.checkNotNull(actions, "actions");
this.actions = actions;
@@ -594,8 +748,9 @@ public BulkJobEmbeddedItems build() {
return new BulkJobEmbeddedItems(
id, agreementId, sequence,
- status, fileName, errorCode,
- error, actions, links);
+ status, fileName, aiExtraction,
+ errorCode, error, warnings,
+ actions, links);
}
}
diff --git a/src/main/java/com/docusign/iam/sdk/models/components/BulkJobEmbeddedItemsAgreement.java b/src/main/java/com/docusign/iam/sdk/models/components/BulkJobEmbeddedItemsAgreement.java
new file mode 100644
index 0000000..9ae60db
--- /dev/null
+++ b/src/main/java/com/docusign/iam/sdk/models/components/BulkJobEmbeddedItemsAgreement.java
@@ -0,0 +1,132 @@
+/*
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+ */
+package com.docusign.iam.sdk.models.components;
+
+import com.docusign.iam.sdk.utils.Utils;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude.Include;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.lang.Override;
+import java.lang.String;
+import java.util.Optional;
+
+/**
+ * BulkJobEmbeddedItemsAgreement
+ *
+ * Link to the associated agreement
+ */
+public class BulkJobEmbeddedItemsAgreement {
+ /**
+ * URL to the agreement resource
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("href")
+ private Optional href;
+
+ @JsonCreator
+ public BulkJobEmbeddedItemsAgreement(
+ @JsonProperty("href") Optional href) {
+ Utils.checkNotNull(href, "href");
+ this.href = href;
+ }
+
+ public BulkJobEmbeddedItemsAgreement() {
+ this(Optional.empty());
+ }
+
+ /**
+ * URL to the agreement resource
+ */
+ @JsonIgnore
+ public Optional href() {
+ return href;
+ }
+
+ public static Builder builder() {
+ return new Builder();
+ }
+
+
+ /**
+ * URL to the agreement resource
+ */
+ public BulkJobEmbeddedItemsAgreement withHref(String href) {
+ Utils.checkNotNull(href, "href");
+ this.href = Optional.ofNullable(href);
+ return this;
+ }
+
+
+ /**
+ * URL to the agreement resource
+ */
+ public BulkJobEmbeddedItemsAgreement withHref(Optional href) {
+ Utils.checkNotNull(href, "href");
+ this.href = href;
+ return this;
+ }
+
+ @Override
+ public boolean equals(java.lang.Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ BulkJobEmbeddedItemsAgreement other = (BulkJobEmbeddedItemsAgreement) o;
+ return
+ Utils.enhancedDeepEquals(this.href, other.href);
+ }
+
+ @Override
+ public int hashCode() {
+ return Utils.enhancedHash(
+ href);
+ }
+
+ @Override
+ public String toString() {
+ return Utils.toString(BulkJobEmbeddedItemsAgreement.class,
+ "href", href);
+ }
+
+ @SuppressWarnings("UnusedReturnValue")
+ public final static class Builder {
+
+ private Optional href = Optional.empty();
+
+ private Builder() {
+ // force use of static builder() method
+ }
+
+
+ /**
+ * URL to the agreement resource
+ */
+ public Builder href(String href) {
+ Utils.checkNotNull(href, "href");
+ this.href = Optional.ofNullable(href);
+ return this;
+ }
+
+ /**
+ * URL to the agreement resource
+ */
+ public Builder href(Optional href) {
+ Utils.checkNotNull(href, "href");
+ this.href = href;
+ return this;
+ }
+
+ public BulkJobEmbeddedItemsAgreement build() {
+
+ return new BulkJobEmbeddedItemsAgreement(
+ href);
+ }
+
+ }
+}
diff --git a/src/main/java/com/docusign/iam/sdk/models/components/BulkJobEmbeddedItemsLinks.java b/src/main/java/com/docusign/iam/sdk/models/components/BulkJobEmbeddedItemsLinks.java
index 8faabb8..b9a30c9 100644
--- a/src/main/java/com/docusign/iam/sdk/models/components/BulkJobEmbeddedItemsLinks.java
+++ b/src/main/java/com/docusign/iam/sdk/models/components/BulkJobEmbeddedItemsLinks.java
@@ -27,15 +27,25 @@ public class BulkJobEmbeddedItemsLinks {
@JsonProperty("document")
private Optional extends Document> document;
+ /**
+ * Link to the associated agreement
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("agreement")
+ private Optional extends BulkJobEmbeddedItemsAgreement> agreement;
+
@JsonCreator
public BulkJobEmbeddedItemsLinks(
- @JsonProperty("document") Optional extends Document> document) {
+ @JsonProperty("document") Optional extends Document> document,
+ @JsonProperty("agreement") Optional extends BulkJobEmbeddedItemsAgreement> agreement) {
Utils.checkNotNull(document, "document");
+ Utils.checkNotNull(agreement, "agreement");
this.document = document;
+ this.agreement = agreement;
}
public BulkJobEmbeddedItemsLinks() {
- this(Optional.empty());
+ this(Optional.empty(), Optional.empty());
}
/**
@@ -47,6 +57,15 @@ public Optional document() {
return (Optional) document;
}
+ /**
+ * Link to the associated agreement
+ */
+ @SuppressWarnings("unchecked")
+ @JsonIgnore
+ public Optional agreement() {
+ return (Optional) agreement;
+ }
+
public static Builder builder() {
return new Builder();
}
@@ -71,6 +90,25 @@ public BulkJobEmbeddedItemsLinks withDocument(Optional extends Document> docum
return this;
}
+ /**
+ * Link to the associated agreement
+ */
+ public BulkJobEmbeddedItemsLinks withAgreement(BulkJobEmbeddedItemsAgreement agreement) {
+ Utils.checkNotNull(agreement, "agreement");
+ this.agreement = Optional.ofNullable(agreement);
+ return this;
+ }
+
+
+ /**
+ * Link to the associated agreement
+ */
+ public BulkJobEmbeddedItemsLinks withAgreement(Optional extends BulkJobEmbeddedItemsAgreement> agreement) {
+ Utils.checkNotNull(agreement, "agreement");
+ this.agreement = agreement;
+ return this;
+ }
+
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
@@ -81,19 +119,21 @@ public boolean equals(java.lang.Object o) {
}
BulkJobEmbeddedItemsLinks other = (BulkJobEmbeddedItemsLinks) o;
return
- Utils.enhancedDeepEquals(this.document, other.document);
+ Utils.enhancedDeepEquals(this.document, other.document) &&
+ Utils.enhancedDeepEquals(this.agreement, other.agreement);
}
@Override
public int hashCode() {
return Utils.enhancedHash(
- document);
+ document, agreement);
}
@Override
public String toString() {
return Utils.toString(BulkJobEmbeddedItemsLinks.class,
- "document", document);
+ "document", document,
+ "agreement", agreement);
}
@SuppressWarnings("UnusedReturnValue")
@@ -101,6 +141,8 @@ public final static class Builder {
private Optional extends Document> document = Optional.empty();
+ private Optional extends BulkJobEmbeddedItemsAgreement> agreement = Optional.empty();
+
private Builder() {
// force use of static builder() method
}
@@ -124,10 +166,29 @@ public Builder document(Optional extends Document> document) {
return this;
}
+
+ /**
+ * Link to the associated agreement
+ */
+ public Builder agreement(BulkJobEmbeddedItemsAgreement agreement) {
+ Utils.checkNotNull(agreement, "agreement");
+ this.agreement = Optional.ofNullable(agreement);
+ return this;
+ }
+
+ /**
+ * Link to the associated agreement
+ */
+ public Builder agreement(Optional extends BulkJobEmbeddedItemsAgreement> agreement) {
+ Utils.checkNotNull(agreement, "agreement");
+ this.agreement = agreement;
+ return this;
+ }
+
public BulkJobEmbeddedItemsLinks build() {
return new BulkJobEmbeddedItemsLinks(
- document);
+ document, agreement);
}
}
diff --git a/src/main/java/com/docusign/iam/sdk/models/components/BulkJobItemActions.java b/src/main/java/com/docusign/iam/sdk/models/components/BulkJobItemActions.java
index 237c81b..43f32dd 100644
--- a/src/main/java/com/docusign/iam/sdk/models/components/BulkJobItemActions.java
+++ b/src/main/java/com/docusign/iam/sdk/models/components/BulkJobItemActions.java
@@ -11,9 +11,16 @@
import com.fasterxml.jackson.annotation.JsonProperty;
import java.lang.Override;
import java.lang.String;
+import java.lang.SuppressWarnings;
import java.util.Optional;
+import org.openapitools.jackson.nullable.JsonNullable;
-
+/**
+ * BulkJobItemActions
+ *
+ * Available actions for this document. Actions vary based on document state - upload actions during
+ * initial upload, remediation actions after processing.
+ */
public class BulkJobItemActions {
/**
* Azure Blob Store presigned URL to upload the document file (valid for ~8 hours)
@@ -23,24 +30,32 @@ public class BulkJobItemActions {
private Optional uploadDocument;
/**
- * Azure Blob Store url to upload metadata of the specific file
+ * Affordances (aka 'actions') describe the available operations on a resource, including CRUD and
+ * RPC-like operations. It details the
+ * expected input payload, http method, query parameters, and the resulting output.
+ *
+ * Affordances enable clients to dynamically adapt to the API's current state and available actions.
+ * Instead of
+ * hardcoding all possible endpoints and their associated logic, a client can inspect the affordances
+ * within a
+ * resource's representation to discover what actions are possible and how to perform them.
*/
@JsonInclude(Include.NON_ABSENT)
- @JsonProperty("upload_metadata")
- private Optional uploadMetadata;
+ @JsonProperty("update_metadata")
+ private JsonNullable extends Affordance> updateMetadata;
@JsonCreator
public BulkJobItemActions(
@JsonProperty("upload_document") Optional uploadDocument,
- @JsonProperty("upload_metadata") Optional uploadMetadata) {
+ @JsonProperty("update_metadata") JsonNullable extends Affordance> updateMetadata) {
Utils.checkNotNull(uploadDocument, "uploadDocument");
- Utils.checkNotNull(uploadMetadata, "uploadMetadata");
+ Utils.checkNotNull(updateMetadata, "updateMetadata");
this.uploadDocument = uploadDocument;
- this.uploadMetadata = uploadMetadata;
+ this.updateMetadata = updateMetadata;
}
public BulkJobItemActions() {
- this(Optional.empty(), Optional.empty());
+ this(Optional.empty(), JsonNullable.undefined());
}
/**
@@ -52,11 +67,20 @@ public Optional uploadDocument() {
}
/**
- * Azure Blob Store url to upload metadata of the specific file
+ * Affordances (aka 'actions') describe the available operations on a resource, including CRUD and
+ * RPC-like operations. It details the
+ * expected input payload, http method, query parameters, and the resulting output.
+ *
+ * Affordances enable clients to dynamically adapt to the API's current state and available actions.
+ * Instead of
+ * hardcoding all possible endpoints and their associated logic, a client can inspect the affordances
+ * within a
+ * resource's representation to discover what actions are possible and how to perform them.
*/
+ @SuppressWarnings("unchecked")
@JsonIgnore
- public Optional uploadMetadata() {
- return uploadMetadata;
+ public JsonNullable updateMetadata() {
+ return (JsonNullable) updateMetadata;
}
public static Builder builder() {
@@ -84,21 +108,36 @@ public BulkJobItemActions withUploadDocument(Optional uploadDocument) {
}
/**
- * Azure Blob Store url to upload metadata of the specific file
+ * Affordances (aka 'actions') describe the available operations on a resource, including CRUD and
+ * RPC-like operations. It details the
+ * expected input payload, http method, query parameters, and the resulting output.
+ *
+ * Affordances enable clients to dynamically adapt to the API's current state and available actions.
+ * Instead of
+ * hardcoding all possible endpoints and their associated logic, a client can inspect the affordances
+ * within a
+ * resource's representation to discover what actions are possible and how to perform them.
*/
- public BulkJobItemActions withUploadMetadata(String uploadMetadata) {
- Utils.checkNotNull(uploadMetadata, "uploadMetadata");
- this.uploadMetadata = Optional.ofNullable(uploadMetadata);
+ public BulkJobItemActions withUpdateMetadata(Affordance updateMetadata) {
+ Utils.checkNotNull(updateMetadata, "updateMetadata");
+ this.updateMetadata = JsonNullable.of(updateMetadata);
return this;
}
-
/**
- * Azure Blob Store url to upload metadata of the specific file
+ * Affordances (aka 'actions') describe the available operations on a resource, including CRUD and
+ * RPC-like operations. It details the
+ * expected input payload, http method, query parameters, and the resulting output.
+ *
+ *
Affordances enable clients to dynamically adapt to the API's current state and available actions.
+ * Instead of
+ * hardcoding all possible endpoints and their associated logic, a client can inspect the affordances
+ * within a
+ * resource's representation to discover what actions are possible and how to perform them.
*/
- public BulkJobItemActions withUploadMetadata(Optional uploadMetadata) {
- Utils.checkNotNull(uploadMetadata, "uploadMetadata");
- this.uploadMetadata = uploadMetadata;
+ public BulkJobItemActions withUpdateMetadata(JsonNullable extends Affordance> updateMetadata) {
+ Utils.checkNotNull(updateMetadata, "updateMetadata");
+ this.updateMetadata = updateMetadata;
return this;
}
@@ -113,20 +152,20 @@ public boolean equals(java.lang.Object o) {
BulkJobItemActions other = (BulkJobItemActions) o;
return
Utils.enhancedDeepEquals(this.uploadDocument, other.uploadDocument) &&
- Utils.enhancedDeepEquals(this.uploadMetadata, other.uploadMetadata);
+ Utils.enhancedDeepEquals(this.updateMetadata, other.updateMetadata);
}
@Override
public int hashCode() {
return Utils.enhancedHash(
- uploadDocument, uploadMetadata);
+ uploadDocument, updateMetadata);
}
@Override
public String toString() {
return Utils.toString(BulkJobItemActions.class,
"uploadDocument", uploadDocument,
- "uploadMetadata", uploadMetadata);
+ "updateMetadata", updateMetadata);
}
@SuppressWarnings("UnusedReturnValue")
@@ -134,7 +173,7 @@ public final static class Builder {
private Optional uploadDocument = Optional.empty();
- private Optional uploadMetadata = Optional.empty();
+ private JsonNullable extends Affordance> updateMetadata = JsonNullable.undefined();
private Builder() {
// force use of static builder() method
@@ -161,27 +200,43 @@ public Builder uploadDocument(Optional uploadDocument) {
/**
- * Azure Blob Store url to upload metadata of the specific file
+ * Affordances (aka 'actions') describe the available operations on a resource, including CRUD and
+ * RPC-like operations. It details the
+ * expected input payload, http method, query parameters, and the resulting output.
+ *
+ * Affordances enable clients to dynamically adapt to the API's current state and available actions.
+ * Instead of
+ * hardcoding all possible endpoints and their associated logic, a client can inspect the affordances
+ * within a
+ * resource's representation to discover what actions are possible and how to perform them.
*/
- public Builder uploadMetadata(String uploadMetadata) {
- Utils.checkNotNull(uploadMetadata, "uploadMetadata");
- this.uploadMetadata = Optional.ofNullable(uploadMetadata);
+ public Builder updateMetadata(Affordance updateMetadata) {
+ Utils.checkNotNull(updateMetadata, "updateMetadata");
+ this.updateMetadata = JsonNullable.of(updateMetadata);
return this;
}
/**
- * Azure Blob Store url to upload metadata of the specific file
+ * Affordances (aka 'actions') describe the available operations on a resource, including CRUD and
+ * RPC-like operations. It details the
+ * expected input payload, http method, query parameters, and the resulting output.
+ *
+ *
Affordances enable clients to dynamically adapt to the API's current state and available actions.
+ * Instead of
+ * hardcoding all possible endpoints and their associated logic, a client can inspect the affordances
+ * within a
+ * resource's representation to discover what actions are possible and how to perform them.
*/
- public Builder uploadMetadata(Optional uploadMetadata) {
- Utils.checkNotNull(uploadMetadata, "uploadMetadata");
- this.uploadMetadata = uploadMetadata;
+ public Builder updateMetadata(JsonNullable extends Affordance> updateMetadata) {
+ Utils.checkNotNull(updateMetadata, "updateMetadata");
+ this.updateMetadata = updateMetadata;
return this;
}
public BulkJobItemActions build() {
return new BulkJobItemActions(
- uploadDocument, uploadMetadata);
+ uploadDocument, updateMetadata);
}
}
diff --git a/src/main/java/com/docusign/iam/sdk/models/components/DocStatus.java b/src/main/java/com/docusign/iam/sdk/models/components/DocStatus.java
index 29b8eb0..f383e06 100644
--- a/src/main/java/com/docusign/iam/sdk/models/components/DocStatus.java
+++ b/src/main/java/com/docusign/iam/sdk/models/components/DocStatus.java
@@ -11,13 +11,14 @@
/**
* DocStatus
*
- * Document status. Last 3 are terminal statuses. Matches enum with similar name in the backend.
+ *
Document status. Last 4 are terminal statuses. Matches enum with similar name in the backend.
*/
public enum DocStatus {
NOT_STARTED("NOT_STARTED"),
IN_PROGRESS("IN_PROGRESS"),
CANCELED("CANCELED"),
SUCCEEDED("SUCCEEDED"),
+ SUCCEEDED_WITH_WARNINGS("SUCCEEDED_WITH_WARNINGS"),
FAILED("FAILED");
@JsonValue
diff --git a/src/main/java/com/docusign/iam/sdk/models/components/DocumentWarning.java b/src/main/java/com/docusign/iam/sdk/models/components/DocumentWarning.java
new file mode 100644
index 0000000..7c3c871
--- /dev/null
+++ b/src/main/java/com/docusign/iam/sdk/models/components/DocumentWarning.java
@@ -0,0 +1,319 @@
+/*
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+ */
+package com.docusign.iam.sdk.models.components;
+
+import com.docusign.iam.sdk.utils.Utils;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude.Include;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.lang.Boolean;
+import java.lang.Override;
+import java.lang.String;
+import java.util.Optional;
+
+/**
+ * DocumentWarning
+ *
+ *
A warning encountered during document processing that did not prevent overall success.
+ */
+public class DocumentWarning {
+ /**
+ * Machine-readable warning code
+ */
+ @JsonProperty("code")
+ private String code;
+
+ /**
+ * Human-readable warning summary
+ */
+ @JsonProperty("message")
+ private String message;
+
+ /**
+ * Detailed diagnostic information about the warning
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("detail")
+ private Optional detail;
+
+ /**
+ * Whether this warning can be remediated by the client
+ */
+ @JsonProperty("recoverable")
+ private boolean recoverable;
+
+ /**
+ * Key referencing an action in `_actions` that can resolve this warning
+ */
+ @JsonInclude(Include.NON_ABSENT)
+ @JsonProperty("remedy")
+ private Optional remedy;
+
+ @JsonCreator
+ public DocumentWarning(
+ @JsonProperty("code") String code,
+ @JsonProperty("message") String message,
+ @JsonProperty("detail") Optional detail,
+ @JsonProperty("recoverable") boolean recoverable,
+ @JsonProperty("remedy") Optional remedy) {
+ Utils.checkNotNull(code, "code");
+ Utils.checkNotNull(message, "message");
+ Utils.checkNotNull(detail, "detail");
+ Utils.checkNotNull(recoverable, "recoverable");
+ Utils.checkNotNull(remedy, "remedy");
+ this.code = code;
+ this.message = message;
+ this.detail = detail;
+ this.recoverable = recoverable;
+ this.remedy = remedy;
+ }
+
+ public DocumentWarning(
+ String code,
+ String message,
+ boolean recoverable) {
+ this(code, message, Optional.empty(),
+ recoverable, Optional.empty());
+ }
+
+ /**
+ * Machine-readable warning code
+ */
+ @JsonIgnore
+ public String code() {
+ return code;
+ }
+
+ /**
+ * Human-readable warning summary
+ */
+ @JsonIgnore
+ public String message() {
+ return message;
+ }
+
+ /**
+ * Detailed diagnostic information about the warning
+ */
+ @JsonIgnore
+ public Optional detail() {
+ return detail;
+ }
+
+ /**
+ * Whether this warning can be remediated by the client
+ */
+ @JsonIgnore
+ public boolean recoverable() {
+ return recoverable;
+ }
+
+ /**
+ * Key referencing an action in `_actions` that can resolve this warning
+ */
+ @JsonIgnore
+ public Optional remedy() {
+ return remedy;
+ }
+
+ public static Builder builder() {
+ return new Builder();
+ }
+
+
+ /**
+ * Machine-readable warning code
+ */
+ public DocumentWarning withCode(String code) {
+ Utils.checkNotNull(code, "code");
+ this.code = code;
+ return this;
+ }
+
+ /**
+ * Human-readable warning summary
+ */
+ public DocumentWarning withMessage(String message) {
+ Utils.checkNotNull(message, "message");
+ this.message = message;
+ return this;
+ }
+
+ /**
+ * Detailed diagnostic information about the warning
+ */
+ public DocumentWarning withDetail(String detail) {
+ Utils.checkNotNull(detail, "detail");
+ this.detail = Optional.ofNullable(detail);
+ return this;
+ }
+
+
+ /**
+ * Detailed diagnostic information about the warning
+ */
+ public DocumentWarning withDetail(Optional detail) {
+ Utils.checkNotNull(detail, "detail");
+ this.detail = detail;
+ return this;
+ }
+
+ /**
+ * Whether this warning can be remediated by the client
+ */
+ public DocumentWarning withRecoverable(boolean recoverable) {
+ Utils.checkNotNull(recoverable, "recoverable");
+ this.recoverable = recoverable;
+ return this;
+ }
+
+ /**
+ * Key referencing an action in `_actions` that can resolve this warning
+ */
+ public DocumentWarning withRemedy(String remedy) {
+ Utils.checkNotNull(remedy, "remedy");
+ this.remedy = Optional.ofNullable(remedy);
+ return this;
+ }
+
+
+ /**
+ * Key referencing an action in `_actions` that can resolve this warning
+ */
+ public DocumentWarning withRemedy(Optional remedy) {
+ Utils.checkNotNull(remedy, "remedy");
+ this.remedy = remedy;
+ return this;
+ }
+
+ @Override
+ public boolean equals(java.lang.Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DocumentWarning other = (DocumentWarning) o;
+ return
+ Utils.enhancedDeepEquals(this.code, other.code) &&
+ Utils.enhancedDeepEquals(this.message, other.message) &&
+ Utils.enhancedDeepEquals(this.detail, other.detail) &&
+ Utils.enhancedDeepEquals(this.recoverable, other.recoverable) &&
+ Utils.enhancedDeepEquals(this.remedy, other.remedy);
+ }
+
+ @Override
+ public int hashCode() {
+ return Utils.enhancedHash(
+ code, message, detail,
+ recoverable, remedy);
+ }
+
+ @Override
+ public String toString() {
+ return Utils.toString(DocumentWarning.class,
+ "code", code,
+ "message", message,
+ "detail", detail,
+ "recoverable", recoverable,
+ "remedy", remedy);
+ }
+
+ @SuppressWarnings("UnusedReturnValue")
+ public final static class Builder {
+
+ private String code;
+
+ private String message;
+
+ private Optional detail = Optional.empty();
+
+ private Boolean recoverable;
+
+ private Optional remedy = Optional.empty();
+
+ private Builder() {
+ // force use of static builder() method
+ }
+
+
+ /**
+ * Machine-readable warning code
+ */
+ public Builder code(String code) {
+ Utils.checkNotNull(code, "code");
+ this.code = code;
+ return this;
+ }
+
+
+ /**
+ * Human-readable warning summary
+ */
+ public Builder message(String message) {
+ Utils.checkNotNull(message, "message");
+ this.message = message;
+ return this;
+ }
+
+
+ /**
+ * Detailed diagnostic information about the warning
+ */
+ public Builder detail(String detail) {
+ Utils.checkNotNull(detail, "detail");
+ this.detail = Optional.ofNullable(detail);
+ return this;
+ }
+
+ /**
+ * Detailed diagnostic information about the warning
+ */
+ public Builder detail(Optional detail) {
+ Utils.checkNotNull(detail, "detail");
+ this.detail = detail;
+ return this;
+ }
+
+
+ /**
+ * Whether this warning can be remediated by the client
+ */
+ public Builder recoverable(boolean recoverable) {
+ Utils.checkNotNull(recoverable, "recoverable");
+ this.recoverable = recoverable;
+ return this;
+ }
+
+
+ /**
+ * Key referencing an action in `_actions` that can resolve this warning
+ */
+ public Builder remedy(String remedy) {
+ Utils.checkNotNull(remedy, "remedy");
+ this.remedy = Optional.ofNullable(remedy);
+ return this;
+ }
+
+ /**
+ * Key referencing an action in `_actions` that can resolve this warning
+ */
+ public Builder remedy(Optional remedy) {
+ Utils.checkNotNull(remedy, "remedy");
+ this.remedy = remedy;
+ return this;
+ }
+
+ public DocumentWarning build() {
+
+ return new DocumentWarning(
+ code, message, detail,
+ recoverable, remedy);
+ }
+
+ }
+}
diff --git a/src/main/java/com/docusign/iam/sdk/models/components/Method.java b/src/main/java/com/docusign/iam/sdk/models/components/MethodResponse.java
similarity index 79%
rename from src/main/java/com/docusign/iam/sdk/models/components/Method.java
rename to src/main/java/com/docusign/iam/sdk/models/components/MethodResponse.java
index 327305e..1064129 100644
--- a/src/main/java/com/docusign/iam/sdk/models/components/Method.java
+++ b/src/main/java/com/docusign/iam/sdk/models/components/MethodResponse.java
@@ -9,12 +9,12 @@
import java.util.Optional;
/**
- * Method
+ * MethodResponse
*
* The HTTP method used to trigger the workflow. This defines the type of request
* that will initiate the workflow (e.g., GET, POST).
*/
-public enum Method {
+public enum MethodResponse {
GET("GET"),
POST("POST"),
PUT("PUT"),
@@ -24,7 +24,7 @@ public enum Method {
@JsonValue
private final String value;
- Method(String value) {
+ MethodResponse(String value) {
this.value = value;
}
@@ -32,8 +32,8 @@ public String value() {
return value;
}
- public static Optional fromValue(String value) {
- for (Method o: Method.values()) {
+ public static Optional fromValue(String value) {
+ for (MethodResponse o: MethodResponse.values()) {
if (Objects.deepEquals(o.value, value)) {
return Optional.of(o);
}
diff --git a/src/main/java/com/docusign/iam/sdk/models/components/TriggerHttpConfig.java b/src/main/java/com/docusign/iam/sdk/models/components/TriggerHttpConfig.java
index 7bfd614..b0f22f9 100644
--- a/src/main/java/com/docusign/iam/sdk/models/components/TriggerHttpConfig.java
+++ b/src/main/java/com/docusign/iam/sdk/models/components/TriggerHttpConfig.java
@@ -29,7 +29,7 @@ public class TriggerHttpConfig {
*/
@JsonInclude(Include.NON_ABSENT)
@JsonProperty("method")
- private Optional extends Method> method;
+ private Optional extends MethodResponse> method;
/**
* The URL that is associated with the trigger event. This is the endpoint that must be
@@ -41,7 +41,7 @@ public class TriggerHttpConfig {
@JsonCreator
public TriggerHttpConfig(
- @JsonProperty("method") Optional extends Method> method,
+ @JsonProperty("method") Optional extends MethodResponse> method,
@JsonProperty("url") JsonNullable url) {
Utils.checkNotNull(method, "method");
Utils.checkNotNull(url, "url");
@@ -59,8 +59,8 @@ public TriggerHttpConfig() {
*/
@SuppressWarnings("unchecked")
@JsonIgnore
- public Optional method() {
- return (Optional) method;
+ public Optional method() {
+ return (Optional) method;
}
/**
@@ -81,7 +81,7 @@ public static Builder builder() {
* The HTTP method used to trigger the workflow. This defines the type of request
* that will initiate the workflow (e.g., GET, POST).
*/
- public TriggerHttpConfig withMethod(Method method) {
+ public TriggerHttpConfig withMethod(MethodResponse method) {
Utils.checkNotNull(method, "method");
this.method = Optional.ofNullable(method);
return this;
@@ -92,7 +92,7 @@ public TriggerHttpConfig withMethod(Method method) {
* The HTTP method used to trigger the workflow. This defines the type of request
* that will initiate the workflow (e.g., GET, POST).
*/
- public TriggerHttpConfig withMethod(Optional extends Method> method) {
+ public TriggerHttpConfig withMethod(Optional extends MethodResponse> method) {
Utils.checkNotNull(method, "method");
this.method = method;
return this;
@@ -148,7 +148,7 @@ public String toString() {
@SuppressWarnings("UnusedReturnValue")
public final static class Builder {
- private Optional extends Method> method = Optional.empty();
+ private Optional extends MethodResponse> method = Optional.empty();
private JsonNullable url = JsonNullable.undefined();
@@ -161,7 +161,7 @@ private Builder() {
* The HTTP method used to trigger the workflow. This defines the type of request
* that will initiate the workflow (e.g., GET, POST).
*/
- public Builder method(Method method) {
+ public Builder method(MethodResponse method) {
Utils.checkNotNull(method, "method");
this.method = Optional.ofNullable(method);
return this;
@@ -171,7 +171,7 @@ public Builder method(Method method) {
* The HTTP method used to trigger the workflow. This defines the type of request
* that will initiate the workflow (e.g., GET, POST).
*/
- public Builder method(Optional extends Method> method) {
+ public Builder method(Optional extends MethodResponse> method) {
Utils.checkNotNull(method, "method");
this.method = method;
return this;
diff --git a/src/main/java/com/docusign/iam/sdk/utils/OneOfDeserializer.java b/src/main/java/com/docusign/iam/sdk/utils/OneOfDeserializer.java
index 8056e52..064b1d9 100644
--- a/src/main/java/com/docusign/iam/sdk/utils/OneOfDeserializer.java
+++ b/src/main/java/com/docusign/iam/sdk/utils/OneOfDeserializer.java
@@ -182,6 +182,15 @@ private void countFieldsRecursive(Object obj, JsonNode jsonNode) {
return;
}
+ // Unwrap optional fields
+ if (obj instanceof java.util.Optional) {
+ java.util.Optional> opt = (java.util.Optional>) obj;
+ if (opt.isPresent()) {
+ countFieldsRecursive(opt.get(), jsonNode);
+ }
+ return;
+ }
+
// Handle primitives and strings
if (isPrimitiveOrString(obj)) {
matched++;