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.Objects;
007
008@JsonFilter("nullablePropertyFilter")
009public class TranscriptSkillCardEntriesAppearsField extends SerializableObject {
010
011  /** The time in seconds when an entry should start appearing on a timeline. */
012  protected Long start;
013
014  public TranscriptSkillCardEntriesAppearsField() {
015    super();
016  }
017
018  protected TranscriptSkillCardEntriesAppearsField(Builder builder) {
019    super();
020    this.start = builder.start;
021    markNullableFieldsAsSet(builder.getExplicitlySetNullableFields());
022  }
023
024  public Long getStart() {
025    return start;
026  }
027
028  @Override
029  public boolean equals(Object o) {
030    if (this == o) {
031      return true;
032    }
033    if (o == null || getClass() != o.getClass()) {
034      return false;
035    }
036    TranscriptSkillCardEntriesAppearsField casted = (TranscriptSkillCardEntriesAppearsField) o;
037    return Objects.equals(start, casted.start);
038  }
039
040  @Override
041  public int hashCode() {
042    return Objects.hash(start);
043  }
044
045  @Override
046  public String toString() {
047    return "TranscriptSkillCardEntriesAppearsField{" + "start='" + start + '\'' + "}";
048  }
049
050  public static class Builder extends NullableFieldTracker {
051
052    protected Long start;
053
054    public Builder start(Long start) {
055      this.start = start;
056      return this;
057    }
058
059    public TranscriptSkillCardEntriesAppearsField build() {
060      return new TranscriptSkillCardEntriesAppearsField(this);
061    }
062  }
063}