/*
 * Swagger of Opencellsoft Api
 * @#Introduction
 *
 * The version of the OpenAPI document: 7.3.1-SNAPSHOT
 * Contact: contact@opencellsoft.fr
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */


package org.openapitools.client.model;

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 java.io.IOException;

/**
 * CommunicationRequestDto
 */
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2019-09-13T10:03:17.753Z[GMT]")
public class CommunicationRequestDto {
  public static final String SERIALIZED_NAME_MEVEO_INSTANCE_CODE = "meveoInstanceCode";
  @SerializedName(SERIALIZED_NAME_MEVEO_INSTANCE_CODE)
  private String meveoInstanceCode;

  public static final String SERIALIZED_NAME_MAC_ADDRESS = "macAddress";
  @SerializedName(SERIALIZED_NAME_MAC_ADDRESS)
  private String macAddress;

  public static final String SERIALIZED_NAME_SUBJECT = "subject";
  @SerializedName(SERIALIZED_NAME_SUBJECT)
  private String subject;

  public static final String SERIALIZED_NAME_BODY = "body";
  @SerializedName(SERIALIZED_NAME_BODY)
  private String body;

  public static final String SERIALIZED_NAME_ADDITIONNAL_INFO1 = "additionnalInfo1";
  @SerializedName(SERIALIZED_NAME_ADDITIONNAL_INFO1)
  private String additionnalInfo1;

  public static final String SERIALIZED_NAME_ADDITIONNAL_INFO2 = "additionnalInfo2";
  @SerializedName(SERIALIZED_NAME_ADDITIONNAL_INFO2)
  private String additionnalInfo2;

  public static final String SERIALIZED_NAME_ADDITIONNAL_INFO3 = "additionnalInfo3";
  @SerializedName(SERIALIZED_NAME_ADDITIONNAL_INFO3)
  private String additionnalInfo3;

  public static final String SERIALIZED_NAME_ADDITIONNAL_INFO4 = "additionnalInfo4";
  @SerializedName(SERIALIZED_NAME_ADDITIONNAL_INFO4)
  private String additionnalInfo4;

  public static final String SERIALIZED_NAME_VAILD = "vaild";
  @SerializedName(SERIALIZED_NAME_VAILD)
  private Boolean vaild;


  public CommunicationRequestDto meveoInstanceCode(String meveoInstanceCode) {
    
    this.meveoInstanceCode = meveoInstanceCode;
    return this;
  }

   /**
   * Get meveoInstanceCode
   * @return meveoInstanceCode
  **/
  @ApiModelProperty(required = true, value = "")

  public String getMeveoInstanceCode() {
    return meveoInstanceCode;
  }



  public void setMeveoInstanceCode(String meveoInstanceCode) {
    this.meveoInstanceCode = meveoInstanceCode;
  }


  public CommunicationRequestDto macAddress(String macAddress) {
    
    this.macAddress = macAddress;
    return this;
  }

   /**
   * Get macAddress
   * @return macAddress
  **/
  @ApiModelProperty(required = true, value = "")

  public String getMacAddress() {
    return macAddress;
  }



  public void setMacAddress(String macAddress) {
    this.macAddress = macAddress;
  }


  public CommunicationRequestDto subject(String subject) {
    
    this.subject = subject;
    return this;
  }

   /**
   * Get subject
   * @return subject
  **/
  @ApiModelProperty(required = true, value = "")

  public String getSubject() {
    return subject;
  }



  public void setSubject(String subject) {
    this.subject = subject;
  }


  public CommunicationRequestDto body(String body) {
    
    this.body = body;
    return this;
  }

