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

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

import java.util.Objects;

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

public class OsgLanPortIpv6ConfigVo   {
  @JsonProperty("addr")
  private String addr;

  @JsonProperty("gw")
  private String gw;

  @JsonProperty("priDns")
  private String priDns;

  @JsonProperty("sndDns")
  private String sndDns;

  public OsgLanPortIpv6ConfigVo addr(String addr) {
    this.addr = addr;
    return this;
  }

  /**
   * LAN IPv6 address
   * @return addr
  */
  @ApiModelProperty(value = "LAN IPv6 address")


  public String getAddr() {
    return addr;
  }

  public void setAddr(String addr) {
    this.addr = addr;
  }

  public OsgLanPortIpv6ConfigVo gw(String gw) {
    this.gw = gw;
    return this;
  }

  /**
   * Gateway
   * @return gw
  */
  @ApiModelProperty(value = "Gateway")


  public String getGw() {
    return gw;
  }

  public void setGw(String gw) {
    this.gw = gw;
  }

  public OsgLanPortIpv6ConfigVo priDns(String priDns) {
    this.priDns = priDns;
    return this;
  }

  /**
   * Primary DNS
   * @return priDns
  */
  @ApiModelProperty(value = "Primary DNS")


  public String getPriDns() {
    return priDns;
  }

  public void setPriDns(String priDns) {
    this.priDns = priDns;
  }

  public OsgLanPortIpv6ConfigVo sndDns(String sndDns) {
    this.sndDns = sndDns;
    return this;
  }

  /**
   * Secondary DNS
   * @return sndDns
  */
  @ApiModelProperty(value = "Secondary DNS")


  public String getSndDns() {
    return sndDns;
  }

  public void setSndDns(String sndDns) {
    this.sndDns = sndDns;
  }


  @Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    OsgLanPortIpv6ConfigVo osgLanPortIpv6ConfigVo = (OsgLanPortIpv6ConfigVo) o;
    return Objects.equals(this.addr, osgLanPortIpv6ConfigVo.addr) &&
        Objects.equals(this.gw, osgLanPortIpv6ConfigVo.gw) &&
        Objects.equals(this.priDns, osgLanPortIpv6ConfigVo.priDns) &&
        Objects.equals(this.sndDns, osgLanPortIpv6ConfigVo.sndDns);
  }

  @Override
  public int hashCode() {
    return Objects.hash(addr, gw, priDns, sndDns);
  }

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

