NetboxPS/Functions/DCIM/Devices/Get-NetboxDCIMDeviceRole.ps1

62 lines
1.7 KiB
PowerShell
Raw Normal View History

<#
2018-05-23 11:10:40 -04:00
.NOTES
===========================================================================
2020-03-23 12:18:01 -04:00
Created with: SAPIEN Technologies, Inc., PowerShell Studio 2020 v5.7.172
Created on: 3/23/2020 12:07
Created by: Claussen
2018-05-23 11:10:40 -04:00
Organization: NEOnet
2020-03-23 12:18:01 -04:00
Filename: Get-NetboxDCIMDeviceRole.ps1
2018-05-23 11:10:40 -04:00
===========================================================================
.DESCRIPTION
A description of the file.
#>
2020-03-23 12:18:01 -04:00
function Get-NetboxDCIMDeviceRole {
[CmdletBinding()]
param
(
[uint16]$Limit,
[uint16]$Offset,
[Parameter(ParameterSetName = 'ById')]
[uint16[]]$Id,
[string]$Name,
[string]$Slug,
2020-03-23 12:18:01 -04:00
[string]$Color,
2020-03-23 12:18:01 -04:00
[bool]$VM_Role,
[switch]$Raw
)
switch ($PSCmdlet.ParameterSetName) {
'ById' {
2020-03-23 12:18:01 -04:00
foreach ($DRId in $Id) {
$Segments = [System.Collections.ArrayList]::new(@('dcim', 'device-roles', $DRId))
$URIComponents = BuildURIComponents -URISegments $Segments -ParametersDictionary $PSBoundParameters -SkipParameterByName 'Id', 'Raw'
$URI = BuildNewURI -Segments $URIComponents.Segments -Parameters $URIComponents.Parameters
InvokeNetboxRequest -URI $URI -Raw:$Raw
}
break
}
default {
2020-03-23 12:18:01 -04:00
$Segments = [System.Collections.ArrayList]::new(@('dcim', 'device-roles'))
$URIComponents = BuildURIComponents -URISegments $Segments -ParametersDictionary $PSBoundParameters -SkipParameterByName 'Raw'
$URI = BuildNewURI -Segments $URIComponents.Segments -Parameters $URIComponents.Parameters
InvokeNetboxRequest -URI $URI -Raw:$Raw
}
}
2020-03-23 12:18:01 -04:00
}