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

.Outputs
NmePowershell.Models.SetAsImageParams

#>

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

        [Parameter(Mandatory)]
        [NmePowershell.PSArgumentCompleterAttribute("Clone", "Source")]
        [string]
        $ApplicationsTarget,
        [Parameter()]
        [string]
        $Changelog,
        [Parameter()]
        [bool]
        $EnableAppvClientService,
        [Parameter()]
        [string]
        $GalleryImageGalleryId,
        [Parameter()]
        [bool]
        $GalleryImageHibernationSupported,
        [Parameter()]
        [NmePowershell.PSArgumentCompleterAttribute("Generalized", "Specialized")]
        [string]
        $GalleryImageOSState,
        [Parameter()]
        [int]
        $GalleryImageReplicaCount,
        [Parameter()]
        [NmePowershell.PSArgumentCompleterAttribute("None", "TrustedLaunch", "Confidential", "TrustedLaunchSupported", "ConfidentialSupported", "TrustedLaunchAndConfidentialSupported")]
        [string]
        $GalleryImageSecurityType,
        [Parameter()]
        [bool]
        $GalleryImageSetInactive,
        [Parameter()]
        [string[]]
        $GalleryImageTargetRegions,
        [Parameter()]
        [NmePowershell.PSArgumentCompleterAttribute("Major", "Minor", "Revision")]
        [string]
        $GalleryImageVersionIncrementType,
        [Parameter()]
        [bool]
        $InstallCertificates,
        [Parameter()]
        [bool]
        $PowerOnVM,
        [Parameter()]
        [bool]
        $RetainOldImage,
        [Parameter(Mandatory)]
        [NmePowershell.PSArgumentCompleterAttribute("Clone", "Source")]
        [string]
        $ScriptedActionTarget,
        [Parameter(Mandatory)]
        [NmePowershell.Models.IScriptedActionOption[]]
        $ScriptedActions,
        [Parameter()]
        [bool]
        $SkipRemoveProfiles,
        [Parameter(HelpMessage="Dictionary of <string>.")]
        [NmePowershell.Models.ISetAsImageParamsTags]
        $Tags
    )

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

        if ($PSBoundParameters.ContainsKey('ApplicationsTarget')) {
            $Object.ApplicationsTarget = $ApplicationsTarget
        }
        if ($PSBoundParameters.ContainsKey('Changelog')) {
            $Object.Changelog = $Changelog
        }
        if ($PSBoundParameters.ContainsKey('EnableAppvClientService')) {
            $Object.EnableAppvClientService = $EnableAppvClientService
        }
        if ($PSBoundParameters.ContainsKey('GalleryImageGalleryId')) {
            $Object.GalleryImageGalleryId = $GalleryImageGalleryId
        }
        if ($PSBoundParameters.ContainsKey('GalleryImageHibernationSupported')) {
            $Object.GalleryImageHibernationSupported = $GalleryImageHibernationSupported
        }
        if ($PSBoundParameters.ContainsKey('GalleryImageOSState')) {
            $Object.GalleryImageOSState = $GalleryImageOSState
        }
        if ($PSBoundParameters.ContainsKey('GalleryImageReplicaCount')) {
            $Object.GalleryImageReplicaCount = $GalleryImageReplicaCount
        }
        if ($PSBoundParameters.ContainsKey('GalleryImageSecurityType')) {
            $Object.GalleryImageSecurityType = $GalleryImageSecurityType
        }
        if ($PSBoundParameters.ContainsKey('GalleryImageSetInactive')) {
            $Object.GalleryImageSetInactive = $GalleryImageSetInactive
        }
        if ($PSBoundParameters.ContainsKey('GalleryImageTargetRegions')) {
            $Object.GalleryImageTargetRegions = $GalleryImageTargetRegions
        }
        if ($PSBoundParameters.ContainsKey('GalleryImageVersionIncrementType')) {
            $Object.GalleryImageVersionIncrementType = $GalleryImageVersionIncrementType
        }
        if ($PSBoundParameters.ContainsKey('InstallCertificates')) {
            $Object.InstallCertificates = $InstallCertificates
        }
        if ($PSBoundParameters.ContainsKey('PowerOnVM')) {
            $Object.PowerOnVM = $PowerOnVM
        }
        if ($PSBoundParameters.ContainsKey('RetainOldImage')) {
            $Object.RetainOldImage = $RetainOldImage
        }
        if ($PSBoundParameters.ContainsKey('ScriptedActionTarget')) {
            $Object.ScriptedActionTarget = $ScriptedActionTarget
        }
        if ($PSBoundParameters.ContainsKey('ScriptedActions')) {
            $Object.ScriptedActions = $ScriptedActions
        }
        if ($PSBoundParameters.ContainsKey('SkipRemoveProfiles')) {
            $Object.SkipRemoveProfiles = $SkipRemoveProfiles
        }
        if ($PSBoundParameters.ContainsKey('Tags')) {
            $Object.Tags = $Tags
        }
        return $Object
    }
}