001package com.box.sdkgen.managers.legalholdpolicyassignments;
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 CreateLegalHoldPolicyAssignmentRequestBody extends SerializableObject {
010
011  /** The ID of the policy to assign. */
012  @JsonProperty("policy_id")
013  protected final String policyId;
014
015  /** The item to assign the policy to. */
016  @JsonProperty("assign_to")
017  protected final CreateLegalHoldPolicyAssignmentRequestBodyAssignToField assignTo;
018
019  public CreateLegalHoldPolicyAssignmentRequestBody(
020      @JsonProperty("policy_id") String policyId,
021      @JsonProperty("assign_to") CreateLegalHoldPolicyAssignmentRequestBodyAssignToField assignTo) {
022    super();
023    this.policyId = policyId;
024    this.assignTo = assignTo;
025  }
026
027  public String getPolicyId() {
028    return policyId;
029  }
030
031  public CreateLegalHoldPolicyAssignmentRequestBodyAssignToField getAssignTo() {
032    return assignTo;
033  }
034
035  @Override
036  public boolean equals(Object o) {
037    if (this == o) {
038      return true;
039    }
040    if (o == null || getClass() != o.getClass()) {
041      return false;
042    }
043    CreateLegalHoldPolicyAssignmentRequestBody casted =
044        (CreateLegalHoldPolicyAssignmentRequestBody) o;
045    return Objects.equals(policyId, casted.policyId) && Objects.equals(assignTo, casted.assignTo);
046  }
047
048  @Override
049  public int hashCode() {
050    return Objects.hash(policyId, assignTo);
051  }
052
053  @Override
054  public String toString() {
055    return "CreateLegalHoldPolicyAssignmentRequestBody{"
056        + "policyId='"
057        + policyId
058        + '\''
059        + ", "
060        + "assignTo='"
061        + assignTo
062        + '\''
063        + "}";
064  }
065}