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.Currency;
  import java.io.IOException;
  
  /**
   * Contains details about cost related modifications to the placement cost.
   */
  @ApiModel(description = "Contains details about cost related modifications to the placement cost.")
  @javax.annotation.Generated(value = "io.swagger.codegen.languages.JavaClientCodegen", date = "2024-06-05T21:26:38.822Z")
  public class Incentive {
    @SerializedName("description")
    private String description = null;
  
    @SerializedName("target")
    private String target = null;
  
    @SerializedName("type")
    private String type = null;
  
    @SerializedName("value")
    private Currency value = null;
  
    public Incentive description(String description) {
      this.description = description;
      return this;
    }
  
     /**
     * Description of the incentive.
     * @return description
    **/
    @ApiModelProperty(required = true, value = "Description of the incentive.")
    public String getDescription() {
      return description;
    }
  
    public void setDescription(String description) {
      this.description = description;
    }
  
    public Incentive target(String target) {
      this.target = target;
      return this;
    }
  
     /**
     * Target of the incentive. Can be &#39;Placement Services&#39; or &#39;Fulfillment Fee Discount&#39;.
     * @return target
    **/
    @ApiModelProperty(required = true, value = "Target of the incentive. Can be 'Placement Services' or 'Fulfillment Fee Discount'.")
    public String getTarget() {
      return target;
    }
  
    public void setTarget(String target) {
      this.target = target;
    }
  
    public Incentive type(String type) {
      this.type = type;
      return this;
    }
  
     /**
     * Type of incentive. Can be: &#x60;FEE&#x60;, &#x60;DISCOUNT&#x60;.
     * @return type
    **/
    @ApiModelProperty(required = true, value = "Type of incentive. Can be: `FEE`, `DISCOUNT`.")
    public String getType() {
      return type;
    }
  
    public void setType(String type) {
      this.type = type;
    }
  
    public Incentive value(Currency value) {
      this.value = value;
      return this;
    }
  
     /**
     * Get value
     * @return value
    **/
    @ApiModelProperty(required = true, value = "")
    public Currency getValue() {
      return value;
    }
  
    public void setValue(Currency value) {
      this.value = value;
    }
  
  
    @Override
    public boolean equals(java.lang.Object o) {
      if (this == o) {
        return true;
      }
      if (o == null || getClass() != o.getClass()) {
        return false;
      }
      Incentive incentive = (Incentive) o;
      return Objects.equals(this.description, incentive.description) &&
          Objects.equals(this.target, incentive.target) &&
          Objects.equals(this.type, incentive.type) &&
          Objects.equals(this.value, incentive.value);
    }
  
    @Override
    public int hashCode() {
      return Objects.hash(description, target, type, value);
    }
  
  
    @Override
    public String toString() {
      StringBuilder sb = new StringBuilder();
      sb.append("class Incentive {\n");
      
      sb.append("    description: ").append(toIndentedString(description)).append("\n");
      sb.append("    target: ").append(toIndentedString(target)).append("\n");
      sb.append("    type: ").append(toIndentedString(type)).append("\n");
      sb.append("    value: ").append(toIndentedString(value)).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    ");
    }
  
  }
  
  