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

.Outputs
NmePowershell.Models.SessionHostCreate

#>

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

        [Parameter()]
        [bool]
        $FailurePolicyCleanup,
        [Parameter()]
        [bool]
        $FailurePolicyRestart,
        [Parameter()]
        [string]
        $HostDiskPerformanceTier,
        [Parameter(Mandatory)]
        [int]
        $HostDiskSize,
        [Parameter()]
        [NmePowershell.PSArgumentCompleterAttribute("CacheDisk", "ResourceDisk", "NvmeDisk")]
        [string]
        $HostEphemeralOSDiskPlacement,
        [Parameter(Mandatory)]
        [bool]
        $HostHasEphemeralOSDisk,
        [Parameter(Mandatory)]
        [string]
        $HostImage,
        [Parameter(Mandatory)]
        [string]
        $HostNetworkId,
        [Parameter(Mandatory)]
        [string]
        $HostStorageType,
        [Parameter(Mandatory)]
        [string]
        $HostSubnet,
        [Parameter(Mandatory)]
        [string]
        $HostVMSize,
        [Parameter()]
        [int]
        $JobPayloadHostsCount,
        [Parameter(HelpMessage="Dictionary of <string>.")]
        [NmePowershell.Models.ISessionHostCreateParamsTags]
        $JobPayloadTags,
        [Parameter()]
        [string]
        $JobPayloadUserToAssign,
        [Parameter(Mandatory)]
        [bool]
        $VMIdAddSuffix,
        [Parameter(Mandatory)]
        [string]
        $VMIdName,
        [Parameter(Mandatory)]
        [string]
        $VMIdResourceGroup,
        [Parameter(Mandatory)]
        [string]
        $VMIdSubscriptionId
    )

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

        if ($PSBoundParameters.ContainsKey('FailurePolicyCleanup')) {
            $Object.FailurePolicyCleanup = $FailurePolicyCleanup
        }
        if ($PSBoundParameters.ContainsKey('FailurePolicyRestart')) {
            $Object.FailurePolicyRestart = $FailurePolicyRestart
        }
        if ($PSBoundParameters.ContainsKey('HostDiskPerformanceTier')) {
            $Object.HostDiskPerformanceTier = $HostDiskPerformanceTier
        }
        if ($PSBoundParameters.ContainsKey('HostDiskSize')) {
            $Object.HostDiskSize = $HostDiskSize
        }
        if ($PSBoundParameters.ContainsKey('HostEphemeralOSDiskPlacement')) {
            $Object.HostEphemeralOSDiskPlacement = $HostEphemeralOSDiskPlacement
        }
        if ($PSBoundParameters.ContainsKey('HostHasEphemeralOSDisk')) {
            $Object.HostHasEphemeralOSDisk = $HostHasEphemeralOSDisk
        }
        if ($PSBoundParameters.ContainsKey('HostImage')) {
            $Object.HostImage = $HostImage
        }
        if ($PSBoundParameters.ContainsKey('HostNetworkId')) {
            $Object.HostNetworkId = $HostNetworkId
        }
        if ($PSBoundParameters.ContainsKey('HostStorageType')) {
            $Object.HostStorageType = $HostStorageType
        }
        if ($PSBoundParameters.ContainsKey('HostSubnet')) {
            $Object.HostSubnet = $HostSubnet
        }
        if ($PSBoundParameters.ContainsKey('HostVMSize')) {
            $Object.HostVMSize = $HostVMSize
        }
        if ($PSBoundParameters.ContainsKey('JobPayloadHostsCount')) {
            $Object.JobPayloadHostsCount = $JobPayloadHostsCount
        }
        if ($PSBoundParameters.ContainsKey('JobPayloadTags')) {
            $Object.JobPayloadTags = $JobPayloadTags
        }
        if ($PSBoundParameters.ContainsKey('JobPayloadUserToAssign')) {
            $Object.JobPayloadUserToAssign = $JobPayloadUserToAssign
        }
        if ($PSBoundParameters.ContainsKey('VMIdAddSuffix')) {
            $Object.VMIdAddSuffix = $VMIdAddSuffix
        }
        if ($PSBoundParameters.ContainsKey('VMIdName')) {
            $Object.VMIdName = $VMIdName
        }
        if ($PSBoundParameters.ContainsKey('VMIdResourceGroup')) {
            $Object.VMIdResourceGroup = $VMIdResourceGroup
        }
        if ($PSBoundParameters.ContainsKey('VMIdSubscriptionId')) {
            $Object.VMIdSubscriptionId = $VMIdSubscriptionId
        }
        return $Object
    }
}