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