Public/New-PaTag.ps1
function New-PaTag { <# .SYNOPSIS Creates a Tag object. .DESCRIPTION Creates a Tag object. .EXAMPLE .PARAMETER Name #> [CmdletBinding()] Param ( [Parameter(Mandatory = $True, Position = 0)] [string]$Name, [Parameter(Mandatory = $False, Position = 1)] [ValidateSet('Red', 'Green', 'Blue', 'Yellow', 'Copper', 'Orange', 'Purple', 'Gray', 'Light Green', 'Cyan', 'Light Gray', 'Blue Gray', 'Lime', 'Black', 'Gold', 'Brown', 'Green')] [string]$Color, [Parameter(Mandatory = $False, Position = 2)] [string]$Comments ) BEGIN { } PROCESS { if ($Color) { Write-Verbose "Color specified: $Color" $ConfigObject = [PaTag]::new($Name, $Color) $global:configobject = $ConfigObject } else { $ConfigObject = [PaTag]::new($Name) } $ConfigObject.Comments = $Comments $global:test = $ConfigObject $ElementXml = $ConfigObject.ToXml().tag.InnerXml $Xpath = $Global:PaDeviceObject.createXPath('tag', '') if ($PSCmdlet.ShouldProcess($ShouldProcessMessage)) { $Set = Invoke-PaApiConfig -Set -Xpath $XPath -Element $ElementXml $Set } return $ConfigObject } } |