From 1fed2d27e60404afb975ae4b5fea41f44c7a622d Mon Sep 17 00:00:00 2001 From: Ben Claussen Date: Fri, 24 Feb 2023 10:28:16 -0500 Subject: [PATCH] Fix #28 - Set DefaultParameterSetName = Query --- Functions/IPAM/VLAN/Get-NetboxIPAMVLAN.ps1 | 62 ++++++++++------------ 1 file changed, 29 insertions(+), 33 deletions(-) diff --git a/Functions/IPAM/VLAN/Get-NetboxIPAMVLAN.ps1 b/Functions/IPAM/VLAN/Get-NetboxIPAMVLAN.ps1 index 088b30f..3cd801e 100644 --- a/Functions/IPAM/VLAN/Get-NetboxIPAMVLAN.ps1 +++ b/Functions/IPAM/VLAN/Get-NetboxIPAMVLAN.ps1 @@ -1,95 +1,91 @@  function Get-NetboxIPAMVLAN { - [CmdletBinding()] + [CmdletBinding(DefaultParameterSetName = 'Query')] param ( [Parameter(ParameterSetName = 'Query', Position = 0)] [ValidateRange(1, 4096)] [uint16]$VID, - + [Parameter(ParameterSetName = 'ByID')] [uint32[]]$Id, - + [Parameter(ParameterSetName = 'Query')] [string]$Query, - + [Parameter(ParameterSetName = 'Query')] [string]$Name, - + [Parameter(ParameterSetName = 'Query')] [string]$Tenant, - + [Parameter(ParameterSetName = 'Query')] [uint32]$Tenant_Id, - + [Parameter(ParameterSetName = 'Query')] [string]$TenantGroup, - + [Parameter(ParameterSetName = 'Query')] [uint32]$TenantGroup_Id, - + [Parameter(ParameterSetName = 'Query')] [object]$Status, - + [Parameter(ParameterSetName = 'Query')] [string]$Region, - + [Parameter(ParameterSetName = 'Query')] [string]$Site, - + [Parameter(ParameterSetName = 'Query')] [uint32]$Site_Id, - + [Parameter(ParameterSetName = 'Query')] [string]$Group, - + [Parameter(ParameterSetName = 'Query')] [uint32]$Group_Id, - + [Parameter(ParameterSetName = 'Query')] [string]$Role, - + [Parameter(ParameterSetName = 'Query')] [uint32]$Role_Id, - + [Parameter(ParameterSetName = 'Query')] [uint16]$Limit, - + [Parameter(ParameterSetName = 'Query')] [uint16]$Offset, - + [switch]$Raw ) - - # if ($null -ne $Status) { - # $PSBoundParameters.Status = ValidateIPAMChoice -ProvidedValue $Status -VLANStatus - # } - + switch ($PSCmdlet.ParameterSetName) { 'ById' { foreach ($VLAN_ID in $Id) { $Segments = [System.Collections.ArrayList]::new(@('ipam', 'vlans', $VLAN_ID)) - + $URIComponents = BuildURIComponents -URISegments $Segments -ParametersDictionary $PSBoundParameters -SkipParameterByName 'Id' - + $uri = BuildNewURI -Segments $URIComponents.Segments -Parameters $URIComponents.Parameters - + InvokeNetboxRequest -URI $uri -Raw:$Raw } - + break } - + default { $Segments = [System.Collections.ArrayList]::new(@('ipam', 'vlans')) - + $URIComponents = BuildURIComponents -URISegments $Segments -ParametersDictionary $PSBoundParameters - + $uri = BuildNewURI -Segments $URIComponents.Segments -Parameters $URIComponents.Parameters - + InvokeNetboxRequest -URI $uri -Raw:$Raw - + break } }