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