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

.Outputs
NmePowershell.Models.HostPoolFsLogixProperties

#>

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

        [Parameter()]
        [string]
        $AppServiceRegistryOptionRegistryOptions,
        [Parameter()]
        [NmePowershell.PSArgumentCompleterAttribute("None", "Apply")]
        [string]
        $AppServiceRegistryOptionRegistryOptionsMode,
        [Parameter(Mandatory)]
        [bool]
        $CloudCacheEnabled,
        [Parameter()]
        [string]
        $CloudCacheOfficeRegistryOptions,
        [Parameter()]
        [string]
        $CloudCacheProfileRegistryOptions,
        [Parameter()]
        [string]
        $CloudCacheRegistryOptions,
        [Parameter()]
        [string[]]
        $ExclusionExcludedDomainAccounts,
        [Parameter(Mandatory)]
        [NmePowershell.PSArgumentCompleterAttribute("None", "Admins")]
        [string]
        $ExclusionMode,
        [Parameter(Mandatory)]
        [bool]
        $ForceUpdate,
        [Parameter()]
        [string]
        $FsLogixVersion,
        [Parameter()]
        [string]
        $LogRegistryOptionRegistryOptions,
        [Parameter()]
        [NmePowershell.PSArgumentCompleterAttribute("None", "Apply")]
        [string]
        $LogRegistryOptionRegistryOptionsMode,
        [Parameter()]
        [string]
        $OfficeContainerPath,
        [Parameter()]
        [string]
        $OfficeContainerRegistryOptions,
        [Parameter(Mandatory)]
        [bool]
        $PageBlobs,
        [Parameter(Mandatory)]
        [string]
        $ProfilesPath,
        [Parameter()]
        [string]
        $RedirectionsXml,
        [Parameter(Mandatory)]
        [string]
        $RegistryOptions,
        [Parameter()]
        [string]
        $SecondaryOfficeContainerPath,
        [Parameter()]
        [string]
        $SecondaryProfilesPath,
        [Parameter(Mandatory)]
        [bool]
        $SetupRegistryForAadJoinedStorage
    )

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

        if ($PSBoundParameters.ContainsKey('AppServiceRegistryOptionRegistryOptions')) {
            $Object.AppServiceRegistryOptionRegistryOptions = $AppServiceRegistryOptionRegistryOptions
        }
        if ($PSBoundParameters.ContainsKey('AppServiceRegistryOptionRegistryOptionsMode')) {
            $Object.AppServiceRegistryOptionRegistryOptionsMode = $AppServiceRegistryOptionRegistryOptionsMode
        }
        if ($PSBoundParameters.ContainsKey('CloudCacheEnabled')) {
            $Object.CloudCacheEnabled = $CloudCacheEnabled
        }
        if ($PSBoundParameters.ContainsKey('CloudCacheOfficeRegistryOptions')) {
            $Object.CloudCacheOfficeRegistryOptions = $CloudCacheOfficeRegistryOptions
        }
        if ($PSBoundParameters.ContainsKey('CloudCacheProfileRegistryOptions')) {
            $Object.CloudCacheProfileRegistryOptions = $CloudCacheProfileRegistryOptions
        }
        if ($PSBoundParameters.ContainsKey('CloudCacheRegistryOptions')) {
            $Object.CloudCacheRegistryOptions = $CloudCacheRegistryOptions
        }
        if ($PSBoundParameters.ContainsKey('ExclusionExcludedDomainAccounts')) {
            $Object.ExclusionExcludedDomainAccounts = $ExclusionExcludedDomainAccounts
        }
        if ($PSBoundParameters.ContainsKey('ExclusionMode')) {
            $Object.ExclusionMode = $ExclusionMode
        }
        if ($PSBoundParameters.ContainsKey('ForceUpdate')) {
            $Object.ForceUpdate = $ForceUpdate
        }
        if ($PSBoundParameters.ContainsKey('FsLogixVersion')) {
            $Object.FsLogixVersion = $FsLogixVersion
        }
        if ($PSBoundParameters.ContainsKey('LogRegistryOptionRegistryOptions')) {
            $Object.LogRegistryOptionRegistryOptions = $LogRegistryOptionRegistryOptions
        }
        if ($PSBoundParameters.ContainsKey('LogRegistryOptionRegistryOptionsMode')) {
            $Object.LogRegistryOptionRegistryOptionsMode = $LogRegistryOptionRegistryOptionsMode
        }
        if ($PSBoundParameters.ContainsKey('OfficeContainerPath')) {
            $Object.OfficeContainerPath = $OfficeContainerPath
        }
        if ($PSBoundParameters.ContainsKey('OfficeContainerRegistryOptions')) {
            $Object.OfficeContainerRegistryOptions = $OfficeContainerRegistryOptions
        }
        if ($PSBoundParameters.ContainsKey('PageBlobs')) {
            $Object.PageBlobs = $PageBlobs
        }
        if ($PSBoundParameters.ContainsKey('ProfilesPath')) {
            $Object.ProfilesPath = $ProfilesPath
        }
        if ($PSBoundParameters.ContainsKey('RedirectionsXml')) {
            $Object.RedirectionsXml = $RedirectionsXml
        }
        if ($PSBoundParameters.ContainsKey('RegistryOptions')) {
            $Object.RegistryOptions = $RegistryOptions
        }
        if ($PSBoundParameters.ContainsKey('SecondaryOfficeContainerPath')) {
            $Object.SecondaryOfficeContainerPath = $SecondaryOfficeContainerPath
        }
        if ($PSBoundParameters.ContainsKey('SecondaryProfilesPath')) {
            $Object.SecondaryProfilesPath = $SecondaryProfilesPath
        }
        if ($PSBoundParameters.ContainsKey('SetupRegistryForAadJoinedStorage')) {
            $Object.SetupRegistryForAadJoinedStorage = $SetupRegistryForAadJoinedStorage
        }
        return $Object
    }
}