001package com.box.sdkgen.managers.invites;
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 CreateInviteRequestBody extends SerializableObject {
010
011  /** The enterprise to invite the user to. */
012  protected final CreateInviteRequestBodyEnterpriseField enterprise;
013
014  /** The user to invite. */
015  @JsonProperty("actionable_by")
016  protected final CreateInviteRequestBodyActionableByField actionableBy;
017
018  public CreateInviteRequestBody(
019      @JsonProperty("enterprise") CreateInviteRequestBodyEnterpriseField enterprise,
020      @JsonProperty("actionable_by") CreateInviteRequestBodyActionableByField actionableBy) {
021    super();
022    this.enterprise = enterprise;
023    this.actionableBy = actionableBy;
024  }
025
026  public CreateInviteRequestBodyEnterpriseField getEnterprise() {
027    return enterprise;
028  }
029
030  public CreateInviteRequestBodyActionableByField getActionableBy() {
031    return actionableBy;
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    CreateInviteRequestBody casted = (CreateInviteRequestBody) o;
043    return Objects.equals(enterprise, casted.enterprise)
044        && Objects.equals(actionableBy, casted.actionableBy);
045  }
046
047  @Override
048  public int hashCode() {
049    return Objects.hash(enterprise, actionableBy);
050  }
051
052  @Override
053  public String toString() {
054    return "CreateInviteRequestBody{"
055        + "enterprise='"
056        + enterprise
057        + '\''
058        + ", "
059        + "actionableBy='"
060        + actionableBy
061        + '\''
062        + "}";
063  }
064}