001package com.box.sdkgen.schemas.v2025r0.enterpriseconfigurationsecurityv2025r0;
002
003import com.box.sdkgen.schemas.v2025r0.enterpriseconfigurationitemv2025r0.EnterpriseConfigurationItemV2025R0;
004import com.box.sdkgen.schemas.v2025r0.keysafesettingsv2025r0.KeysafeSettingsV2025R0;
005import com.fasterxml.jackson.annotation.JsonFilter;
006import java.util.Objects;
007
008@JsonFilter("nullablePropertyFilter")
009public class EnterpriseConfigurationSecurityV2025R0KeysafeField
010    extends EnterpriseConfigurationItemV2025R0 {
011
012  protected KeysafeSettingsV2025R0 value;
013
014  public EnterpriseConfigurationSecurityV2025R0KeysafeField() {
015    super();
016  }
017
018  protected EnterpriseConfigurationSecurityV2025R0KeysafeField(Builder builder) {
019    super(builder);
020    this.value = builder.value;
021    markNullableFieldsAsSet(builder.getExplicitlySetNullableFields());
022  }
023
024  public KeysafeSettingsV2025R0 getValue() {
025    return value;
026  }
027
028  @Override
029  public boolean equals(Object o) {
030    if (this == o) {
031      return true;
032    }
033    if (o == null || getClass() != o.getClass()) {
034      return false;
035    }
036    EnterpriseConfigurationSecurityV2025R0KeysafeField casted =
037        (EnterpriseConfigurationSecurityV2025R0KeysafeField) o;
038    return Objects.equals(isUsed, casted.isUsed) && Objects.equals(value, casted.value);
039  }
040
041  @Override
042  public int hashCode() {
043    return Objects.hash(isUsed, value);
044  }
045
046  @Override
047  public String toString() {
048    return "EnterpriseConfigurationSecurityV2025R0KeysafeField{"
049        + "isUsed='"
050        + isUsed
051        + '\''
052        + ", "
053        + "value='"
054        + value
055        + '\''
056        + "}";
057  }
058
059  public static class Builder extends EnterpriseConfigurationItemV2025R0.Builder {
060
061    protected KeysafeSettingsV2025R0 value;
062
063    public Builder value(KeysafeSettingsV2025R0 value) {
064      this.value = value;
065      return this;
066    }
067
068    @Override
069    public Builder isUsed(Boolean isUsed) {
070      this.isUsed = isUsed;
071      return this;
072    }
073
074    public EnterpriseConfigurationSecurityV2025R0KeysafeField build() {
075      return new EnterpriseConfigurationSecurityV2025R0KeysafeField(this);
076    }
077  }
078}