content: /*
   * The Selling Partner API for FBA inbound operations.
   * The Selling Partner API for Fulfillment By Amazon (FBA) Inbound. The FBA Inbound API enables building inbound workflows to create, manage, and send shipments into Amazon's fulfillment network. The API has interoperability with the Send-to-Amazon user interface.
   *
   * OpenAPI spec version: 2024-03-20
   *
   *
   * 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.fbav2024;
  
  import java.util.Objects;
  import java.util.Arrays;
  
  import com.google.gson.TypeAdapter;
  import com.google.gson.annotations.JsonAdapter;
  import com.google.gson.annotations.SerializedName;
  import com.google.gson.stream.JsonReader;
  import com.google.gson.stream.JsonWriter;
  import io.swagger.annotations.ApiModel;
  import io.swagger.annotations.ApiModelProperty;
  import io.swagger.client.model.fbav2024.AppointmentSlot;
  
  import java.io.IOException;
  import java.util.ArrayList;
  import java.util.List;
  
  import org.threeten.bp.OffsetDateTime;
  
  /**
   * The self ship appointment time slots availability and an expiration date for which the slots can be scheduled.
   */
  @ApiModel(description = "The self ship appointment time slots availability and an expiration date for which the slots can be scheduled.")
  @javax.annotation.Generated(value = "io.swagger.codegen.languages.JavaClientCodegen", date = "2024-06-05T21:26:38.822Z")
  public class SelfShipAppointmentSlotsAvailability {
      @SerializedName("expiresAt")
      private OffsetDateTime expiresAt = null;
  
      @SerializedName("slots")
      private List<AppointmentSlot> slots = null;
  
      public SelfShipAppointmentSlotsAvailability expiresAt(OffsetDateTime expiresAt) {
          this.expiresAt = expiresAt;
          return this;
      }
  
      /**
       * The ISO 8601 datetime with pattern &#x60;yyyy-MM-ddTHH:mm:ss.sssZ&#x60;.
       *
       * @return expiresAt
       **/
      @ApiModelProperty(value = "The ISO 8601 datetime with pattern `yyyy-MM-ddTHH:mm:ss.sssZ`.")
      public OffsetDateTime getExpiresAt() {
          return expiresAt;
      }
  
      public void setExpiresAt(OffsetDateTime expiresAt) {
          this.expiresAt = expiresAt;
      }
  
      public SelfShipAppointmentSlotsAvailability slots(List<AppointmentSlot> slots) {
          this.slots = slots;
          return this;
      }
  
      public SelfShipAppointmentSlotsAvailability addSlotsItem(AppointmentSlot slotsItem) {
          if (this.slots == null) {
              this.slots = new ArrayList<AppointmentSlot>();
          }
          this.slots.add(slotsItem);
          return this;
      }
  
      /**
       * List of appointment slots.
       *
       * @return slots
       **/
      @ApiModelProperty(value = "List of appointment slots.")
      public List<AppointmentSlot> getSlots() {
          return slots;
      }
  
      public void setSlots(List<AppointmentSlot> slots) {
          this.slots = slots;
      }
  
  
      @Override
      public boolean equals(java.lang.Object o) {
          if (this == o) {
              return true;
          }
          if (o == null || getClass() != o.getClass()) {
              return false;
          }
          SelfShipAppointmentSlotsAvailability selfShipAppointmentSlotsAvailability = (SelfShipAppointmentSlotsAvailability) o;
          return Objects.equals(this.expiresAt, selfShipAppointmentSlotsAvailability.expiresAt) &&
                  Objects.equals(this.slots, selfShipAppointmentSlotsAvailability.slots);
      }
  
      @Override
      public int hashCode() {
          return Objects.hash(expiresAt, slots);
      }
  
  
      @Override
      public String toString() {
          StringBuilder sb = new StringBuilder();
          sb.append("class SelfShipAppointmentSlotsAvailability {\n");
  
          sb.append("    expiresAt: ").append(toIndentedString(expiresAt)).append("\n");
          sb.append("    slots: ").append(toIndentedString(slots)).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(java.lang.Object o) {
          if (o == null) {
              return "null";
          }
          return o.toString().replace("\n", "\n    ");
      }
  
  }
  
  