package org.wfc.omada.api.device.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;

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

public class RfScanCommand   {
  @JsonProperty("radioIdList")
  @Valid
  private List<Integer> radioIdList = null;

  public RfScanCommand radioIdList(List<Integer> radioIdList) {
    this.radioIdList = radioIdList;
    return this;
  }

  public RfScanCommand addRadioIdListItem(Integer radioIdListItem) {
    if (this.radioIdList == null) {
      this.radioIdList = new ArrayList<>();
    }
    this.radioIdList.add(radioIdListItem);
    return this;
  }

  /**
   * Parameter [radioIdList] indicates the set of frequency bands for radio frequency scan. The value range of each element in the list should be between 0 and 3. 0: 2.4GHz, 1: 5GHz, 2: 5GHz-2, 3: 6GHz. This parameter takes effect only when the device supports selecting bands for radio frequency scan; If the device does not support selecting bands, or if this parameter is not passed or is an empty list, the device will perform radio frequency scan for all its frequency bands.
   * @return radioIdList
  */
  @ApiModelProperty(value = "Parameter [radioIdList] indicates the set of frequency bands for radio frequency scan. The value range of each element in the list should be between 0 and 3. 0: 2.4GHz, 1: 5GHz, 2: 5GHz-2, 3: 6GHz. This parameter takes effect only when the device supports selecting bands for radio frequency scan; If the device does not support selecting bands, or if this parameter is not passed or is an empty list, the device will perform radio frequency scan for all its frequency bands.")


  public List<Integer> getRadioIdList() {
    return radioIdList;
  }

  public void setRadioIdList(List<Integer> radioIdList) {
    this.radioIdList = radioIdList;
  }


  @Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    RfScanCommand rfScanCommand = (RfScanCommand) o;
    return Objects.equals(this.radioIdList, rfScanCommand.radioIdList);
  }

  @Override
  public int hashCode() {
    return Objects.hash(radioIdList);
  }

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

