public/Set-CTSDCard.ps1
Function Set-CTSDCard { [cmdletBinding( DefaultParameterSetName='Hanwha', #SupportsShouldProcess = $true, ConfirmImpact='high' )] Param( [Parameter( Mandatory=$true, ParameterSetName='Hanwha' )] [String]$IP, [Parameter( Mandatory=$true, ParameterSetName='Hanwha' )] [pscredential]$Credential, [Parameter( Mandatory=$false, ParameterSetName='Hanwha' )] [Int]$StorageDevice=1, [Parameter( Mandatory=$true, ParameterSetName='Hanwha' )] [switch]$Enable ) DynamicParam { $DynamicParameters = @{ CameraType = @{ Mandatory = $true Position = 1 ParameterSetName = "Hanwha" Enum = $Script:SupportedCameraModels } } return New-DynamicParameterSet -ParameterTable $DynamicParameters } Begin { Write-Debug "[Set-CTSDCard] Started" $CameraType = $PSBoundParameters.CameraType if($CameraType -eq 'Hanwha') { #Set basic Paramters for Invoke-HanwhaCommand $CamCmd = @{ Arguments = @{ IP = $IP Menu = 'system' SubMenu = 'storageinfo' Action = 'set' Parameters = @() } Credential = $Credential } #Add Action Parameters $CamCmd.Arguments.Parameters += "Storage=$StorageDevice" $CamCmd.Arguments.Parameters += "Enable=$Enable" Invoke-HanwhaCommand @CamCmd } } } |