package org.wfc.omada.api.monitor.model;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.Valid;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;

/**
 * ApInterferences
 */
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-12-04T11:38:12.484+08:00[Asia/Shanghai]")

public class ApInterferences   {
  @JsonProperty("apInterference2g")
  @Valid
  private List<ApInterference> apInterference2g = null;

  @JsonProperty("apInterference5g")
  @Valid
  private List<ApInterference> apInterference5g = null;

  @JsonProperty("apInterference5g2")
  @Valid
  private List<ApInterference> apInterference5g2 = null;

  @JsonProperty("apInterference6g")
  @Valid
  private List<ApInterference> apInterference6g = null;

  public ApInterferences apInterference2g(List<ApInterference> apInterference2g) {
    this.apInterference2g = apInterference2g;
    return this;
  }

  public ApInterferences addApInterference2gItem(ApInterference apInterference2gItem) {
    if (this.apInterference2g == null) {
      this.apInterference2g = new ArrayList<>();
    }
    this.apInterference2g.add(apInterference2gItem);
    return this;
  }

  /**
   * 2GHz device interference intensity information
   * @return apInterference2g
  */
  @ApiModelProperty(value = "2GHz device interference intensity information")

  @Valid

  public List<ApInterference> getApInterference2g() {
    return apInterference2g;
  }

  public void setApInterference2g(List<ApInterference> apInterference2g) {
    this.apInterference2g = apInterference2g;
  }

  public ApInterferences apInterference5g(List<ApInterference> apInterference5g) {
    this.apInterference5g = apInterference5g;
    return this;
  }

  public ApInterferences addApInterference5gItem(ApInterference apInterference5gItem) {
    if (this.apInterference5g == null) {
      this.apInterference5g = new ArrayList<>();
    }
    this.apInterference5g.add(apInterference5gItem);
    return this;
  }

  /**
   * 5GHz device interference intensity information
   * @return apInterference5g
  */
  @ApiModelProperty(value = "5GHz device interference intensity information")

  @Valid

  public List<ApInterference> getApInterference5g() {
    return apInterference5g;
  }

  public void setApInterference5g(List<ApInterference> apInterference5g) {
    this.apInterference5g = apInterference5g;
  }

  public ApInterferences apInterference5g2(List<ApInterference> apInterference5g2) {
    this.apInterference5g2 = apInterference5g2;
    return this;
  }

  public ApInterferences addApInterference5g2Item(ApInterference apInterference5g2Item) {
    if (this.apInterference5g2 == null) {
      this.apInterference5g2 = new ArrayList<>();
    }
    this.apInterference5g2.add(apInterference5g2Item);
    return this;
  }

  /**
   * 5GHz-2 device interference intensity information
   * @return apInterference5g2
  */
  @ApiModelProperty(value = "5GHz-2 device interference intensity information")

  @Valid

  public List<ApInterference> getApInterference5g2() {
    return apInterference5g2;
  }

  public void setApInterference5g2(List<ApInterference> apInterference5g2) {
    this.apInterference5g2 = apInterference5g2;
  }

  public ApInterferences apInterference6g(List<ApInterference> apInterference6g) {
    this.apInterference6g = apInterference6g;
    return this;
  }

  public ApInterferences addApInterference6gItem(ApInterference apInterference6gItem) {
    if (this.apInterference6g == null) {
      this.apInterference6g = new ArrayList<>();
    }
    this.apInterference6g.add(apInterference6gItem);
    return this;
  }

  /**
   * 6GHz device interference intensity information
   * @return apInterference6g
  */
  @ApiModelProperty(value = "6GHz device interference intensity information")

  @Valid

  public List<ApInterference> getApInterference6g() {
    return apInterference6g;
  }

  public void setApInterference6g(List<ApInterference> apInterference6g) {
    this.apInterference6g = apInterference6g;
  }


  @Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    ApInterferences apInterferences = (ApInterferences) o;
    return Objects.equals(this.apInterference2g, apInterferences.apInterference2g) &&
        Objects.equals(this.apInterference5g, apInterferences.apInterference5g) &&
        Objects.equals(this.apInterference5g2, apInterferences.apInterference5g2) &&
        Objects.equals(this.apInterference6g, apInterferences.apInterference6g);
  }

  @Override
  public int hashCode() {
    return Objects.hash(apInterference2g, apInterference5g, apInterference5g2, apInterference6g);
  }

  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class ApInterferences {\n");
    
    sb.append("    apInterference2g: ").append(toIndentedString(apInterference2g)).append("\n");
    sb.append("    apInterference5g: ").append(toIndentedString(apInterference5g)).append("\n");
    sb.append("    apInterference5g2: ").append(toIndentedString(apInterference5g2)).append("\n");
    sb.append("    apInterference6g: ").append(toIndentedString(apInterference6g)).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    ");
  }
}

