Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .codegen.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{ "engineHash": "3d9d391", "specHash": "31c41d5", "version": "10.3.0" }
{ "engineHash": "f97463c", "specHash": "b7abe0d", "version": "10.3.0" }
Original file line number Diff line number Diff line change
@@ -1,6 +1,18 @@
package com.box.sdkgen.schemas.signrequestsignerinput;

import com.box.sdkgen.schemas.signrequestprefilltag.SignRequestPrefillTag;
import com.box.sdkgen.schemas.signrequestsignerinputcustomvalidation.SignRequestSignerInputCustomValidation;
import com.box.sdkgen.schemas.signrequestsignerinputdateasiavalidation.SignRequestSignerInputDateAsiaValidation;
import com.box.sdkgen.schemas.signrequestsignerinputdateeuvalidation.SignRequestSignerInputDateEuValidation;
import com.box.sdkgen.schemas.signrequestsignerinputdateisovalidation.SignRequestSignerInputDateIsoValidation;
import com.box.sdkgen.schemas.signrequestsignerinputdateusvalidation.SignRequestSignerInputDateUsValidation;
import com.box.sdkgen.schemas.signrequestsignerinputemailvalidation.SignRequestSignerInputEmailValidation;
import com.box.sdkgen.schemas.signrequestsignerinputnumberwithcommavalidation.SignRequestSignerInputNumberWithCommaValidation;
import com.box.sdkgen.schemas.signrequestsignerinputnumberwithperiodvalidation.SignRequestSignerInputNumberWithPeriodValidation;
import com.box.sdkgen.schemas.signrequestsignerinputssnvalidation.SignRequestSignerInputSsnValidation;
import com.box.sdkgen.schemas.signrequestsignerinputvalidation.SignRequestSignerInputValidation;
import com.box.sdkgen.schemas.signrequestsignerinputzip4validation.SignRequestSignerInputZip4Validation;
import com.box.sdkgen.schemas.signrequestsignerinputzipvalidation.SignRequestSignerInputZipValidation;
import com.box.sdkgen.serialization.json.EnumWrapper;
import com.fasterxml.jackson.annotation.JsonFilter;
import com.fasterxml.jackson.annotation.JsonProperty;
Expand Down Expand Up @@ -36,10 +48,16 @@ public class SignRequestSignerInput extends SignRequestPrefillTag {
@JsonProperty("page_index")
protected final long pageIndex;

/** Whether this input was defined as read-only(immutable by signers) or not. */
/** Indicates whether this input is read-only (cannot be modified by signers). */
@JsonProperty("read_only")
protected Boolean readOnly;

/**
* Specifies the formatting rules that signers must follow for text field inputs. If set, this
* validation is mandatory.
*/
protected SignRequestSignerInputValidation validation;

public SignRequestSignerInput(@JsonProperty("page_index") long pageIndex) {
super();
this.pageIndex = pageIndex;
Expand All @@ -51,6 +69,7 @@ protected SignRequestSignerInput(Builder builder) {
this.contentType = builder.contentType;
this.pageIndex = builder.pageIndex;
this.readOnly = builder.readOnly;
this.validation = builder.validation;
markNullableFieldsAsSet(builder.getExplicitlySetNullableFields());
}

Expand All @@ -70,6 +89,10 @@ public Boolean getReadOnly() {
return readOnly;
}

public SignRequestSignerInputValidation getValidation() {
return validation;
}

@Override
public boolean equals(Object o) {
if (this == o) {
Expand All @@ -86,13 +109,22 @@ public boolean equals(Object o) {
&& Objects.equals(type, casted.type)
&& Objects.equals(contentType, casted.contentType)
&& Objects.equals(pageIndex, casted.pageIndex)
&& Objects.equals(readOnly, casted.readOnly);
&& Objects.equals(readOnly, casted.readOnly)
&& Objects.equals(validation, casted.validation);
}

@Override
public int hashCode() {
return Objects.hash(
documentTagId, textValue, checkboxValue, dateValue, type, contentType, pageIndex, readOnly);
documentTagId,
textValue,
checkboxValue,
dateValue,
type,
contentType,
pageIndex,
readOnly,
validation);
}

@Override
Expand Down Expand Up @@ -129,6 +161,10 @@ public String toString() {
+ "readOnly='"
+ readOnly
+ '\''
+ ", "
+ "validation='"
+ validation
+ '\''
+ "}";
}

Expand All @@ -142,6 +178,8 @@ public static class Builder extends SignRequestPrefillTag.Builder {

protected Boolean readOnly;

protected SignRequestSignerInputValidation validation;

public Builder(long pageIndex) {
super();
this.pageIndex = pageIndex;
Expand Down Expand Up @@ -172,6 +210,66 @@ public Builder readOnly(Boolean readOnly) {
return this;
}

public Builder validation(SignRequestSignerInputEmailValidation validation) {
this.validation = new SignRequestSignerInputValidation(validation);
return this;
}

public Builder validation(SignRequestSignerInputCustomValidation validation) {
this.validation = new SignRequestSignerInputValidation(validation);
return this;
}

public Builder validation(SignRequestSignerInputZipValidation validation) {
this.validation = new SignRequestSignerInputValidation(validation);
return this;
}

public Builder validation(SignRequestSignerInputZip4Validation validation) {
this.validation = new SignRequestSignerInputValidation(validation);
return this;
}

public Builder validation(SignRequestSignerInputSsnValidation validation) {
this.validation = new SignRequestSignerInputValidation(validation);
return this;
}

public Builder validation(SignRequestSignerInputNumberWithPeriodValidation validation) {
this.validation = new SignRequestSignerInputValidation(validation);
return this;
}

public Builder validation(SignRequestSignerInputNumberWithCommaValidation validation) {
this.validation = new SignRequestSignerInputValidation(validation);
return this;
}

public Builder validation(SignRequestSignerInputDateIsoValidation validation) {
this.validation = new SignRequestSignerInputValidation(validation);
return this;
}

public Builder validation(SignRequestSignerInputDateUsValidation validation) {
this.validation = new SignRequestSignerInputValidation(validation);
return this;
}

public Builder validation(SignRequestSignerInputDateEuValidation validation) {
this.validation = new SignRequestSignerInputValidation(validation);
return this;
}

public Builder validation(SignRequestSignerInputDateAsiaValidation validation) {
this.validation = new SignRequestSignerInputValidation(validation);
return this;
}

public Builder validation(SignRequestSignerInputValidation validation) {
this.validation = validation;
return this;
}

@Override
public Builder documentTagId(String documentTagId) {
this.documentTagId = documentTagId;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
package com.box.sdkgen.schemas.signrequestsignerinputcustomvalidation;

import static com.box.sdkgen.internal.utils.UtilsManager.setOf;

import com.box.sdkgen.internal.Nullable;
import com.box.sdkgen.internal.NullableFieldTracker;
import com.box.sdkgen.internal.SerializableObject;
import com.box.sdkgen.serialization.json.EnumWrapper;
import com.fasterxml.jackson.annotation.JsonFilter;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import java.util.Objects;

/**
* Specifies the custom validation rules for a text field input by the signer. If set, this
* validation is mandatory.
*/
@JsonFilter("nullablePropertyFilter")
public class SignRequestSignerInputCustomValidation extends SerializableObject {

/**
* Defines the validation format for the text input as custom. A custom regular expression is used
* for validation.
*/
@JsonDeserialize(
using =
SignRequestSignerInputCustomValidationValidationTypeField
.SignRequestSignerInputCustomValidationValidationTypeFieldDeserializer.class)
@JsonSerialize(
using =
SignRequestSignerInputCustomValidationValidationTypeField
.SignRequestSignerInputCustomValidationValidationTypeFieldSerializer.class)
@JsonProperty("validation_type")
protected EnumWrapper<SignRequestSignerInputCustomValidationValidationTypeField> validationType;

/** Regular expression used for validation. */
@JsonProperty("custom_regex")
@Nullable
protected final String customRegex;

/** Error message shown if input fails custom regular expression validation. */
@JsonProperty("custom_error_message")
@Nullable
protected final String customErrorMessage;

public SignRequestSignerInputCustomValidation(
@JsonProperty("custom_regex") String customRegex,
@JsonProperty("custom_error_message") String customErrorMessage) {
super();
this.customRegex = customRegex;
this.customErrorMessage = customErrorMessage;
this.validationType =
new EnumWrapper<SignRequestSignerInputCustomValidationValidationTypeField>(
SignRequestSignerInputCustomValidationValidationTypeField.CUSTOM);
markNullableFieldsAsSet(setOf("custom_regex", "custom_error_message"));
}

protected SignRequestSignerInputCustomValidation(Builder builder) {
super();
this.validationType = builder.validationType;
this.customRegex = builder.customRegex;
this.customErrorMessage = builder.customErrorMessage;
markNullableFieldsAsSet(builder.getExplicitlySetNullableFields());
}

public EnumWrapper<SignRequestSignerInputCustomValidationValidationTypeField>
getValidationType() {
return validationType;
}

public String getCustomRegex() {
return customRegex;
}

public String getCustomErrorMessage() {
return customErrorMessage;
}

@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
SignRequestSignerInputCustomValidation casted = (SignRequestSignerInputCustomValidation) o;
return Objects.equals(validationType, casted.validationType)
&& Objects.equals(customRegex, casted.customRegex)
&& Objects.equals(customErrorMessage, casted.customErrorMessage);
}

@Override
public int hashCode() {
return Objects.hash(validationType, customRegex, customErrorMessage);
}

@Override
public String toString() {
return "SignRequestSignerInputCustomValidation{"
+ "validationType='"
+ validationType
+ '\''
+ ", "
+ "customRegex='"
+ customRegex
+ '\''
+ ", "
+ "customErrorMessage='"
+ customErrorMessage
+ '\''
+ "}";
}

public static class Builder extends NullableFieldTracker {

protected EnumWrapper<SignRequestSignerInputCustomValidationValidationTypeField> validationType;

protected final String customRegex;

protected final String customErrorMessage;

public Builder(String customRegex, String customErrorMessage) {
super();
this.customRegex = customRegex;
this.customErrorMessage = customErrorMessage;
this.validationType =
new EnumWrapper<SignRequestSignerInputCustomValidationValidationTypeField>(
SignRequestSignerInputCustomValidationValidationTypeField.CUSTOM);
markNullableFieldsAsSet(setOf("custom_regex", "custom_error_message"));
}

public Builder validationType(
SignRequestSignerInputCustomValidationValidationTypeField validationType) {
this.validationType =
new EnumWrapper<SignRequestSignerInputCustomValidationValidationTypeField>(
validationType);
return this;
}

public Builder validationType(
EnumWrapper<SignRequestSignerInputCustomValidationValidationTypeField> validationType) {
this.validationType = validationType;
return this;
}

public SignRequestSignerInputCustomValidation build() {
return new SignRequestSignerInputCustomValidation(this);
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
package com.box.sdkgen.schemas.signrequestsignerinputcustomvalidation;

import com.box.sdkgen.serialization.json.EnumWrapper;
import com.box.sdkgen.serialization.json.Valuable;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.databind.DeserializationContext;
import com.fasterxml.jackson.databind.JsonDeserializer;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
import java.io.IOException;
import java.util.Arrays;

public enum SignRequestSignerInputCustomValidationValidationTypeField implements Valuable {
CUSTOM("custom");

private final String value;

SignRequestSignerInputCustomValidationValidationTypeField(String value) {
this.value = value;
}

public String getValue() {
return value;
}

public static class SignRequestSignerInputCustomValidationValidationTypeFieldDeserializer
extends JsonDeserializer<
EnumWrapper<SignRequestSignerInputCustomValidationValidationTypeField>> {

public SignRequestSignerInputCustomValidationValidationTypeFieldDeserializer() {
super();
}

@Override
public EnumWrapper<SignRequestSignerInputCustomValidationValidationTypeField> deserialize(
JsonParser p, DeserializationContext ctxt) throws IOException {
String value = p.getValueAsString();
return Arrays.stream(SignRequestSignerInputCustomValidationValidationTypeField.values())
.filter((v) -> v.getValue().equalsIgnoreCase(value))
.findFirst()
.map(EnumWrapper::new)
.orElse(
new EnumWrapper<SignRequestSignerInputCustomValidationValidationTypeField>(value));
}
}

public static class SignRequestSignerInputCustomValidationValidationTypeFieldSerializer
extends JsonSerializer<
EnumWrapper<SignRequestSignerInputCustomValidationValidationTypeField>> {

public SignRequestSignerInputCustomValidationValidationTypeFieldSerializer() {
super();
}

@Override
public void serialize(
EnumWrapper<SignRequestSignerInputCustomValidationValidationTypeField> value,
JsonGenerator gen,
SerializerProvider serializers)
throws IOException {
gen.writeString(value.getStringValue());
}
}
}
Loading
Loading