Public/Get-PaTag.ps1
function Get-PaTag { [CmdletBinding()] Param ( [Parameter(Mandatory = $False, Position = 0)] [string]$Name ) BEGIN { $VerbosePrefix = "Get-PaTag:" $XPathNode = 'tag' $Xpath = $Global:PaDeviceObject.createXPath($XPathNode, $Name) } PROCESS { # Get the config info for the tag # This is required for the call to run the tag $Response = Invoke-PaApiConfig -Get -Xpath $XPath if ($Response.response.result.$XPathNode) { $Entries = $Response.response.result.$XPathNode.entry } else { $Entries = $Response.response.result.entry } $ReturnObject = @() foreach ($entry in $Entries) { # Initialize object, add to returned array if ($entry.color) { $Color = $entry.color $Object = [PaTag]::new($entry.name, $Color) } else { $Object = [PaTag]::new($entry.name) } $ReturnObject += $Object # Add other properties to object $Object.Comments = $entry.comments } $ReturnObject } } |