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