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 CreateClassificationTemplateRequestBodyFieldsOptionsField extends SerializableObject { 011 012 /** The display name and key this classification. This will be show in the Box UI. */ 013 protected final String key; 014 015 /** Additional information about the classification. */ 016 protected CreateClassificationTemplateRequestBodyFieldsOptionsStaticConfigField staticConfig; 017 018 public CreateClassificationTemplateRequestBodyFieldsOptionsField( 019 @JsonProperty("key") String key) { 020 super(); 021 this.key = key; 022 } 023 024 protected CreateClassificationTemplateRequestBodyFieldsOptionsField(Builder builder) { 025 super(); 026 this.key = builder.key; 027 this.staticConfig = builder.staticConfig; 028 markNullableFieldsAsSet(builder.getExplicitlySetNullableFields()); 029 } 030 031 public String getKey() { 032 return key; 033 } 034 035 public CreateClassificationTemplateRequestBodyFieldsOptionsStaticConfigField getStaticConfig() { 036 return staticConfig; 037 } 038 039 @Override 040 public boolean equals(Object o) { 041 if (this == o) { 042 return true; 043 } 044 if (o == null || getClass() != o.getClass()) { 045 return false; 046 } 047 CreateClassificationTemplateRequestBodyFieldsOptionsField casted = 048 (CreateClassificationTemplateRequestBodyFieldsOptionsField) o; 049 return Objects.equals(key, casted.key) && Objects.equals(staticConfig, casted.staticConfig); 050 } 051 052 @Override 053 public int hashCode() { 054 return Objects.hash(key, staticConfig); 055 } 056 057 @Override 058 public String toString() { 059 return "CreateClassificationTemplateRequestBodyFieldsOptionsField{" 060 + "key='" 061 + key 062 + '\'' 063 + ", " 064 + "staticConfig='" 065 + staticConfig 066 + '\'' 067 + "}"; 068 } 069 070 public static class Builder extends NullableFieldTracker { 071 072 protected final String key; 073 074 protected CreateClassificationTemplateRequestBodyFieldsOptionsStaticConfigField staticConfig; 075 076 public Builder(String key) { 077 super(); 078 this.key = key; 079 } 080 081 public Builder staticConfig( 082 CreateClassificationTemplateRequestBodyFieldsOptionsStaticConfigField staticConfig) { 083 this.staticConfig = staticConfig; 084 return this; 085 } 086 087 public CreateClassificationTemplateRequestBodyFieldsOptionsField build() { 088 return new CreateClassificationTemplateRequestBodyFieldsOptionsField(this); 089 } 090 } 091}