custom/autogen-model-cmdlets/New-NmeHostPoolControlUpUpdateModel.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 HostPoolControlUpUpdate.
.Description
Create an in-memory object for HostPoolControlUpUpdate.

.Outputs
NmePowershell.Models.HostPoolControlUpUpdate

#>

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

        [Parameter()]
        [bool]
        $AuthenticationDefault,
        [Parameter()]
        [string]
        $AuthenticationValue,
        [Parameter()]
        [string]
        $DnsZone,
        [Parameter()]
        [string]
        $Folder,
        [Parameter()]
        [bool]
        $IsEnabled,
        [Parameter()]
        [NmePowershell.PSArgumentCompleterAttribute("0", "1", "2", "3", "4", "5", "6")]
        [int[]]
        $MaintenanceWindowDays,
        [Parameter()]
        [int]
        $MaintenanceWindowDurationMinutes,
        [Parameter()]
        [bool]
        $MaintenanceWindowEnabled,
        [Parameter()]
        [int]
        $MaintenanceWindowStartHour,
        [Parameter()]
        [int]
        $MaintenanceWindowStartMinutes,
        [Parameter()]
        [string]
        $MaintenanceWindowTimezoneId,
        [Parameter()]
        [int]
        $MaxJobs,
        [Parameter()]
        [string[]]
        $Monitors,
        [Parameter()]
        [NmePowershell.PSArgumentCompleterAttribute("Disabled", "Default", "Custom")]
        [string]
        $RegistrationType,
        [Parameter()]
        [string]
        $RegistrationValue,
        [Parameter()]
        [string]
        $SecondaryDnsZone,
        [Parameter()]
        [bool]
        $SecondaryEnabled,
        [Parameter()]
        [string]
        $SecondaryFolder,
        [Parameter()]
        [string[]]
        $SecondaryMonitors,
        [Parameter()]
        [string]
        $SecondarySite,
        [Parameter()]
        [string]
        $Site,
        [Parameter()]
        [bool]
        $UnjoinHosts,
        [Parameter()]
        [int]
        $UnjoinHostsDelayInDays,
        [Parameter()]
        [bool]
        $UseDefault,
        [Parameter()]
        [string]
        $Version
    )

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

        if ($PSBoundParameters.ContainsKey('AuthenticationDefault')) {
            $Object.AuthenticationDefault = $AuthenticationDefault
        }
        if ($PSBoundParameters.ContainsKey('AuthenticationValue')) {
            $Object.AuthenticationValue = $AuthenticationValue
        }
        if ($PSBoundParameters.ContainsKey('DnsZone')) {
            $Object.DnsZone = $DnsZone
        }
        if ($PSBoundParameters.ContainsKey('Folder')) {
            $Object.Folder = $Folder
        }
        if ($PSBoundParameters.ContainsKey('IsEnabled')) {
            $Object.IsEnabled = $IsEnabled
        }
        if ($PSBoundParameters.ContainsKey('MaintenanceWindowDays')) {
            $Object.MaintenanceWindowDays = $MaintenanceWindowDays
        }
        if ($PSBoundParameters.ContainsKey('MaintenanceWindowDurationMinutes')) {
            $Object.MaintenanceWindowDurationMinutes = $MaintenanceWindowDurationMinutes
        }
        if ($PSBoundParameters.ContainsKey('MaintenanceWindowEnabled')) {
            $Object.MaintenanceWindowEnabled = $MaintenanceWindowEnabled
        }
        if ($PSBoundParameters.ContainsKey('MaintenanceWindowStartHour')) {
            $Object.MaintenanceWindowStartHour = $MaintenanceWindowStartHour
        }
        if ($PSBoundParameters.ContainsKey('MaintenanceWindowStartMinutes')) {
            $Object.MaintenanceWindowStartMinutes = $MaintenanceWindowStartMinutes
        }
        if ($PSBoundParameters.ContainsKey('MaintenanceWindowTimezoneId')) {
            $Object.MaintenanceWindowTimezoneId = $MaintenanceWindowTimezoneId
        }
        if ($PSBoundParameters.ContainsKey('MaxJobs')) {
            $Object.MaxJobs = $MaxJobs
        }
        if ($PSBoundParameters.ContainsKey('Monitors')) {
            $Object.Monitors = $Monitors
        }
        if ($PSBoundParameters.ContainsKey('RegistrationType')) {
            $Object.RegistrationType = $RegistrationType
        }
        if ($PSBoundParameters.ContainsKey('RegistrationValue')) {
            $Object.RegistrationValue = $RegistrationValue
        }
        if ($PSBoundParameters.ContainsKey('SecondaryDnsZone')) {
            $Object.SecondaryDnsZone = $SecondaryDnsZone
        }
        if ($PSBoundParameters.ContainsKey('SecondaryEnabled')) {
            $Object.SecondaryEnabled = $SecondaryEnabled
        }
        if ($PSBoundParameters.ContainsKey('SecondaryFolder')) {
            $Object.SecondaryFolder = $SecondaryFolder
        }
        if ($PSBoundParameters.ContainsKey('SecondaryMonitors')) {
            $Object.SecondaryMonitors = $SecondaryMonitors
        }
        if ($PSBoundParameters.ContainsKey('SecondarySite')) {
            $Object.SecondarySite = $SecondarySite
        }
        if ($PSBoundParameters.ContainsKey('Site')) {
            $Object.Site = $Site
        }
        if ($PSBoundParameters.ContainsKey('UnjoinHosts')) {
            $Object.UnjoinHosts = $UnjoinHosts
        }
        if ($PSBoundParameters.ContainsKey('UnjoinHostsDelayInDays')) {
            $Object.UnjoinHostsDelayInDays = $UnjoinHostsDelayInDays
        }
        if ($PSBoundParameters.ContainsKey('UseDefault')) {
            $Object.UseDefault = $UseDefault
        }
        if ($PSBoundParameters.ContainsKey('Version')) {
            $Object.Version = $Version
        }
        return $Object
    }
}