001package com.box.sdkgen.managers.taskassignments;
002
003import com.box.sdkgen.internal.SerializableObject;
004import com.fasterxml.jackson.annotation.JsonFilter;
005import com.fasterxml.jackson.annotation.JsonProperty;
006import java.util.Objects;
007
008@JsonFilter("nullablePropertyFilter")
009public class CreateTaskAssignmentRequestBody extends SerializableObject {
010
011  /** The task to assign to a user. */
012  protected final CreateTaskAssignmentRequestBodyTaskField task;
013
014  /** The user to assign the task to. */
015  @JsonProperty("assign_to")
016  protected final CreateTaskAssignmentRequestBodyAssignToField assignTo;
017
018  public CreateTaskAssignmentRequestBody(
019      @JsonProperty("task") CreateTaskAssignmentRequestBodyTaskField task,
020      @JsonProperty("assign_to") CreateTaskAssignmentRequestBodyAssignToField assignTo) {
021    super();
022    this.task = task;
023    this.assignTo = assignTo;
024  }
025
026  public CreateTaskAssignmentRequestBodyTaskField getTask() {
027    return task;
028  }
029
030  public CreateTaskAssignmentRequestBodyAssignToField getAssignTo() {
031    return assignTo;
032  }
033
034  @Override
035  public boolean equals(Object o) {
036    if (this == o) {
037      return true;
038    }
039    if (o == null || getClass() != o.getClass()) {
040      return false;
041    }
042    CreateTaskAssignmentRequestBody casted = (CreateTaskAssignmentRequestBody) o;
043    return Objects.equals(task, casted.task) && Objects.equals(assignTo, casted.assignTo);
044  }
045
046  @Override
047  public int hashCode() {
048    return Objects.hash(task, assignTo);
049  }
050
051  @Override
052  public String toString() {
053    return "CreateTaskAssignmentRequestBody{"
054        + "task='"
055        + task
056        + '\''
057        + ", "
058        + "assignTo='"
059        + assignTo
060        + '\''
061        + "}";
062  }
063}