content: /*
   * Selling Partner API for Fulfillment Inbound
   * The Selling Partner API for Fulfillment Inbound lets you create applications that create and update inbound shipments of inventory to Amazon's fulfillment network.
   *
   * OpenAPI spec version: v0
   * 
   *
   * NOTE: This class is auto generated by the swagger code generator program.
   * https://github.com/swagger-api/swagger-codegen.git
   * Do not edit the class manually.
   */
  
  
  package io.swagger.client.model.fbav0;
  
  import java.util.Objects;
  
  import com.google.gson.annotations.SerializedName;
  import io.swagger.annotations.ApiModel;
  import io.swagger.annotations.ApiModelProperty;
  
  /**
   * Result for the get preorder info operation
   */
  @ApiModel(description = "Result for the get preorder info operation")
  @javax.annotation.Generated(value = "io.swagger.codegen.languages.JavaClientCodegen", date = "2024-05-06T15:45:02.096-05:00")
  public class GetPreorderInfoResult {
    @SerializedName("ShipmentContainsPreorderableItems")
    private Boolean shipmentContainsPreorderableItems = null;
  
    @SerializedName("ShipmentConfirmedForPreorder")
    private Boolean shipmentConfirmedForPreorder = null;
  
    @SerializedName("NeedByDate")
    private String needByDate = null;
  
    @SerializedName("ConfirmedFulfillableDate")
    private String confirmedFulfillableDate = null;
  
    public GetPreorderInfoResult shipmentContainsPreorderableItems(Boolean shipmentContainsPreorderableItems) {
      this.shipmentContainsPreorderableItems = shipmentContainsPreorderableItems;
      return this;
    }
  
     /**
     * Indicates whether the shipment contains items that have been enabled for pre-order. For more information about enabling items for pre-order, see the Seller Central Help.
     * @return shipmentContainsPreorderableItems
    **/
    @ApiModelProperty(value = "Indicates whether the shipment contains items that have been enabled for pre-order. For more information about enabling items for pre-order, see the Seller Central Help.")
    public Boolean isShipmentContainsPreorderableItems() {
      return shipmentContainsPreorderableItems;
    }
  
    public void setShipmentContainsPreorderableItems(Boolean shipmentContainsPreorderableItems) {
      this.shipmentContainsPreorderableItems = shipmentContainsPreorderableItems;
    }
  
    public GetPreorderInfoResult shipmentConfirmedForPreorder(Boolean shipmentConfirmedForPreorder) {
      this.shipmentConfirmedForPreorder = shipmentConfirmedForPreorder;
      return this;
    }
  
     /**
     * Indicates whether this shipment has been confirmed for pre-order.
     * @return shipmentConfirmedForPreorder
    **/
    @ApiModelProperty(value = "Indicates whether this shipment has been confirmed for pre-order.")
    public Boolean isShipmentConfirmedForPreorder() {
      return shipmentConfirmedForPreorder;
    }
  
    public void setShipmentConfirmedForPreorder(Boolean shipmentConfirmedForPreorder) {
      this.shipmentConfirmedForPreorder = shipmentConfirmedForPreorder;
    }
  
    public GetPreorderInfoResult needByDate(String needByDate) {
      this.needByDate = needByDate;
      return this;
    }
  
     /**
     * Date that the shipment would need to arrive at an Amazon fulfillment center to avoid delivery promise breaks for pre-ordered items if this shipment is later confirmed for pre-order. In YYYY-MM-DD format. See also the confirmPreorder operation.
     * @return needByDate
    **/
    @ApiModelProperty(value = "Date that the shipment would need to arrive at an Amazon fulfillment center to avoid delivery promise breaks for pre-ordered items if this shipment is later confirmed for pre-order. In YYYY-MM-DD format. See also the confirmPreorder operation.")
    public String getNeedByDate() {
      return needByDate;
    }
  
    public void setNeedByDate(String needByDate) {
      this.needByDate = needByDate;
    }
  
    public GetPreorderInfoResult confirmedFulfillableDate(String confirmedFulfillableDate) {
      this.confirmedFulfillableDate = confirmedFulfillableDate;
      return this;
    }
  
     /**
     * Date in YYYY-MM-DD format that determines which pre-order items in the shipment are eligible for pre-order. If this shipment is confirmed for pre-order with a subsequent call to the confirmPreorder operation, the pre-order Buy Box will appear for any pre-order items in the shipment with a release date on or after this date. Call the getShipmentItems operation to get the release dates for the pre-order items in this shipment.
     * @return confirmedFulfillableDate
    **/
    @ApiModelProperty(value = "Date in YYYY-MM-DD format that determines which pre-order items in the shipment are eligible for pre-order. If this shipment is confirmed for pre-order with a subsequent call to the confirmPreorder operation, the pre-order Buy Box will appear for any pre-order items in the shipment with a release date on or after this date. Call the getShipmentItems operation to get the release dates for the pre-order items in this shipment.")
    public String getConfirmedFulfillableDate() {
      return confirmedFulfillableDate;
    }
  
    public void setConfirmedFulfillableDate(String confirmedFulfillableDate) {
      this.confirmedFulfillableDate = confirmedFulfillableDate;
    }
  
  
    @Override
    public boolean equals(Object o) {
      if (this == o) {
        return true;
      }
      if (o == null || getClass() != o.getClass()) {
        return false;
      }
      GetPreorderInfoResult getPreorderInfoResult = (GetPreorderInfoResult) o;
      return Objects.equals(this.shipmentContainsPreorderableItems, getPreorderInfoResult.shipmentContainsPreorderableItems) &&
          Objects.equals(this.shipmentConfirmedForPreorder, getPreorderInfoResult.shipmentConfirmedForPreorder) &&
          Objects.equals(this.needByDate, getPreorderInfoResult.needByDate) &&
          Objects.equals(this.confirmedFulfillableDate, getPreorderInfoResult.confirmedFulfillableDate);
    }
  
    @Override
    public int hashCode() {
      return Objects.hash(shipmentContainsPreorderableItems, shipmentConfirmedForPreorder, needByDate, confirmedFulfillableDate);
    }
  
  
    @Override
    public String toString() {
      StringBuilder sb = new StringBuilder();
      sb.append("class GetPreorderInfoResult {\n");
      
      sb.append("    shipmentContainsPreorderableItems: ").append(toIndentedString(shipmentContainsPreorderableItems)).append("\n");
      sb.append("    shipmentConfirmedForPreorder: ").append(toIndentedString(shipmentConfirmedForPreorder)).append("\n");
      sb.append("    needByDate: ").append(toIndentedString(needByDate)).append("\n");
      sb.append("    confirmedFulfillableDate: ").append(toIndentedString(confirmedFulfillableDate)).append("\n");
      sb.append("}");
      return sb.toString();
    }
  
    /**
     * Convert the given object to string with each line indented by 4 spaces
     * (except the first line).
     */
    private String toIndentedString(Object o) {
      if (o == null) {
        return "null";
      }
      return o.toString().replace("\n", "\n    ");
    }
  
  }
  
  