custom/autogen-model-cmdlets/New-NmeAvdAgentUpdateModel.ps1


# ----------------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.10.8, generator: @autorest/powershell@4.0.752)
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# ----------------------------------------------------------------------------------

<#
.Synopsis
Create an in-memory object for AvdAgentUpdate.
.Description
Create an in-memory object for AvdAgentUpdate.

.Outputs
NmePowershell.Models.AvdAgentUpdate

#>

function New-NmeAvdAgentUpdateModel {
    [NmePowershell.ModelCmdletAttribute()]
    [OutputType('NmePowershell.Models.AvdAgentUpdate')]
    [CmdletBinding(PositionalBinding=$false)]
    Param(

        [Parameter(Mandatory)]
        [bool]
        $ExcludeDrainModeHosts,
        [Parameter()]
        [string]
        $MaintenanceWindowTimeZone,
        [Parameter(Mandatory)]
        [bool]
        $PowerOnHostsInMaintenanceWindow,
        [Parameter()]
        [NmePowershell.PSArgumentCompleterAttribute("0", "1", "2", "3", "4", "5", "6")]
        [int]
        $PrimaryWindowDayOfWeek,
        [Parameter()]
        [int]
        $PrimaryWindowHour,
        [Parameter()]
        [NmePowershell.PSArgumentCompleterAttribute("0", "1", "2", "3", "4", "5", "6")]
        [int]
        $SecondaryWindowDayOfWeek,
        [Parameter()]
        [int]
        $SecondaryWindowHour,
        [Parameter(Mandatory)]
        [NmePowershell.PSArgumentCompleterAttribute("Default", "Scheduled")]
        [string]
        $Type,
        [Parameter(Mandatory)]
        [bool]
        $UseSessionHostLocalTime
    )

    process {
        $Object = [NmePowershell.Models.AvdAgentUpdate]::New()

        if ($PSBoundParameters.ContainsKey('ExcludeDrainModeHosts')) {
            $Object.ExcludeDrainModeHosts = $ExcludeDrainModeHosts
        }
        if ($PSBoundParameters.ContainsKey('MaintenanceWindowTimeZone')) {
            $Object.MaintenanceWindowTimeZone = $MaintenanceWindowTimeZone
        }
        if ($PSBoundParameters.ContainsKey('PowerOnHostsInMaintenanceWindow')) {
            $Object.PowerOnHostsInMaintenanceWindow = $PowerOnHostsInMaintenanceWindow
        }
        if ($PSBoundParameters.ContainsKey('PrimaryWindowDayOfWeek')) {
            $Object.PrimaryWindowDayOfWeek = $PrimaryWindowDayOfWeek
        }
        if ($PSBoundParameters.ContainsKey('PrimaryWindowHour')) {
            $Object.PrimaryWindowHour = $PrimaryWindowHour
        }
        if ($PSBoundParameters.ContainsKey('SecondaryWindowDayOfWeek')) {
            $Object.SecondaryWindowDayOfWeek = $SecondaryWindowDayOfWeek
        }
        if ($PSBoundParameters.ContainsKey('SecondaryWindowHour')) {
            $Object.SecondaryWindowHour = $SecondaryWindowHour
        }
        if ($PSBoundParameters.ContainsKey('Type')) {
            $Object.Type = $Type
        }
        if ($PSBoundParameters.ContainsKey('UseSessionHostLocalTime')) {
            $Object.UseSessionHostLocalTime = $UseSessionHostLocalTime
        }
        return $Object
    }
}