// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.

package com.azure.media.videoanalyzer.edge.models;

import com.azure.core.annotation.Fluent;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;

/** The ONVIF device DNS properties. */
@Fluent
public final class OnvifDns {
    /*
     * Result value showing if the ONVIF device is configured to use DHCP.
     */
    @JsonProperty(value = "fromDhcp")
    private Boolean fromDhcp;

    /*
     * An array of IPv4 address for the discovered ONVIF device.
     */
    @JsonProperty(value = "ipv4Address")
    private List<String> ipv4Address;

    /*
     * An array of IPv6 address for the discovered ONVIF device.
     */
    @JsonProperty(value = "ipv6Address")
    private List<String> ipv6Address;

    /**
     * Get the fromDhcp property: Result value showing if the ONVIF device is configured to use DHCP.
     *
     * @return the fromDhcp value.
     */
    public Boolean isFromDhcp() {
        return this.fromDhcp;
    }

    /**
     * Set the fromDhcp property: Result value showing if the ONVIF device is configured to use DHCP.
     *
     * @param fromDhcp the fromDhcp value to set.
     * @return the OnvifDns object itself.
     */
    public OnvifDns setFromDhcp(Boolean fromDhcp) {
        this.fromDhcp = fromDhcp;
        return this;
    }

    /**
     * Get the ipv4Address property: An array of IPv4 address for the discovered ONVIF device.
     *
     * @return the ipv4Address value.
     */
    public List<String> getIpv4Address() {
        return this.ipv4Address;
    }

    /**
     * Set the ipv4Address property: An array of IPv4 address for the discovered ONVIF device.
     *
     * @param ipv4Address the ipv4Address value to set.
     * @return the OnvifDns object itself.
     */
    public OnvifDns setIpv4Address(List<String> ipv4Address) {
        this.ipv4Address = ipv4Address;
        return this;
    }

    /**
     * Get the ipv6Address property: An array of IPv6 address for the discovered ONVIF device.
     *
     * @return the ipv6Address value.
     */
    public List<String> getIpv6Address() {
        return this.ipv6Address;
    }

    /**
     * Set the ipv6Address property: An array of IPv6 address for the discovered ONVIF device.
     *
     * @param ipv6Address the ipv6Address value to set.
     * @return the OnvifDns object itself.
     */
    public OnvifDns setIpv6Address(List<String> ipv6Address) {
        this.ipv6Address = ipv6Address;
        return this;
    }
}
