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

.Outputs
NmePowershell.Models.PowerStateCommand

#>

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

        [Parameter()]
        [bool]
        $ExtensionHibernation,
        [Parameter()]
        [bool]
        $FailurePolicyCleanup,
        [Parameter()]
        [bool]
        $FailurePolicyRestart,
        [Parameter(Mandatory)]
        [NmePowershell.PSArgumentCompleterAttribute("Restart", "Stop", "Start")]
        [string]
        $JobPayloadCommand
    )

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

        if ($PSBoundParameters.ContainsKey('ExtensionHibernation')) {
            $Object.ExtensionHibernation = $ExtensionHibernation
        }
        if ($PSBoundParameters.ContainsKey('FailurePolicyCleanup')) {
            $Object.FailurePolicyCleanup = $FailurePolicyCleanup
        }
        if ($PSBoundParameters.ContainsKey('FailurePolicyRestart')) {
            $Object.FailurePolicyRestart = $FailurePolicyRestart
        }
        if ($PSBoundParameters.ContainsKey('JobPayloadCommand')) {
            $Object.JobPayloadCommand = $JobPayloadCommand
        }
        return $Object
    }
}