// 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;

/** Lists all the discoverable ONVIF devices on the same subnet as the Edge Module. */
@Fluent
public final class OnvifDeviceDiscoverRequest extends MethodRequest {
    /*
     * The amount of time that the ONVIF device discovery will wait for
     * supported device responses.
     */
    @JsonProperty(value = "discoveryDuration")
    private String discoveryDuration;

    /*
     * method name
     */
    @JsonProperty(value = "methodName", required = true, access = JsonProperty.Access.WRITE_ONLY)
    private String methodName;

    /** Creates an instance of OnvifDeviceDiscoverRequest class. */
    public OnvifDeviceDiscoverRequest() {
        methodName = "onvifDeviceDiscover";
    }

    /**
     * Get the discoveryDuration property: The amount of time that the ONVIF device discovery will wait for supported
     * device responses.
     *
     * @return the discoveryDuration value.
     */
    public String getDiscoveryDuration() {
        return this.discoveryDuration;
    }

    /**
     * Set the discoveryDuration property: The amount of time that the ONVIF device discovery will wait for supported
     * device responses.
     *
     * @param discoveryDuration the discoveryDuration value to set.
     * @return the OnvifDeviceDiscoverRequest object itself.
     */
    public OnvifDeviceDiscoverRequest setDiscoveryDuration(String discoveryDuration) {
        this.discoveryDuration = discoveryDuration;
        return this;
    }

    /**
     * Get the methodName property: method name.
     *
     * @return the methodName value.
     */
    public String getMethodName() {
        return this.methodName;
    }
}
