001package com.box.sdkgen.managers.classifications; 002 003import com.box.sdkgen.internal.NullableFieldTracker; 004import com.box.sdkgen.internal.SerializableObject; 005import com.fasterxml.jackson.annotation.JsonFilter; 006import com.fasterxml.jackson.annotation.JsonProperty; 007import java.util.Objects; 008 009@JsonFilter("nullablePropertyFilter") 010public class CreateClassificationTemplateRequestBodyFieldsOptionsStaticConfigClassificationField 011 extends SerializableObject { 012 013 /** A longer description of the classification. */ 014 protected String classificationDefinition; 015 016 /** 017 * An identifier used to assign a color to a classification label. 018 * 019 * <p>Mapping between a `colorID` and a color may change without notice. Currently, the color 020 * mappings are as follows. 021 * 022 * <p>* `0`: Yellow. * `1`: Orange. * `2`: Watermelon red. * `3`: Purple rain. * `4`: Light blue. 023 * * `5`: Dark blue. * `6`: Light green. * `7`: Gray. 024 */ 025 @JsonProperty("colorID") 026 protected Long colorId; 027 028 public CreateClassificationTemplateRequestBodyFieldsOptionsStaticConfigClassificationField() { 029 super(); 030 } 031 032 protected CreateClassificationTemplateRequestBodyFieldsOptionsStaticConfigClassificationField( 033 Builder builder) { 034 super(); 035 this.classificationDefinition = builder.classificationDefinition; 036 this.colorId = builder.colorId; 037 markNullableFieldsAsSet(builder.getExplicitlySetNullableFields()); 038 } 039 040 public String getClassificationDefinition() { 041 return classificationDefinition; 042 } 043 044 public Long getColorId() { 045 return colorId; 046 } 047 048 @Override 049 public boolean equals(Object o) { 050 if (this == o) { 051 return true; 052 } 053 if (o == null || getClass() != o.getClass()) { 054 return false; 055 } 056 CreateClassificationTemplateRequestBodyFieldsOptionsStaticConfigClassificationField casted = 057 (CreateClassificationTemplateRequestBodyFieldsOptionsStaticConfigClassificationField) o; 058 return Objects.equals(classificationDefinition, casted.classificationDefinition) 059 && Objects.equals(colorId, casted.colorId); 060 } 061 062 @Override 063 public int hashCode() { 064 return Objects.hash(classificationDefinition, colorId); 065 } 066 067 @Override 068 public String toString() { 069 return "CreateClassificationTemplateRequestBodyFieldsOptionsStaticConfigClassificationField{" 070 + "classificationDefinition='" 071 + classificationDefinition 072 + '\'' 073 + ", " 074 + "colorId='" 075 + colorId 076 + '\'' 077 + "}"; 078 } 079 080 public static class Builder extends NullableFieldTracker { 081 082 protected String classificationDefinition; 083 084 protected Long colorId; 085 086 public Builder classificationDefinition(String classificationDefinition) { 087 this.classificationDefinition = classificationDefinition; 088 return this; 089 } 090 091 public Builder colorId(Long colorId) { 092 this.colorId = colorId; 093 return this; 094 } 095 096 public CreateClassificationTemplateRequestBodyFieldsOptionsStaticConfigClassificationField 097 build() { 098 return new CreateClassificationTemplateRequestBodyFieldsOptionsStaticConfigClassificationField( 099 this); 100 } 101 } 102}