From 59f83cbb8a10cff0b4e8cacffc6e52cc0e9c8027 Mon Sep 17 00:00:00 2001 From: Wes Carroll Date: Thu, 14 Mar 2019 20:29:13 -0400 Subject: [PATCH] Create switch when creating new VPG Settings --- .../Public/New-ZertoVpgSettingsIdentifier.ps1 | 28 ++++++++++++++----- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/ZertoApiWrapper/Public/New-ZertoVpgSettingsIdentifier.ps1 b/ZertoApiWrapper/Public/New-ZertoVpgSettingsIdentifier.ps1 index 5fe72bf..1ae97dc 100644 --- a/ZertoApiWrapper/Public/New-ZertoVpgSettingsIdentifier.ps1 +++ b/ZertoApiWrapper/Public/New-ZertoVpgSettingsIdentifier.ps1 @@ -2,17 +2,31 @@ function New-ZertoVpgSettingsIdentifier { [cmdletbinding()] param( [Parameter( - HelpMessage = "Identifier of the VPG to create a VPG settings identifier. If a vpgIdentifier is not provided, a new VPG settings object is created without any configured settings. This would be used for creating a new VPG from scratch." + HelpMessage = "Identifier of the VPG to create a VPG settings identifier. If a vpgIdentifier is not provided, a new VPG settings object is created without any configured settings. This would be used for creating a new VPG from scratch.", + ParameterSetName = "existingVpg", + Mandatory = $true, + ValueFromPipeline = $true, + ValueFromPipelineByPropertyName = $true )] - [string]$vpgIdentifier = $null + [string]$vpgIdentifier, + [Parameter( + HelpMessage = "Use this switch when creating a vpgSettingsIdentifier for a new VPG", + ParameterSetName = "newVpg", + Mandatory = $true + )] + [switch]$newVpg ) begin { $baseUri = "vpgSettings" - if ($null -eq $vpgIdentifier) { - $body = "{}" - } else { - $body = "{""VpgIdentifier"":""$vpgIdentifier""}" + switch ($PSCmdlet.ParameterSetName) { + "newVpg" { + $body = "{}" + } + + "existingVpg" { + $body = "{""VpgIdentifier"":""$vpgIdentifier""}" + } } } @@ -23,4 +37,4 @@ function New-ZertoVpgSettingsIdentifier { end { } -} \ No newline at end of file +}