001package com.box.sdkgen.schemas.signrequestsignerinputnumberwithcommavalidation; 002 003import com.box.sdkgen.internal.NullableFieldTracker; 004import com.box.sdkgen.internal.SerializableObject; 005import com.box.sdkgen.serialization.json.EnumWrapper; 006import com.fasterxml.jackson.annotation.JsonFilter; 007import com.fasterxml.jackson.annotation.JsonProperty; 008import com.fasterxml.jackson.databind.annotation.JsonDeserialize; 009import com.fasterxml.jackson.databind.annotation.JsonSerialize; 010import java.util.Objects; 011 012/** 013 * Specifies the number with comma formatting rules for a text field input by the signer. If set, 014 * this validation is mandatory. 015 */ 016@JsonFilter("nullablePropertyFilter") 017public class SignRequestSignerInputNumberWithCommaValidation extends SerializableObject { 018 019 /** 020 * Validates that the text input uses a number format with a comma as the decimal separator (for 021 * example, 1,23). 022 */ 023 @JsonDeserialize( 024 using = 025 SignRequestSignerInputNumberWithCommaValidationValidationTypeField 026 .SignRequestSignerInputNumberWithCommaValidationValidationTypeFieldDeserializer.class) 027 @JsonSerialize( 028 using = 029 SignRequestSignerInputNumberWithCommaValidationValidationTypeField 030 .SignRequestSignerInputNumberWithCommaValidationValidationTypeFieldSerializer.class) 031 @JsonProperty("validation_type") 032 protected EnumWrapper<SignRequestSignerInputNumberWithCommaValidationValidationTypeField> 033 validationType; 034 035 public SignRequestSignerInputNumberWithCommaValidation() { 036 super(); 037 } 038 039 protected SignRequestSignerInputNumberWithCommaValidation(Builder builder) { 040 super(); 041 this.validationType = builder.validationType; 042 markNullableFieldsAsSet(builder.getExplicitlySetNullableFields()); 043 } 044 045 public EnumWrapper<SignRequestSignerInputNumberWithCommaValidationValidationTypeField> 046 getValidationType() { 047 return validationType; 048 } 049 050 @Override 051 public boolean equals(Object o) { 052 if (this == o) { 053 return true; 054 } 055 if (o == null || getClass() != o.getClass()) { 056 return false; 057 } 058 SignRequestSignerInputNumberWithCommaValidation casted = 059 (SignRequestSignerInputNumberWithCommaValidation) o; 060 return Objects.equals(validationType, casted.validationType); 061 } 062 063 @Override 064 public int hashCode() { 065 return Objects.hash(validationType); 066 } 067 068 @Override 069 public String toString() { 070 return "SignRequestSignerInputNumberWithCommaValidation{" 071 + "validationType='" 072 + validationType 073 + '\'' 074 + "}"; 075 } 076 077 public static class Builder extends NullableFieldTracker { 078 079 protected EnumWrapper<SignRequestSignerInputNumberWithCommaValidationValidationTypeField> 080 validationType; 081 082 public Builder validationType( 083 SignRequestSignerInputNumberWithCommaValidationValidationTypeField validationType) { 084 this.validationType = 085 new EnumWrapper<SignRequestSignerInputNumberWithCommaValidationValidationTypeField>( 086 validationType); 087 return this; 088 } 089 090 public Builder validationType( 091 EnumWrapper<SignRequestSignerInputNumberWithCommaValidationValidationTypeField> 092 validationType) { 093 this.validationType = validationType; 094 return this; 095 } 096 097 public SignRequestSignerInputNumberWithCommaValidation build() { 098 return new SignRequestSignerInputNumberWithCommaValidation(this); 099 } 100 } 101}