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