001package com.box.sdkgen.schemas.transcriptskillcard;
002
003import com.box.sdkgen.internal.NullableFieldTracker;
004import com.box.sdkgen.internal.SerializableObject;
005import com.fasterxml.jackson.annotation.JsonFilter;
006import java.util.List;
007import java.util.Objects;
008
009@JsonFilter("nullablePropertyFilter")
010public class TranscriptSkillCardEntriesField extends SerializableObject {
011
012  /**
013   * The text of the entry. This would be the transcribed text assigned to the entry on the
014   * timeline.
015   */
016  protected String text;
017
018  /**
019   * Defines when a transcribed bit of text appears. This only includes a start time and no end
020   * time.
021   */
022  protected List<TranscriptSkillCardEntriesAppearsField> appears;
023
024  public TranscriptSkillCardEntriesField() {
025    super();
026  }
027
028  protected TranscriptSkillCardEntriesField(Builder builder) {
029    super();
030    this.text = builder.text;
031    this.appears = builder.appears;
032    markNullableFieldsAsSet(builder.getExplicitlySetNullableFields());
033  }
034
035  public String getText() {
036    return text;
037  }
038
039  public List<TranscriptSkillCardEntriesAppearsField> getAppears() {
040    return appears;
041  }
042
043  @Override
044  public boolean equals(Object o) {
045    if (this == o) {
046      return true;
047    }
048    if (o == null || getClass() != o.getClass()) {
049      return false;
050    }
051    TranscriptSkillCardEntriesField casted = (TranscriptSkillCardEntriesField) o;
052    return Objects.equals(text, casted.text) && Objects.equals(appears, casted.appears);
053  }
054
055  @Override
056  public int hashCode() {
057    return Objects.hash(text, appears);
058  }
059
060  @Override
061  public String toString() {
062    return "TranscriptSkillCardEntriesField{"
063        + "text='"
064        + text
065        + '\''
066        + ", "
067        + "appears='"
068        + appears
069        + '\''
070        + "}";
071  }
072
073  public static class Builder extends NullableFieldTracker {
074
075    protected String text;
076
077    protected List<TranscriptSkillCardEntriesAppearsField> appears;
078
079    public Builder text(String text) {
080      this.text = text;
081      return this;
082    }
083
084    public Builder appears(List<TranscriptSkillCardEntriesAppearsField> appears) {
085      this.appears = appears;
086      return this;
087    }
088
089    public TranscriptSkillCardEntriesField build() {
090      return new TranscriptSkillCardEntriesField(this);
091    }
092  }
093}