001package com.box.sdkgen.managers.shieldinformationbarriers;
002
003import com.box.sdkgen.internal.SerializableObject;
004import com.box.sdkgen.serialization.json.EnumWrapper;
005import com.fasterxml.jackson.annotation.JsonFilter;
006import com.fasterxml.jackson.annotation.JsonProperty;
007import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
008import com.fasterxml.jackson.databind.annotation.JsonSerialize;
009import java.util.Objects;
010
011@JsonFilter("nullablePropertyFilter")
012public class UpdateShieldInformationBarrierStatusRequestBody extends SerializableObject {
013
014  /** The ID of the shield information barrier. */
015  protected final String id;
016
017  /** The desired status for the shield information barrier. */
018  @JsonDeserialize(
019      using =
020          UpdateShieldInformationBarrierStatusRequestBodyStatusField
021              .UpdateShieldInformationBarrierStatusRequestBodyStatusFieldDeserializer.class)
022  @JsonSerialize(
023      using =
024          UpdateShieldInformationBarrierStatusRequestBodyStatusField
025              .UpdateShieldInformationBarrierStatusRequestBodyStatusFieldSerializer.class)
026  protected final EnumWrapper<UpdateShieldInformationBarrierStatusRequestBodyStatusField> status;
027
028  public UpdateShieldInformationBarrierStatusRequestBody(
029      String id, UpdateShieldInformationBarrierStatusRequestBodyStatusField status) {
030    super();
031    this.id = id;
032    this.status =
033        new EnumWrapper<UpdateShieldInformationBarrierStatusRequestBodyStatusField>(status);
034  }
035
036  public UpdateShieldInformationBarrierStatusRequestBody(
037      @JsonProperty("id") String id,
038      @JsonProperty("status")
039          EnumWrapper<UpdateShieldInformationBarrierStatusRequestBodyStatusField> status) {
040    super();
041    this.id = id;
042    this.status = status;
043  }
044
045  public String getId() {
046    return id;
047  }
048
049  public EnumWrapper<UpdateShieldInformationBarrierStatusRequestBodyStatusField> getStatus() {
050    return status;
051  }
052
053  @Override
054  public boolean equals(Object o) {
055    if (this == o) {
056      return true;
057    }
058    if (o == null || getClass() != o.getClass()) {
059      return false;
060    }
061    UpdateShieldInformationBarrierStatusRequestBody casted =
062        (UpdateShieldInformationBarrierStatusRequestBody) o;
063    return Objects.equals(id, casted.id) && Objects.equals(status, casted.status);
064  }
065
066  @Override
067  public int hashCode() {
068    return Objects.hash(id, status);
069  }
070
071  @Override
072  public String toString() {
073    return "UpdateShieldInformationBarrierStatusRequestBody{"
074        + "id='"
075        + id
076        + '\''
077        + ", "
078        + "status='"
079        + status
080        + '\''
081        + "}";
082  }
083}