001package com.box.sdkgen.schemas.useravatar;
002
003import com.box.sdkgen.internal.NullableFieldTracker;
004import com.box.sdkgen.internal.SerializableObject;
005import com.fasterxml.jackson.annotation.JsonFilter;
006import java.util.Objects;
007
008@JsonFilter("nullablePropertyFilter")
009public class UserAvatarPicUrlsField extends SerializableObject {
010
011  /** The location of a small-sized avatar. */
012  protected String small;
013
014  /** The location of a large-sized avatar. */
015  protected String large;
016
017  /** The location of the avatar preview. */
018  protected String preview;
019
020  public UserAvatarPicUrlsField() {
021    super();
022  }
023
024  protected UserAvatarPicUrlsField(Builder builder) {
025    super();
026    this.small = builder.small;
027    this.large = builder.large;
028    this.preview = builder.preview;
029    markNullableFieldsAsSet(builder.getExplicitlySetNullableFields());
030  }
031
032  public String getSmall() {
033    return small;
034  }
035
036  public String getLarge() {
037    return large;
038  }
039
040  public String getPreview() {
041    return preview;
042  }
043
044  @Override
045  public boolean equals(Object o) {
046    if (this == o) {
047      return true;
048    }
049    if (o == null || getClass() != o.getClass()) {
050      return false;
051    }
052    UserAvatarPicUrlsField casted = (UserAvatarPicUrlsField) o;
053    return Objects.equals(small, casted.small)
054        && Objects.equals(large, casted.large)
055        && Objects.equals(preview, casted.preview);
056  }
057
058  @Override
059  public int hashCode() {
060    return Objects.hash(small, large, preview);
061  }
062
063  @Override
064  public String toString() {
065    return "UserAvatarPicUrlsField{"
066        + "small='"
067        + small
068        + '\''
069        + ", "
070        + "large='"
071        + large
072        + '\''
073        + ", "
074        + "preview='"
075        + preview
076        + '\''
077        + "}";
078  }
079
080  public static class Builder extends NullableFieldTracker {
081
082    protected String small;
083
084    protected String large;
085
086    protected String preview;
087
088    public Builder small(String small) {
089      this.small = small;
090      return this;
091    }
092
093    public Builder large(String large) {
094      this.large = large;
095      return this;
096    }
097
098    public Builder preview(String preview) {
099      this.preview = preview;
100      return this;
101    }
102
103    public UserAvatarPicUrlsField build() {
104      return new UserAvatarPicUrlsField(this);
105    }
106  }
107}