001package com.box.sdkgen.schemas.v2025r0.enterpriseconfigurationsecurityv2025r0;
002
003import com.box.sdkgen.internal.Nullable;
004import com.box.sdkgen.internal.NullableFieldTracker;
005import com.box.sdkgen.internal.SerializableObject;
006import com.fasterxml.jackson.annotation.JsonFilter;
007import java.util.Objects;
008
009@JsonFilter("nullablePropertyFilter")
010public class EnterpriseConfigurationSecurityV2025R0EnforcedMfaFrequencyFieldValueField
011    extends SerializableObject {
012
013  /** Number of days before the user is required to authenticate again. */
014  @Nullable protected Long days;
015
016  /** Number of hours before the user is required to authenticate again. */
017  @Nullable protected Long hours;
018
019  public EnterpriseConfigurationSecurityV2025R0EnforcedMfaFrequencyFieldValueField() {
020    super();
021  }
022
023  protected EnterpriseConfigurationSecurityV2025R0EnforcedMfaFrequencyFieldValueField(
024      Builder builder) {
025    super();
026    this.days = builder.days;
027    this.hours = builder.hours;
028    markNullableFieldsAsSet(builder.getExplicitlySetNullableFields());
029  }
030
031  public Long getDays() {
032    return days;
033  }
034
035  public Long getHours() {
036    return hours;
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    EnterpriseConfigurationSecurityV2025R0EnforcedMfaFrequencyFieldValueField casted =
048        (EnterpriseConfigurationSecurityV2025R0EnforcedMfaFrequencyFieldValueField) o;
049    return Objects.equals(days, casted.days) && Objects.equals(hours, casted.hours);
050  }
051
052  @Override
053  public int hashCode() {
054    return Objects.hash(days, hours);
055  }
056
057  @Override
058  public String toString() {
059    return "EnterpriseConfigurationSecurityV2025R0EnforcedMfaFrequencyFieldValueField{"
060        + "days='"
061        + days
062        + '\''
063        + ", "
064        + "hours='"
065        + hours
066        + '\''
067        + "}";
068  }
069
070  public static class Builder extends NullableFieldTracker {
071
072    protected Long days;
073
074    protected Long hours;
075
076    public Builder days(Long days) {
077      this.days = days;
078      this.markNullableFieldAsSet("days");
079      return this;
080    }
081
082    public Builder hours(Long hours) {
083      this.hours = hours;
084      this.markNullableFieldAsSet("hours");
085      return this;
086    }
087
088    public EnterpriseConfigurationSecurityV2025R0EnforcedMfaFrequencyFieldValueField build() {
089      return new EnterpriseConfigurationSecurityV2025R0EnforcedMfaFrequencyFieldValueField(this);
090    }
091  }
092}