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

.Outputs
NmePowershell.Models.HostPoolScriptedActions

#>

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

        [Parameter()]
        [int]
        $OnCreateActiveDirectoryId,
        [Parameter(Mandatory)]
        [bool]
        $OnCreateEnabled,
        [Parameter(Mandatory)]
        [NmePowershell.Models.IScriptedActionOption[]]
        $OnCreateScriptedActions,
        [Parameter()]
        [int]
        $OnHostCreateActiveDirectoryId,
        [Parameter(Mandatory)]
        [bool]
        $OnHostCreateEnabled,
        [Parameter(Mandatory)]
        [NmePowershell.Models.IScriptedActionOption[]]
        $OnHostCreateScriptedActions,
        [Parameter()]
        [int]
        $OnRemoveActiveDirectoryId,
        [Parameter(Mandatory)]
        [bool]
        $OnRemoveEnabled,
        [Parameter(Mandatory)]
        [NmePowershell.Models.IScriptedActionOption[]]
        $OnRemoveScriptedActions,
        [Parameter()]
        [int]
        $OnStartActiveDirectoryId,
        [Parameter(Mandatory)]
        [bool]
        $OnStartEnabled,
        [Parameter(Mandatory)]
        [NmePowershell.Models.IScriptedActionOption[]]
        $OnStartScriptedActions,
        [Parameter()]
        [int]
        $OnStopActiveDirectoryId,
        [Parameter(Mandatory)]
        [bool]
        $OnStopEnabled,
        [Parameter(Mandatory)]
        [NmePowershell.Models.IScriptedActionOption[]]
        $OnStopScriptedActions
    )

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

        if ($PSBoundParameters.ContainsKey('OnCreateActiveDirectoryId')) {
            $Object.OnCreateActiveDirectoryId = $OnCreateActiveDirectoryId
        }
        if ($PSBoundParameters.ContainsKey('OnCreateEnabled')) {
            $Object.OnCreateEnabled = $OnCreateEnabled
        }
        if ($PSBoundParameters.ContainsKey('OnCreateScriptedActions')) {
            $Object.OnCreateScriptedActions = $OnCreateScriptedActions
        }
        if ($PSBoundParameters.ContainsKey('OnHostCreateActiveDirectoryId')) {
            $Object.OnHostCreateActiveDirectoryId = $OnHostCreateActiveDirectoryId
        }
        if ($PSBoundParameters.ContainsKey('OnHostCreateEnabled')) {
            $Object.OnHostCreateEnabled = $OnHostCreateEnabled
        }
        if ($PSBoundParameters.ContainsKey('OnHostCreateScriptedActions')) {
            $Object.OnHostCreateScriptedActions = $OnHostCreateScriptedActions
        }
        if ($PSBoundParameters.ContainsKey('OnRemoveActiveDirectoryId')) {
            $Object.OnRemoveActiveDirectoryId = $OnRemoveActiveDirectoryId
        }
        if ($PSBoundParameters.ContainsKey('OnRemoveEnabled')) {
            $Object.OnRemoveEnabled = $OnRemoveEnabled
        }
        if ($PSBoundParameters.ContainsKey('OnRemoveScriptedActions')) {
            $Object.OnRemoveScriptedActions = $OnRemoveScriptedActions
        }
        if ($PSBoundParameters.ContainsKey('OnStartActiveDirectoryId')) {
            $Object.OnStartActiveDirectoryId = $OnStartActiveDirectoryId
        }
        if ($PSBoundParameters.ContainsKey('OnStartEnabled')) {
            $Object.OnStartEnabled = $OnStartEnabled
        }
        if ($PSBoundParameters.ContainsKey('OnStartScriptedActions')) {
            $Object.OnStartScriptedActions = $OnStartScriptedActions
        }
        if ($PSBoundParameters.ContainsKey('OnStopActiveDirectoryId')) {
            $Object.OnStopActiveDirectoryId = $OnStopActiveDirectoryId
        }
        if ($PSBoundParameters.ContainsKey('OnStopEnabled')) {
            $Object.OnStopEnabled = $OnStopEnabled
        }
        if ($PSBoundParameters.ContainsKey('OnStopScriptedActions')) {
            $Object.OnStopScriptedActions = $OnStopScriptedActions
        }
        return $Object
    }
}