001package com.box.sdkgen.managers.skills;
002
003import com.box.sdkgen.internal.NullableFieldTracker;
004import com.box.sdkgen.internal.SerializableObject;
005import com.box.sdkgen.schemas.skillcard.SkillCard;
006import com.fasterxml.jackson.annotation.JsonFilter;
007import java.util.List;
008import java.util.Objects;
009
010@JsonFilter("nullablePropertyFilter")
011public class UpdateAllSkillCardsOnFileRequestBodyMetadataField extends SerializableObject {
012
013  /** A list of Box Skill cards to apply to this file. */
014  protected List<SkillCard> cards;
015
016  public UpdateAllSkillCardsOnFileRequestBodyMetadataField() {
017    super();
018  }
019
020  protected UpdateAllSkillCardsOnFileRequestBodyMetadataField(Builder builder) {
021    super();
022    this.cards = builder.cards;
023    markNullableFieldsAsSet(builder.getExplicitlySetNullableFields());
024  }
025
026  public List<SkillCard> getCards() {
027    return cards;
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    UpdateAllSkillCardsOnFileRequestBodyMetadataField casted =
039        (UpdateAllSkillCardsOnFileRequestBodyMetadataField) o;
040    return Objects.equals(cards, casted.cards);
041  }
042
043  @Override
044  public int hashCode() {
045    return Objects.hash(cards);
046  }
047
048  @Override
049  public String toString() {
050    return "UpdateAllSkillCardsOnFileRequestBodyMetadataField{" + "cards='" + cards + '\'' + "}";
051  }
052
053  public static class Builder extends NullableFieldTracker {
054
055    protected List<SkillCard> cards;
056
057    public Builder cards(List<SkillCard> cards) {
058      this.cards = cards;
059      return this;
060    }
061
062    public UpdateAllSkillCardsOnFileRequestBodyMetadataField build() {
063      return new UpdateAllSkillCardsOnFileRequestBodyMetadataField(this);
064    }
065  }
066}