   /**
   * Get body
   * @return body
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "")

  public String getBody() {
    return body;
  }



  public void setBody(String body) {
    this.body = body;
  }


  public CommunicationRequestDto additionnalInfo1(String additionnalInfo1) {
    
    this.additionnalInfo1 = additionnalInfo1;
    return this;
  }

   /**
   * Get additionnalInfo1
   * @return additionnalInfo1
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "")

  public String getAdditionnalInfo1() {
    return additionnalInfo1;
  }



  public void setAdditionnalInfo1(String additionnalInfo1) {
    this.additionnalInfo1 = additionnalInfo1;
  }


  public CommunicationRequestDto additionnalInfo2(String additionnalInfo2) {
    
    this.additionnalInfo2 = additionnalInfo2;
    return this;
  }

   /**
   * Get additionnalInfo2
   * @return additionnalInfo2
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "")

  public String getAdditionnalInfo2() {
    return additionnalInfo2;
  }



  public void setAdditionnalInfo2(String additionnalInfo2) {
    this.additionnalInfo2 = additionnalInfo2;
  }


  public CommunicationRequestDto additionnalInfo3(String additionnalInfo3) {
    
    this.additionnalInfo3 = additionnalInfo3;
    return this;
  }

   /**
   * Get additionnalInfo3
   * @return additionnalInfo3
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "")

  public String getAdditionnalInfo3() {
    return additionnalInfo3;
  }



  public void setAdditionnalInfo3(String additionnalInfo3) {
    this.additionnalInfo3 = additionnalInfo3;
  }


  public CommunicationRequestDto additionnalInfo4(String additionnalInfo4) {
    
    this.additionnalInfo4 = additionnalInfo4;
    return this;
  }

   /**
   * Get additionnalInfo4
   * @return additionnalInfo4
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "")

  public String getAdditionnalInfo4() {
    return additionnalInfo4;
  }



  public void setAdditionnalInfo4(String additionnalInfo4) {
    this.additionnalInfo4 = additionnalInfo4;
  }


  public CommunicationRequestDto vaild(Boolean vaild) {
    
    this.vaild = vaild;
    return this;
  }

   /**
   * Get vaild
   * @return vaild
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "")

  public Boolean getVaild() {
    return vaild;
  }



  public void setVaild(Boolean vaild) {
    this.vaild = vaild;
  }


  @Override
  public boolean equals(java.lang.Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    CommunicationRequestDto communicationRequestDto = (CommunicationRequestDto) o;
    return Objects.equals(this.meveoInstanceCode, communicationRequestDto.meveoInstanceCode) &&
        Objects.equals(this.macAddress, communicationRequestDto.macAddress) &&
        Objects.equals(this.subject, communicationRequestDto.subject) &&
        Objects.equals(this.body, communicationRequestDto.body) &&
        Objects.equals(this.additionnalInfo1, communicationRequestDto.additionnalInfo1) &&
        Objects.equals(this.additionnalInfo2, communicationRequestDto.additionnalInfo2) &&
        Objects.equals(this.additionnalInfo3, communicationRequestDto.additionnalInfo3) &&
        Objects.equals(this.additionnalInfo4, communicationRequestDto.additionnalInfo4) &&
        Objects.equals(this.vaild, communicationRequestDto.vaild);
  }

  @Override
  public int hashCode() {
    return Objects.hash(meveoInstanceCode, macAddress, subject, body, additionnalInfo1, additionnalInfo2, additionnalInfo3, additionnalInfo4, vaild);
  }


  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class CommunicationRequestDto {\n");
    sb.append("    meveoInstanceCode: ").append(toIndentedString(meveoInstanceCode)).append("\n");
    sb.append("    macAddress: ").append(toIndentedString(macAddress)).append("\n");
    sb.append("    subject: ").append(toIndentedString(subject)).append("\n");
    sb.append("    body: ").append(toIndentedString(body)).append("\n");
    sb.append("    additionnalInfo1: ").append(toIndentedString(additionnalInfo1)).append("\n");
    sb.append("    additionnalInfo2: ").append(toIndentedString(additionnalInfo2)).append("\n");
    sb.append("    additionnalInfo3: ").append(toIndentedString(additionnalInfo3)).append("\n");
    sb.append("    additionnalInfo4: ").append(toIndentedString(additionnalInfo4)).append("\n");
    sb.append("    vaild: ").append(toIndentedString(vaild)).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    ");
  }

}

