From 115b28a48d7de7c5068b8a7ac579440917d12825 Mon Sep 17 00:00:00 2001 From: sheffsix Date: Tue, 14 Mar 2023 13:05:25 +0000 Subject: [PATCH] Init. functions for cables and cable terminations --- .../Get-NetboxDCIMCableTermination.ps1 | 38 ++++++++++++ Functions/DCIM/Cables/Get-NetboxDCIMCable.ps1 | 58 +++++++++++++++++++ 2 files changed, 96 insertions(+) create mode 100644 Functions/DCIM/Cable Terminations/Get-NetboxDCIMCableTermination.ps1 create mode 100644 Functions/DCIM/Cables/Get-NetboxDCIMCable.ps1 diff --git a/Functions/DCIM/Cable Terminations/Get-NetboxDCIMCableTermination.ps1 b/Functions/DCIM/Cable Terminations/Get-NetboxDCIMCableTermination.ps1 new file mode 100644 index 0000000..289ff16 --- /dev/null +++ b/Functions/DCIM/Cable Terminations/Get-NetboxDCIMCableTermination.ps1 @@ -0,0 +1,38 @@ + +function Get-NetboxDCIMCableTermination +{ + [CmdletBinding()] + #region Parameters + param + ( + [uint16]$Limit, + + [uint16]$Offset, + + [Parameter(ValueFromPipelineByPropertyName = $true)] + [uint16[]]$Id, + + [uint16]$Cable, + + [string]$Cable_End, + + [string]$Termination_Type, + + [uint16]$Termination_ID, + + [switch]$Raw + ) + + #endregion Parameters + + process + { + $Segments = [System.Collections.ArrayList]::new(@('dcim', 'cable-terminations')) + + $URIComponents = BuildURIComponents -URISegments $Segments.Clone() -ParametersDictionary $PSBoundParameters -SkipParameterByName 'Raw' + + $URI = BuildNewURI -Segments $URIComponents.Segments -Parameters $URIComponents.Parameters + + InvokeNetboxRequest -URI $URI -Raw:$Raw + } +} \ No newline at end of file diff --git a/Functions/DCIM/Cables/Get-NetboxDCIMCable.ps1 b/Functions/DCIM/Cables/Get-NetboxDCIMCable.ps1 new file mode 100644 index 0000000..0811f3d --- /dev/null +++ b/Functions/DCIM/Cables/Get-NetboxDCIMCable.ps1 @@ -0,0 +1,58 @@ + +function Get-NetboxDCIMCable +{ + [CmdletBinding()] + #region Parameters + param + ( + [uint16]$Limit, + + [uint16]$Offset, + + [Parameter(ValueFromPipelineByPropertyName = $true)] + [uint16[]]$Id, + + [string]$Label, + + [string]$Termination_A_Type, + + [uint16]$Termination_A_ID, + + [string]$Termination_B_Type, + + [UInt16]$Termination_B_ID, + + [string]$Type, + + [string]$Status, + + [string]$Color, + + [UInt16]$Device_ID, + + [string]$Device, + + [uint16]$Rack_Id, + + [string]$Rack, + + [uint16]$Location_ID, + + [string]$Location, + + [switch]$Raw + ) + + #endregion Parameters + + process + { + $Segments = [System.Collections.ArrayList]::new(@('dcim', 'cables')) + + $URIComponents = BuildURIComponents -URISegments $Segments.Clone() -ParametersDictionary $PSBoundParameters -SkipParameterByName 'Raw' + + $URI = BuildNewURI -Segments $URIComponents.Segments -Parameters $URIComponents.Parameters + + InvokeNetboxRequest -URI $URI -Raw:$Raw + } +} \ No newline at end of file