001package com.box.sdkgen.schemas.v2025r0.enterpriseconfigurationcontentandsharingv2025r0;
002
003import com.box.sdkgen.schemas.v2025r0.enterpriseconfigurationitemv2025r0.EnterpriseConfigurationItemV2025R0;
004import com.box.sdkgen.schemas.v2025r0.listuserv2025r0.ListUserV2025R0;
005import com.fasterxml.jackson.annotation.JsonFilter;
006import java.util.List;
007import java.util.Objects;
008
009@JsonFilter("nullablePropertyFilter")
010public class EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationAllowlistUsersField
011    extends EnterpriseConfigurationItemV2025R0 {
012
013  protected List<ListUserV2025R0> value;
014
015  public EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationAllowlistUsersField() {
016    super();
017  }
018
019  protected EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationAllowlistUsersField(
020      Builder builder) {
021    super(builder);
022    this.value = builder.value;
023    markNullableFieldsAsSet(builder.getExplicitlySetNullableFields());
024  }
025
026  public List<ListUserV2025R0> 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    EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationAllowlistUsersField casted =
039        (EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationAllowlistUsersField) 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 "EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationAllowlistUsersField{"
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<ListUserV2025R0> value;
064
065    public Builder value(List<ListUserV2025R0> 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 EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationAllowlistUsersField
077        build() {
078      return new EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationAllowlistUsersField(
079          this);
080    }
081  }
082}