diff --git a/src/ResourceManager/Compute/Commands.Compute.Test/ScenarioTests/VirtualMachineScaleSetTests.ps1 b/src/ResourceManager/Compute/Commands.Compute.Test/ScenarioTests/VirtualMachineScaleSetTests.ps1 index 79506a8d4bb5..c39263a05c6f 100644 --- a/src/ResourceManager/Compute/Commands.Compute.Test/ScenarioTests/VirtualMachineScaleSetTests.ps1 +++ b/src/ResourceManager/Compute/Commands.Compute.Test/ScenarioTests/VirtualMachineScaleSetTests.ps1 @@ -133,7 +133,11 @@ function Test-VirtualMachineScaleSet # List All Write-Verbose ('Running Command : ' + 'Get-AzureVMSSAllList'); - $vmssList = Get-AzureVMSSAllList -VirtualMachineScaleSetListAllParameters $null; + + $argList = New-AzureComputeArgumentList -MethodName VirtualMachineScaleSetListAll; + $args = ($argList | select -ExpandProperty Value); + #$vmssList = Invoke-AzureComputeMethod -MethodName VirtualMachineScaleSetListAll -ArgumentList $args; + $vmssList = Get-AzureVMSSAllList; Assert-True { ($vmssList.VirtualMachineScaleSets | select -ExpandProperty Name) -contains $vmss.Name }; $output = $vmssList | Out-String; Write-Verbose ($output); @@ -155,12 +159,14 @@ function Test-VirtualMachineScaleSet Assert-True { $output.Contains("VirtualMachineScaleSetSku") }; # List All VMs - $vmListParams = New-AzureComputeParameterObject -FriendlyName VirtualMachineScaleSetVMListParameters; - $vmListParams.ResourceGroupName = $rgname; - $vmListParams.VirtualMachineScaleSetName = $vmss.Name; - Write-Verbose ('Running Command : ' + 'Get-AzureVMSSVMList'); - $vmListResult = Get-AzureVMSSVMList -VirtualMachineScaleSetVMListParameters $vmListParams; + + $argList = New-AzureComputeArgumentList -MethodName VirtualMachineScaleSetVMList; + $argList[2].Value = $rgname; + $argList[4].Value = $vmss.Name; + $args = ($argList | select -ExpandProperty Value); + #$vmListResult = Invoke-AzureComputeMethod -MethodName VirtualMachineScaleSetVMList -ArgumentList $args; + $vmListResult = Get-AzureVMSSVMList -ResourceGroupName $rgname -VirtualMachineScaleSetName $vmss.Name; $output = $vmListResult | Out-String; Write-Verbose ($output); Assert-True { $output.Contains("VirtualMachineScaleSetVM") }; @@ -202,11 +208,23 @@ function Test-VirtualMachineScaleSet $st = Start-AzureVMSS -ResourceGroupName $rgname -VMScaleSetName $vmss.Name; $st = Restart-AzureVMSS -ResourceGroupName $rgname -VMScaleSetName $vmss.Name; - $instanceListParam = New-AzureComputeParameterObject -FriendlyName VirtualMachineScaleSetVMInstanceIDs; + $instanceListParam = @(); for ($i = 0; $i -lt $vmList.Count; $i++) { - $instanceListParam.InstanceIDs.Add($i); + $instanceListParam += $i.ToString(); } + + $argList = New-AzureComputeArgumentList -MethodName VirtualMachineScaleSetPowerOffInstances; + $argList[0].Value = $rgname; + $argList[1].Value = $vmss.Name; + $argList[2].Value = $instanceListParam; + $args = @() + for ($i = 0; $i -lt $argList.Length; $i++) + { + $args += , $argList[$i].Value; + } + + #$vmssResult = Invoke-AzureComputeMethod -MethodName VirtualMachineScaleSetPowerOffInstances -ArgumentList $args; $st = Stop-AzureVMSSInstances -ResourceGroupName $rgname -VMScaleSetName $vmss.Name -VMInstanceIDs $instanceListParam; $st = Stop-AzureVMSSInstancesWithDeallocation -ResourceGroupName $rgname -VMScaleSetName $vmss.Name -VMInstanceIDs $instanceListParam; $st = Start-AzureVMSSInstances -ResourceGroupName $rgname -VMScaleSetName $vmss.Name -VMInstanceIDs $instanceListParam; diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/ComputeAutomationBaseCmdlet.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/ComputeAutomationBaseCmdlet.cs index e396956edd2f..3922cf35318b 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/ComputeAutomationBaseCmdlet.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/ComputeAutomationBaseCmdlet.cs @@ -51,6 +51,11 @@ protected static PSArgument[] ConvertFromObjectsToArguments(string[] names, obje protected static object[] ConvertFromArgumentsToObjects(object[] arguments) { + if (arguments == null) + { + return null; + } + var objects = new object[arguments.Length]; for (int index = 0; index < arguments.Length; index++) diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetCreateOrUpdateMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetCreateOrUpdateMethod.cs index 0e3a4a6a3098..4ffff9813456 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetCreateOrUpdateMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetCreateOrUpdateMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetCreateOrUpdateDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetCreateOrUpdateDynamicParameters() var pParameters = new RuntimeDefinedParameter(); pParameters.Name = "VirtualMachineScaleSetCreateOrUpdateParameters"; - pParameters.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSet); + pParameters.ParameterType = typeof(VirtualMachineScaleSet); pParameters.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -91,11 +91,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetCreateOrUpdateParameters() string resourceGroupName = string.Empty; VirtualMachineScaleSet parameters = new VirtualMachineScaleSet(); - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "Parameters" }, new object[] { resourceGroupName, parameters }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "Parameters" }, + new object[] { resourceGroupName, parameters }); } } - [Cmdlet("New", "AzureVMSS")] + [Cmdlet("New", "AzureVmss", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class NewAzureVMSS : InvokeAzureComputeMethodCmdlet { public NewAzureVMSS() @@ -115,7 +117,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -127,7 +129,7 @@ public override object GetDynamicParameters() var pParameters = new RuntimeDefinedParameter(); pParameters.Name = "VirtualMachineScaleSetCreateOrUpdateParameters"; - pParameters.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSet); + pParameters.ParameterType = typeof(VirtualMachineScaleSet); pParameters.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeallocateInstancesMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeallocateInstancesMethod.cs index d5e37f4480fd..452248a95481 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeallocateInstancesMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeallocateInstancesMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetDeallocateInstancesDynamicParameter dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetDeallocateInstancesDynamicParameter var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetDeallocateInstancesDynamicParameter var pVMInstanceIDs = new RuntimeDefinedParameter(); pVMInstanceIDs.Name = "VMInstanceIDs"; - pVMInstanceIDs.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMInstanceIDs); + pVMInstanceIDs.ParameterType = typeof(string[]); pVMInstanceIDs.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -90,7 +90,9 @@ protected void ExecuteVirtualMachineScaleSetDeallocateInstancesMethod(object[] i { string resourceGroupName = (string)ParseParameter(invokeMethodInputParameters[0]); string vmScaleSetName = (string)ParseParameter(invokeMethodInputParameters[1]); - VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = (VirtualMachineScaleSetVMInstanceIDs)ParseParameter(invokeMethodInputParameters[2]); + var inputArray2 = Array.ConvertAll((object[]) ParseParameter(invokeMethodInputParameters[2]), e => e.ToString()); + VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = new VirtualMachineScaleSetVMInstanceIDs(); + vmInstanceIDs.InstanceIDs = inputArray2.ToList(); var result = VirtualMachineScaleSetClient.DeallocateInstances(resourceGroupName, vmScaleSetName, vmInstanceIDs); WriteObject(result); @@ -103,13 +105,15 @@ protected PSArgument[] CreateVirtualMachineScaleSetDeallocateInstancesParameters { string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = new VirtualMachineScaleSetVMInstanceIDs(); + var vmInstanceIDs = new string[0]; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "VMInstanceIDs" }, new object[] { resourceGroupName, vmScaleSetName, vmInstanceIDs }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "VMInstanceIDs" }, + new object[] { resourceGroupName, vmScaleSetName, vmInstanceIDs }); } } - [Cmdlet("Stop", "AzureVMSSInstancesWithDeallocation")] + [Cmdlet("Stop", "AzureVmssInstancesWithDeallocation", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class StopAzureVMSSInstancesWithDeallocation : InvokeAzureComputeMethodCmdlet { public StopAzureVMSSInstancesWithDeallocation() @@ -129,7 +133,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +145,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +157,7 @@ public override object GetDynamicParameters() var pVMInstanceIDs = new RuntimeDefinedParameter(); pVMInstanceIDs.Name = "VMInstanceIDs"; - pVMInstanceIDs.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMInstanceIDs); + pVMInstanceIDs.ParameterType = typeof(string[]); pVMInstanceIDs.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeallocateMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeallocateMethod.cs index 9a851b057f98..73e52344ba0e 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeallocateMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeallocateMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetDeallocateDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetDeallocateDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -91,11 +91,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetDeallocateParameters() string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName" }, new object[] { resourceGroupName, vmScaleSetName }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName" }, + new object[] { resourceGroupName, vmScaleSetName }); } } - [Cmdlet("Stop", "AzureVMSSWithDeallocation")] + [Cmdlet("Stop", "AzureVmssWithDeallocation", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class StopAzureVMSSWithDeallocation : InvokeAzureComputeMethodCmdlet { public StopAzureVMSSWithDeallocation() @@ -115,7 +117,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -127,7 +129,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeleteInstancesMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeleteInstancesMethod.cs index 90dbf0ed88b2..abee8a2629c1 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeleteInstancesMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeleteInstancesMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetDeleteInstancesDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetDeleteInstancesDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetDeleteInstancesDynamicParameters() var pVMInstanceIDs = new RuntimeDefinedParameter(); pVMInstanceIDs.Name = "VMInstanceIDs"; - pVMInstanceIDs.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMInstanceIDs); + pVMInstanceIDs.ParameterType = typeof(string[]); pVMInstanceIDs.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -90,7 +90,9 @@ protected void ExecuteVirtualMachineScaleSetDeleteInstancesMethod(object[] invok { string resourceGroupName = (string)ParseParameter(invokeMethodInputParameters[0]); string vmScaleSetName = (string)ParseParameter(invokeMethodInputParameters[1]); - VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = (VirtualMachineScaleSetVMInstanceIDs)ParseParameter(invokeMethodInputParameters[2]); + var inputArray2 = Array.ConvertAll((object[]) ParseParameter(invokeMethodInputParameters[2]), e => e.ToString()); + VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = new VirtualMachineScaleSetVMInstanceIDs(); + vmInstanceIDs.InstanceIDs = inputArray2.ToList(); var result = VirtualMachineScaleSetClient.DeleteInstances(resourceGroupName, vmScaleSetName, vmInstanceIDs); WriteObject(result); @@ -103,13 +105,15 @@ protected PSArgument[] CreateVirtualMachineScaleSetDeleteInstancesParameters() { string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = new VirtualMachineScaleSetVMInstanceIDs(); + var vmInstanceIDs = new string[0]; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "VMInstanceIDs" }, new object[] { resourceGroupName, vmScaleSetName, vmInstanceIDs }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "VMInstanceIDs" }, + new object[] { resourceGroupName, vmScaleSetName, vmInstanceIDs }); } } - [Cmdlet("Remove", "AzureVMSSInstances")] + [Cmdlet("Remove", "AzureVmssInstances", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class RemoveAzureVMSSInstances : InvokeAzureComputeMethodCmdlet { public RemoveAzureVMSSInstances() @@ -129,7 +133,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +145,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +157,7 @@ public override object GetDynamicParameters() var pVMInstanceIDs = new RuntimeDefinedParameter(); pVMInstanceIDs.Name = "VMInstanceIDs"; - pVMInstanceIDs.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMInstanceIDs); + pVMInstanceIDs.ParameterType = typeof(string[]); pVMInstanceIDs.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeleteMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeleteMethod.cs index 5355aadcb40c..fc66e8859a77 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeleteMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetDeleteMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetDeleteDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetDeleteDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -91,11 +91,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetDeleteParameters() string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName" }, new object[] { resourceGroupName, vmScaleSetName }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName" }, + new object[] { resourceGroupName, vmScaleSetName }); } } - [Cmdlet("Remove", "AzureVMSS")] + [Cmdlet("Remove", "AzureVmss", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class RemoveAzureVMSS : InvokeAzureComputeMethodCmdlet { public RemoveAzureVMSS() @@ -115,7 +117,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -127,7 +129,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetGetInstanceViewMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetGetInstanceViewMethod.cs index ad92ece25b4f..4285c9c017db 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetGetInstanceViewMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetGetInstanceViewMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetGetInstanceViewDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetGetInstanceViewDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -91,11 +91,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetGetInstanceViewParameters() string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName" }, new object[] { resourceGroupName, vmScaleSetName }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName" }, + new object[] { resourceGroupName, vmScaleSetName }); } } - [Cmdlet("Get", "AzureVMSSInstanceView")] + [Cmdlet("Get", "AzureVmssInstanceView", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class GetAzureVMSSInstanceView : InvokeAzureComputeMethodCmdlet { public GetAzureVMSSInstanceView() @@ -115,7 +117,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -127,7 +129,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetGetMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetGetMethod.cs index 3d162de98bc8..5805edfc1015 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetGetMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetGetMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetGetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetGetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -91,11 +91,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetGetParameters() string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName" }, new object[] { resourceGroupName, vmScaleSetName }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName" }, + new object[] { resourceGroupName, vmScaleSetName }); } } - [Cmdlet("Get", "AzureVMSS")] + [Cmdlet("Get", "AzureVmss", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class GetAzureVMSS : InvokeAzureComputeMethodCmdlet { public GetAzureVMSS() @@ -115,7 +117,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -127,7 +129,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListAllMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListAllMethod.cs index 4c3292a4a83d..9f840b22ac11 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListAllMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListAllMethod.cs @@ -35,25 +35,13 @@ public partial class InvokeAzureComputeMethodCmdlet : ComputeAutomationBaseCmdle protected object CreateVirtualMachineScaleSetListAllDynamicParameters() { dynamicParameters = new RuntimeDefinedParameterDictionary(); - var pParameters = new RuntimeDefinedParameter(); - pParameters.Name = "VirtualMachineScaleSetListAllParameters"; - pParameters.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.ListParameters); - pParameters.Attributes.Add(new ParameterAttribute - { - ParameterSetName = "InvokeByDynamicParameters", - Position = 1, - Mandatory = true - }); - pParameters.Attributes.Add(new AllowNullAttribute()); - dynamicParameters.Add("VirtualMachineScaleSetListAllParameters", pParameters); - var pArgumentList = new RuntimeDefinedParameter(); pArgumentList.Name = "ArgumentList"; pArgumentList.ParameterType = typeof(object[]); pArgumentList.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByStaticParameters", - Position = 2, + Position = 1, Mandatory = true }); pArgumentList.Attributes.Add(new AllowNullAttribute()); @@ -64,7 +52,7 @@ protected object CreateVirtualMachineScaleSetListAllDynamicParameters() protected void ExecuteVirtualMachineScaleSetListAllMethod(object[] invokeMethodInputParameters) { - ListParameters parameters = (ListParameters)ParseParameter(invokeMethodInputParameters[0]); + ListParameters parameters = new ListParameters(); var result = VirtualMachineScaleSetClient.ListAll(parameters); WriteObject(result); @@ -75,13 +63,11 @@ public partial class NewAzureComputeArgumentListCmdlet : ComputeAutomationBaseCm { protected PSArgument[] CreateVirtualMachineScaleSetListAllParameters() { - ListParameters parameters = new ListParameters(); - - return ConvertFromObjectsToArguments(new string[] { "Parameters" }, new object[] { parameters }); + return ConvertFromObjectsToArguments(new string[0], new object[0]); } } - [Cmdlet("Get", "AzureVMSSAllList")] + [Cmdlet("Get", "AzureVmssAllList", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class GetAzureVMSSAllList : InvokeAzureComputeMethodCmdlet { public GetAzureVMSSAllList() @@ -99,25 +85,13 @@ protected override void ProcessRecord() public override object GetDynamicParameters() { dynamicParameters = new RuntimeDefinedParameterDictionary(); - var pParameters = new RuntimeDefinedParameter(); - pParameters.Name = "VirtualMachineScaleSetListAllParameters"; - pParameters.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.ListParameters); - pParameters.Attributes.Add(new ParameterAttribute - { - ParameterSetName = "InvokeByDynamicParameters", - Position = 1, - Mandatory = true - }); - pParameters.Attributes.Add(new AllowNullAttribute()); - dynamicParameters.Add("VirtualMachineScaleSetListAllParameters", pParameters); - var pArgumentList = new RuntimeDefinedParameter(); pArgumentList.Name = "ArgumentList"; pArgumentList.ParameterType = typeof(object[]); pArgumentList.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByStaticParameters", - Position = 2, + Position = 1, Mandatory = true }); pArgumentList.Attributes.Add(new AllowNullAttribute()); diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListMethod.cs index 3bbae503bdf7..50cdfe2c85c8 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetListDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -77,11 +77,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetListParameters() { string resourceGroupName = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName" }, new object[] { resourceGroupName }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName" }, + new object[] { resourceGroupName }); } } - [Cmdlet("Get", "AzureVMSSList")] + [Cmdlet("Get", "AzureVmssList", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class GetAzureVMSSList : InvokeAzureComputeMethodCmdlet { public GetAzureVMSSList() @@ -101,7 +103,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListNextMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListNextMethod.cs index b36b8e65fbce..232259f53500 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListNextMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListNextMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetListNextDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pNextLink = new RuntimeDefinedParameter(); pNextLink.Name = "NextLink"; - pNextLink.ParameterType = typeof(System.String); + pNextLink.ParameterType = typeof(string); pNextLink.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -77,11 +77,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetListNextParameters() { string nextLink = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "NextLink" }, new object[] { nextLink }); + return ConvertFromObjectsToArguments( + new string[] { "NextLink" }, + new object[] { nextLink }); } } - [Cmdlet("Get", "AzureVMSSNextList")] + [Cmdlet("Get", "AzureVmssNextList", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class GetAzureVMSSNextList : InvokeAzureComputeMethodCmdlet { public GetAzureVMSSNextList() @@ -101,7 +103,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pNextLink = new RuntimeDefinedParameter(); pNextLink.Name = "NextLink"; - pNextLink.ParameterType = typeof(System.String); + pNextLink.ParameterType = typeof(string); pNextLink.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListSkusMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListSkusMethod.cs index dc87958f365e..e2b9bffa05cc 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListSkusMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetListSkusMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetListSkusDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetListSkusDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -91,11 +91,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetListSkusParameters() string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName" }, new object[] { resourceGroupName, vmScaleSetName }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName" }, + new object[] { resourceGroupName, vmScaleSetName }); } } - [Cmdlet("Get", "AzureVMSSSkusList")] + [Cmdlet("Get", "AzureVmssSkusList", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class GetAzureVMSSSkusList : InvokeAzureComputeMethodCmdlet { public GetAzureVMSSSkusList() @@ -115,7 +117,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -127,7 +129,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetPowerOffInstancesMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetPowerOffInstancesMethod.cs index f0121df1fcb8..d8e58b58717e 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetPowerOffInstancesMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetPowerOffInstancesMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetPowerOffInstancesDynamicParameters( dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetPowerOffInstancesDynamicParameters( var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetPowerOffInstancesDynamicParameters( var pVMInstanceIDs = new RuntimeDefinedParameter(); pVMInstanceIDs.Name = "VMInstanceIDs"; - pVMInstanceIDs.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMInstanceIDs); + pVMInstanceIDs.ParameterType = typeof(string[]); pVMInstanceIDs.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -90,7 +90,9 @@ protected void ExecuteVirtualMachineScaleSetPowerOffInstancesMethod(object[] inv { string resourceGroupName = (string)ParseParameter(invokeMethodInputParameters[0]); string vmScaleSetName = (string)ParseParameter(invokeMethodInputParameters[1]); - VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = (VirtualMachineScaleSetVMInstanceIDs)ParseParameter(invokeMethodInputParameters[2]); + var inputArray2 = Array.ConvertAll((object[]) ParseParameter(invokeMethodInputParameters[2]), e => e.ToString()); + VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = new VirtualMachineScaleSetVMInstanceIDs(); + vmInstanceIDs.InstanceIDs = inputArray2.ToList(); var result = VirtualMachineScaleSetClient.PowerOffInstances(resourceGroupName, vmScaleSetName, vmInstanceIDs); WriteObject(result); @@ -103,13 +105,15 @@ protected PSArgument[] CreateVirtualMachineScaleSetPowerOffInstancesParameters() { string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = new VirtualMachineScaleSetVMInstanceIDs(); + var vmInstanceIDs = new string[0]; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "VMInstanceIDs" }, new object[] { resourceGroupName, vmScaleSetName, vmInstanceIDs }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "VMInstanceIDs" }, + new object[] { resourceGroupName, vmScaleSetName, vmInstanceIDs }); } } - [Cmdlet("Stop", "AzureVMSSInstances")] + [Cmdlet("Stop", "AzureVmssInstances", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class StopAzureVMSSInstances : InvokeAzureComputeMethodCmdlet { public StopAzureVMSSInstances() @@ -129,7 +133,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +145,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +157,7 @@ public override object GetDynamicParameters() var pVMInstanceIDs = new RuntimeDefinedParameter(); pVMInstanceIDs.Name = "VMInstanceIDs"; - pVMInstanceIDs.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMInstanceIDs); + pVMInstanceIDs.ParameterType = typeof(string[]); pVMInstanceIDs.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetPowerOffMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetPowerOffMethod.cs index a927f9f46b81..19647871924f 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetPowerOffMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetPowerOffMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetPowerOffDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetPowerOffDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -91,11 +91,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetPowerOffParameters() string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName" }, new object[] { resourceGroupName, vmScaleSetName }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName" }, + new object[] { resourceGroupName, vmScaleSetName }); } } - [Cmdlet("Stop", "AzureVMSS")] + [Cmdlet("Stop", "AzureVmss", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class StopAzureVMSS : InvokeAzureComputeMethodCmdlet { public StopAzureVMSS() @@ -115,7 +117,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -127,7 +129,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetRestartInstancesMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetRestartInstancesMethod.cs index cae943e814d0..83db07e0889d 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetRestartInstancesMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetRestartInstancesMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetRestartInstancesDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetRestartInstancesDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetRestartInstancesDynamicParameters() var pVMInstanceIDs = new RuntimeDefinedParameter(); pVMInstanceIDs.Name = "VMInstanceIDs"; - pVMInstanceIDs.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMInstanceIDs); + pVMInstanceIDs.ParameterType = typeof(string[]); pVMInstanceIDs.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -90,7 +90,9 @@ protected void ExecuteVirtualMachineScaleSetRestartInstancesMethod(object[] invo { string resourceGroupName = (string)ParseParameter(invokeMethodInputParameters[0]); string vmScaleSetName = (string)ParseParameter(invokeMethodInputParameters[1]); - VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = (VirtualMachineScaleSetVMInstanceIDs)ParseParameter(invokeMethodInputParameters[2]); + var inputArray2 = Array.ConvertAll((object[]) ParseParameter(invokeMethodInputParameters[2]), e => e.ToString()); + VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = new VirtualMachineScaleSetVMInstanceIDs(); + vmInstanceIDs.InstanceIDs = inputArray2.ToList(); var result = VirtualMachineScaleSetClient.RestartInstances(resourceGroupName, vmScaleSetName, vmInstanceIDs); WriteObject(result); @@ -103,13 +105,15 @@ protected PSArgument[] CreateVirtualMachineScaleSetRestartInstancesParameters() { string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = new VirtualMachineScaleSetVMInstanceIDs(); + var vmInstanceIDs = new string[0]; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "VMInstanceIDs" }, new object[] { resourceGroupName, vmScaleSetName, vmInstanceIDs }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "VMInstanceIDs" }, + new object[] { resourceGroupName, vmScaleSetName, vmInstanceIDs }); } } - [Cmdlet("Restart", "AzureVMSSInstances")] + [Cmdlet("Restart", "AzureVmssInstances", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class RestartAzureVMSSInstances : InvokeAzureComputeMethodCmdlet { public RestartAzureVMSSInstances() @@ -129,7 +133,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +145,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +157,7 @@ public override object GetDynamicParameters() var pVMInstanceIDs = new RuntimeDefinedParameter(); pVMInstanceIDs.Name = "VMInstanceIDs"; - pVMInstanceIDs.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMInstanceIDs); + pVMInstanceIDs.ParameterType = typeof(string[]); pVMInstanceIDs.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetRestartMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetRestartMethod.cs index 55912f24f1db..a7a318829b1b 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetRestartMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetRestartMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetRestartDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetRestartDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -91,11 +91,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetRestartParameters() string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName" }, new object[] { resourceGroupName, vmScaleSetName }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName" }, + new object[] { resourceGroupName, vmScaleSetName }); } } - [Cmdlet("Restart", "AzureVMSS")] + [Cmdlet("Restart", "AzureVmss", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class RestartAzureVMSS : InvokeAzureComputeMethodCmdlet { public RestartAzureVMSS() @@ -115,7 +117,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -127,7 +129,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetStartInstancesMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetStartInstancesMethod.cs index 85ecdc3d4c71..5381b7f60af5 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetStartInstancesMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetStartInstancesMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetStartInstancesDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetStartInstancesDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetStartInstancesDynamicParameters() var pVMInstanceIDs = new RuntimeDefinedParameter(); pVMInstanceIDs.Name = "VMInstanceIDs"; - pVMInstanceIDs.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMInstanceIDs); + pVMInstanceIDs.ParameterType = typeof(string[]); pVMInstanceIDs.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -90,7 +90,9 @@ protected void ExecuteVirtualMachineScaleSetStartInstancesMethod(object[] invoke { string resourceGroupName = (string)ParseParameter(invokeMethodInputParameters[0]); string vmScaleSetName = (string)ParseParameter(invokeMethodInputParameters[1]); - VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = (VirtualMachineScaleSetVMInstanceIDs)ParseParameter(invokeMethodInputParameters[2]); + var inputArray2 = Array.ConvertAll((object[]) ParseParameter(invokeMethodInputParameters[2]), e => e.ToString()); + VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = new VirtualMachineScaleSetVMInstanceIDs(); + vmInstanceIDs.InstanceIDs = inputArray2.ToList(); var result = VirtualMachineScaleSetClient.StartInstances(resourceGroupName, vmScaleSetName, vmInstanceIDs); WriteObject(result); @@ -103,13 +105,15 @@ protected PSArgument[] CreateVirtualMachineScaleSetStartInstancesParameters() { string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = new VirtualMachineScaleSetVMInstanceIDs(); + var vmInstanceIDs = new string[0]; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "VMInstanceIDs" }, new object[] { resourceGroupName, vmScaleSetName, vmInstanceIDs }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "VMInstanceIDs" }, + new object[] { resourceGroupName, vmScaleSetName, vmInstanceIDs }); } } - [Cmdlet("Start", "AzureVMSSInstances")] + [Cmdlet("Start", "AzureVmssInstances", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class StartAzureVMSSInstances : InvokeAzureComputeMethodCmdlet { public StartAzureVMSSInstances() @@ -129,7 +133,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +145,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +157,7 @@ public override object GetDynamicParameters() var pVMInstanceIDs = new RuntimeDefinedParameter(); pVMInstanceIDs.Name = "VMInstanceIDs"; - pVMInstanceIDs.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMInstanceIDs); + pVMInstanceIDs.ParameterType = typeof(string[]); pVMInstanceIDs.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetStartMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetStartMethod.cs index ced2e5794db8..04d7680a5ac0 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetStartMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetStartMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetStartDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetStartDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -91,11 +91,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetStartParameters() string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName" }, new object[] { resourceGroupName, vmScaleSetName }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName" }, + new object[] { resourceGroupName, vmScaleSetName }); } } - [Cmdlet("Start", "AzureVMSS")] + [Cmdlet("Start", "AzureVmss", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class StartAzureVMSS : InvokeAzureComputeMethodCmdlet { public StartAzureVMSS() @@ -115,7 +117,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -127,7 +129,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetUpdateInstancesMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetUpdateInstancesMethod.cs index ea84ae51ece4..661598f52e8a 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetUpdateInstancesMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSet/VirtualMachineScaleSetUpdateInstancesMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetUpdateInstancesDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetUpdateInstancesDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetUpdateInstancesDynamicParameters() var pVMInstanceIDs = new RuntimeDefinedParameter(); pVMInstanceIDs.Name = "VMInstanceIDs"; - pVMInstanceIDs.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMInstanceIDs); + pVMInstanceIDs.ParameterType = typeof(string[]); pVMInstanceIDs.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -90,7 +90,9 @@ protected void ExecuteVirtualMachineScaleSetUpdateInstancesMethod(object[] invok { string resourceGroupName = (string)ParseParameter(invokeMethodInputParameters[0]); string vmScaleSetName = (string)ParseParameter(invokeMethodInputParameters[1]); - VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = (VirtualMachineScaleSetVMInstanceIDs)ParseParameter(invokeMethodInputParameters[2]); + var inputArray2 = Array.ConvertAll((object[]) ParseParameter(invokeMethodInputParameters[2]), e => e.ToString()); + VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = new VirtualMachineScaleSetVMInstanceIDs(); + vmInstanceIDs.InstanceIDs = inputArray2.ToList(); var result = VirtualMachineScaleSetClient.UpdateInstances(resourceGroupName, vmScaleSetName, vmInstanceIDs); WriteObject(result); @@ -103,13 +105,15 @@ protected PSArgument[] CreateVirtualMachineScaleSetUpdateInstancesParameters() { string resourceGroupName = string.Empty; string vmScaleSetName = string.Empty; - VirtualMachineScaleSetVMInstanceIDs vmInstanceIDs = new VirtualMachineScaleSetVMInstanceIDs(); + var vmInstanceIDs = new string[0]; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "VMInstanceIDs" }, new object[] { resourceGroupName, vmScaleSetName, vmInstanceIDs }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "VMInstanceIDs" }, + new object[] { resourceGroupName, vmScaleSetName, vmInstanceIDs }); } } - [Cmdlet("Update", "AzureVMSSInstances")] + [Cmdlet("Update", "AzureVmssInstances", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class UpdateAzureVMSSInstances : InvokeAzureComputeMethodCmdlet { public UpdateAzureVMSSInstances() @@ -129,7 +133,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +145,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +157,7 @@ public override object GetDynamicParameters() var pVMInstanceIDs = new RuntimeDefinedParameter(); pVMInstanceIDs.Name = "VMInstanceIDs"; - pVMInstanceIDs.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMInstanceIDs); + pVMInstanceIDs.ParameterType = typeof(string[]); pVMInstanceIDs.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMDeallocateMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMDeallocateMethod.cs index bd7b176a158c..830794fc8b32 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMDeallocateMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMDeallocateMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetVMDeallocateDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetVMDeallocateDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetVMDeallocateDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -105,11 +105,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetVMDeallocateParameters() string vmScaleSetName = string.Empty; string instanceId = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, new object[] { resourceGroupName, vmScaleSetName, instanceId }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, + new object[] { resourceGroupName, vmScaleSetName, instanceId }); } } - [Cmdlet("Stop", "AzureVMSSVMWithDeallocation")] + [Cmdlet("Stop", "AzureVmssVMWithDeallocation", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class StopAzureVMSSVMWithDeallocation : InvokeAzureComputeMethodCmdlet { public StopAzureVMSSVMWithDeallocation() @@ -129,7 +131,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +143,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +155,7 @@ public override object GetDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMDeleteMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMDeleteMethod.cs index 4f8720603044..391db9734f2a 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMDeleteMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMDeleteMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetVMDeleteDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetVMDeleteDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetVMDeleteDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -105,11 +105,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetVMDeleteParameters() string vmScaleSetName = string.Empty; string instanceId = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, new object[] { resourceGroupName, vmScaleSetName, instanceId }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, + new object[] { resourceGroupName, vmScaleSetName, instanceId }); } } - [Cmdlet("Remove", "AzureVMSSVM")] + [Cmdlet("Remove", "AzureVmssVM", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class RemoveAzureVMSSVM : InvokeAzureComputeMethodCmdlet { public RemoveAzureVMSSVM() @@ -129,7 +131,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +143,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +155,7 @@ public override object GetDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMGetInstanceViewMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMGetInstanceViewMethod.cs index b79a845bdfb6..6798265e3fd9 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMGetInstanceViewMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMGetInstanceViewMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetVMGetInstanceViewDynamicParameters( dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetVMGetInstanceViewDynamicParameters( var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetVMGetInstanceViewDynamicParameters( var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -105,11 +105,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetVMGetInstanceViewParameters() string vmScaleSetName = string.Empty; string instanceId = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, new object[] { resourceGroupName, vmScaleSetName, instanceId }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, + new object[] { resourceGroupName, vmScaleSetName, instanceId }); } } - [Cmdlet("Get", "AzureVMSSVMInstanceView")] + [Cmdlet("Get", "AzureVmssVMInstanceView", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class GetAzureVMSSVMInstanceView : InvokeAzureComputeMethodCmdlet { public GetAzureVMSSVMInstanceView() @@ -129,7 +131,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +143,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +155,7 @@ public override object GetDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMGetMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMGetMethod.cs index 9cbebe1ac5d7..2f6d3946ccc1 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMGetMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMGetMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetVMGetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetVMGetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetVMGetDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -105,11 +105,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetVMGetParameters() string vmScaleSetName = string.Empty; string instanceId = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, new object[] { resourceGroupName, vmScaleSetName, instanceId }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, + new object[] { resourceGroupName, vmScaleSetName, instanceId }); } } - [Cmdlet("Get", "AzureVMSSVM")] + [Cmdlet("Get", "AzureVmssVM", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class GetAzureVMSSVM : InvokeAzureComputeMethodCmdlet { public GetAzureVMSSVM() @@ -129,7 +131,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +143,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +155,7 @@ public override object GetDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMListMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMListMethod.cs index eb00f4e60eba..ab433234a4b5 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMListMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMListMethod.cs @@ -35,17 +35,65 @@ public partial class InvokeAzureComputeMethodCmdlet : ComputeAutomationBaseCmdle protected object CreateVirtualMachineScaleSetVMListDynamicParameters() { dynamicParameters = new RuntimeDefinedParameterDictionary(); - var pParameters = new RuntimeDefinedParameter(); - pParameters.Name = "VirtualMachineScaleSetVMListParameters"; - pParameters.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMListParameters); - pParameters.Attributes.Add(new ParameterAttribute + var pExpandExpression = new RuntimeDefinedParameter(); + pExpandExpression.Name = "ExpandExpression"; + pExpandExpression.ParameterType = typeof(string); + pExpandExpression.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", Position = 1, - Mandatory = true + Mandatory = false + }); + pExpandExpression.Attributes.Add(new AllowNullAttribute()); + dynamicParameters.Add("ExpandExpression", pExpandExpression); + + var pFilterExpression = new RuntimeDefinedParameter(); + pFilterExpression.Name = "FilterExpression"; + pFilterExpression.ParameterType = typeof(string); + pFilterExpression.Attributes.Add(new ParameterAttribute + { + ParameterSetName = "InvokeByDynamicParameters", + Position = 2, + Mandatory = false + }); + pFilterExpression.Attributes.Add(new AllowNullAttribute()); + dynamicParameters.Add("FilterExpression", pFilterExpression); + + var pResourceGroupName = new RuntimeDefinedParameter(); + pResourceGroupName.Name = "ResourceGroupName"; + pResourceGroupName.ParameterType = typeof(string); + pResourceGroupName.Attributes.Add(new ParameterAttribute + { + ParameterSetName = "InvokeByDynamicParameters", + Position = 3, + Mandatory = false }); - pParameters.Attributes.Add(new AllowNullAttribute()); - dynamicParameters.Add("VirtualMachineScaleSetVMListParameters", pParameters); + pResourceGroupName.Attributes.Add(new AllowNullAttribute()); + dynamicParameters.Add("ResourceGroupName", pResourceGroupName); + + var pSelectExpression = new RuntimeDefinedParameter(); + pSelectExpression.Name = "SelectExpression"; + pSelectExpression.ParameterType = typeof(string); + pSelectExpression.Attributes.Add(new ParameterAttribute + { + ParameterSetName = "InvokeByDynamicParameters", + Position = 4, + Mandatory = false + }); + pSelectExpression.Attributes.Add(new AllowNullAttribute()); + dynamicParameters.Add("SelectExpression", pSelectExpression); + + var pVirtualMachineScaleSetName = new RuntimeDefinedParameter(); + pVirtualMachineScaleSetName.Name = "VirtualMachineScaleSetName"; + pVirtualMachineScaleSetName.ParameterType = typeof(string); + pVirtualMachineScaleSetName.Attributes.Add(new ParameterAttribute + { + ParameterSetName = "InvokeByDynamicParameters", + Position = 5, + Mandatory = false + }); + pVirtualMachineScaleSetName.Attributes.Add(new AllowNullAttribute()); + dynamicParameters.Add("VirtualMachineScaleSetName", pVirtualMachineScaleSetName); var pArgumentList = new RuntimeDefinedParameter(); pArgumentList.Name = "ArgumentList"; @@ -53,7 +101,7 @@ protected object CreateVirtualMachineScaleSetVMListDynamicParameters() pArgumentList.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByStaticParameters", - Position = 2, + Position = 6, Mandatory = true }); pArgumentList.Attributes.Add(new AllowNullAttribute()); @@ -64,7 +112,17 @@ protected object CreateVirtualMachineScaleSetVMListDynamicParameters() protected void ExecuteVirtualMachineScaleSetVMListMethod(object[] invokeMethodInputParameters) { - VirtualMachineScaleSetVMListParameters parameters = (VirtualMachineScaleSetVMListParameters)ParseParameter(invokeMethodInputParameters[0]); + var parameters = new VirtualMachineScaleSetVMListParameters(); + var pExpandExpression = (string) ParseParameter(invokeMethodInputParameters[0]); + parameters.ExpandExpression = string.IsNullOrEmpty(pExpandExpression) ? null : pExpandExpression; + var pFilterExpression = (string) ParseParameter(invokeMethodInputParameters[1]); + parameters.FilterExpression = string.IsNullOrEmpty(pFilterExpression) ? null : pFilterExpression; + var pResourceGroupName = (string) ParseParameter(invokeMethodInputParameters[2]); + parameters.ResourceGroupName = string.IsNullOrEmpty(pResourceGroupName) ? null : pResourceGroupName; + var pSelectExpression = (string) ParseParameter(invokeMethodInputParameters[3]); + parameters.SelectExpression = string.IsNullOrEmpty(pSelectExpression) ? null : pSelectExpression; + var pVirtualMachineScaleSetName = (string) ParseParameter(invokeMethodInputParameters[4]); + parameters.VirtualMachineScaleSetName = string.IsNullOrEmpty(pVirtualMachineScaleSetName) ? null : pVirtualMachineScaleSetName; var result = VirtualMachineScaleSetVMClient.List(parameters); WriteObject(result); @@ -75,13 +133,19 @@ public partial class NewAzureComputeArgumentListCmdlet : ComputeAutomationBaseCm { protected PSArgument[] CreateVirtualMachineScaleSetVMListParameters() { - VirtualMachineScaleSetVMListParameters parameters = new VirtualMachineScaleSetVMListParameters(); + var pExpandExpression = string.Empty; + var pFilterExpression = string.Empty; + var pResourceGroupName = string.Empty; + var pSelectExpression = string.Empty; + var pVirtualMachineScaleSetName = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "Parameters" }, new object[] { parameters }); + return ConvertFromObjectsToArguments( + new string[] { "ExpandExpression", "FilterExpression", "ResourceGroupName", "SelectExpression", "VirtualMachineScaleSetName" }, + new object[] { pExpandExpression, pFilterExpression, pResourceGroupName, pSelectExpression, pVirtualMachineScaleSetName }); } } - [Cmdlet("Get", "AzureVMSSVMList")] + [Cmdlet("Get", "AzureVmssVMList", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class GetAzureVMSSVMList : InvokeAzureComputeMethodCmdlet { public GetAzureVMSSVMList() @@ -99,17 +163,65 @@ protected override void ProcessRecord() public override object GetDynamicParameters() { dynamicParameters = new RuntimeDefinedParameterDictionary(); - var pParameters = new RuntimeDefinedParameter(); - pParameters.Name = "VirtualMachineScaleSetVMListParameters"; - pParameters.ParameterType = typeof(Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMListParameters); - pParameters.Attributes.Add(new ParameterAttribute + var pExpandExpression = new RuntimeDefinedParameter(); + pExpandExpression.Name = "ExpandExpression"; + pExpandExpression.ParameterType = typeof(string); + pExpandExpression.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", Position = 1, - Mandatory = true + Mandatory = false + }); + pExpandExpression.Attributes.Add(new AllowNullAttribute()); + dynamicParameters.Add("ExpandExpression", pExpandExpression); + + var pFilterExpression = new RuntimeDefinedParameter(); + pFilterExpression.Name = "FilterExpression"; + pFilterExpression.ParameterType = typeof(string); + pFilterExpression.Attributes.Add(new ParameterAttribute + { + ParameterSetName = "InvokeByDynamicParameters", + Position = 2, + Mandatory = false + }); + pFilterExpression.Attributes.Add(new AllowNullAttribute()); + dynamicParameters.Add("FilterExpression", pFilterExpression); + + var pResourceGroupName = new RuntimeDefinedParameter(); + pResourceGroupName.Name = "ResourceGroupName"; + pResourceGroupName.ParameterType = typeof(string); + pResourceGroupName.Attributes.Add(new ParameterAttribute + { + ParameterSetName = "InvokeByDynamicParameters", + Position = 3, + Mandatory = false }); - pParameters.Attributes.Add(new AllowNullAttribute()); - dynamicParameters.Add("VirtualMachineScaleSetVMListParameters", pParameters); + pResourceGroupName.Attributes.Add(new AllowNullAttribute()); + dynamicParameters.Add("ResourceGroupName", pResourceGroupName); + + var pSelectExpression = new RuntimeDefinedParameter(); + pSelectExpression.Name = "SelectExpression"; + pSelectExpression.ParameterType = typeof(string); + pSelectExpression.Attributes.Add(new ParameterAttribute + { + ParameterSetName = "InvokeByDynamicParameters", + Position = 4, + Mandatory = false + }); + pSelectExpression.Attributes.Add(new AllowNullAttribute()); + dynamicParameters.Add("SelectExpression", pSelectExpression); + + var pVirtualMachineScaleSetName = new RuntimeDefinedParameter(); + pVirtualMachineScaleSetName.Name = "VirtualMachineScaleSetName"; + pVirtualMachineScaleSetName.ParameterType = typeof(string); + pVirtualMachineScaleSetName.Attributes.Add(new ParameterAttribute + { + ParameterSetName = "InvokeByDynamicParameters", + Position = 5, + Mandatory = false + }); + pVirtualMachineScaleSetName.Attributes.Add(new AllowNullAttribute()); + dynamicParameters.Add("VirtualMachineScaleSetName", pVirtualMachineScaleSetName); var pArgumentList = new RuntimeDefinedParameter(); pArgumentList.Name = "ArgumentList"; @@ -117,7 +229,7 @@ public override object GetDynamicParameters() pArgumentList.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByStaticParameters", - Position = 2, + Position = 6, Mandatory = true }); pArgumentList.Attributes.Add(new AllowNullAttribute()); diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMPowerOffMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMPowerOffMethod.cs index 2c4ff56b9ddd..98bd54eef76d 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMPowerOffMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMPowerOffMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetVMPowerOffDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetVMPowerOffDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetVMPowerOffDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -105,11 +105,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetVMPowerOffParameters() string vmScaleSetName = string.Empty; string instanceId = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, new object[] { resourceGroupName, vmScaleSetName, instanceId }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, + new object[] { resourceGroupName, vmScaleSetName, instanceId }); } } - [Cmdlet("Stop", "AzureVMSSVM")] + [Cmdlet("Stop", "AzureVmssVM", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class StopAzureVMSSVM : InvokeAzureComputeMethodCmdlet { public StopAzureVMSSVM() @@ -129,7 +131,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +143,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +155,7 @@ public override object GetDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMRestartMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMRestartMethod.cs index 6b05b1cf12ac..091b3d41d2b8 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMRestartMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMRestartMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetVMRestartDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetVMRestartDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetVMRestartDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -105,11 +105,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetVMRestartParameters() string vmScaleSetName = string.Empty; string instanceId = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, new object[] { resourceGroupName, vmScaleSetName, instanceId }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, + new object[] { resourceGroupName, vmScaleSetName, instanceId }); } } - [Cmdlet("Restart", "AzureVMSSVM")] + [Cmdlet("Restart", "AzureVmssVM", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class RestartAzureVMSSVM : InvokeAzureComputeMethodCmdlet { public RestartAzureVMSSVM() @@ -129,7 +131,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +143,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +155,7 @@ public override object GetDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMStartMethod.cs b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMStartMethod.cs index ce51b57dbe33..159410bc0424 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMStartMethod.cs +++ b/src/ResourceManager/Compute/Commands.Compute/Generated/VirtualMachineScaleSetVM/VirtualMachineScaleSetVMStartMethod.cs @@ -37,7 +37,7 @@ protected object CreateVirtualMachineScaleSetVMStartDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -49,7 +49,7 @@ protected object CreateVirtualMachineScaleSetVMStartDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -61,7 +61,7 @@ protected object CreateVirtualMachineScaleSetVMStartDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -105,11 +105,13 @@ protected PSArgument[] CreateVirtualMachineScaleSetVMStartParameters() string vmScaleSetName = string.Empty; string instanceId = string.Empty; - return ConvertFromObjectsToArguments(new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, new object[] { resourceGroupName, vmScaleSetName, instanceId }); + return ConvertFromObjectsToArguments( + new string[] { "ResourceGroupName", "VMScaleSetName", "InstanceId" }, + new object[] { resourceGroupName, vmScaleSetName, instanceId }); } } - [Cmdlet("Start", "AzureVMSSVM")] + [Cmdlet("Start", "AzureVmssVM", DefaultParameterSetName = "InvokeByDynamicParameters")] public partial class StartAzureVMSSVM : InvokeAzureComputeMethodCmdlet { public StartAzureVMSSVM() @@ -129,7 +131,7 @@ public override object GetDynamicParameters() dynamicParameters = new RuntimeDefinedParameterDictionary(); var pResourceGroupName = new RuntimeDefinedParameter(); pResourceGroupName.Name = "ResourceGroupName"; - pResourceGroupName.ParameterType = typeof(System.String); + pResourceGroupName.ParameterType = typeof(string); pResourceGroupName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -141,7 +143,7 @@ public override object GetDynamicParameters() var pVMScaleSetName = new RuntimeDefinedParameter(); pVMScaleSetName.Name = "VMScaleSetName"; - pVMScaleSetName.ParameterType = typeof(System.String); + pVMScaleSetName.ParameterType = typeof(string); pVMScaleSetName.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -153,7 +155,7 @@ public override object GetDynamicParameters() var pInstanceId = new RuntimeDefinedParameter(); pInstanceId.Name = "InstanceId"; - pInstanceId.ParameterType = typeof(System.String); + pInstanceId.ParameterType = typeof(string); pInstanceId.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", diff --git a/src/ServiceManagement/Compute/Commands.ServiceManagement.Preview/Automation/RunCodeGeneration.ps1 b/src/ServiceManagement/Compute/Commands.ServiceManagement.Preview/Automation/RunCodeGeneration.ps1 index 5658a7737792..48ee1e669ec4 100644 --- a/src/ServiceManagement/Compute/Commands.ServiceManagement.Preview/Automation/RunCodeGeneration.ps1 +++ b/src/ServiceManagement/Compute/Commands.ServiceManagement.Preview/Automation/RunCodeGeneration.ps1 @@ -68,6 +68,8 @@ $verbs_common_new = "VerbsCommon.New"; $verbs_lifecycle_invoke = "VerbsLifecycle.Invoke"; $client_model_namespace = $client_library_namespace + '.Models'; +#$verbosePreference='Continue'; + $common_verb_mapping = @{ "CreateOrUpdate" = "New"; @@ -198,6 +200,47 @@ function Get-NormalizedTypeName return $outputName; } +function Is-ListStringType +{ + # This function returns $true if the given property info contains only a list of strings. + param( + [Parameter(Mandatory = $True)] + [System.Reflection.PropertyInfo[]]$property_info_array + ) + + if ($property_info_array.Count -eq 1) + { + return ($property_info_array[0].PropertyType.FullName -like '*List*System.String*') + } + + return $false; +} + +function Get-StringTypes +{ + # This function returns an array of string types, if a given property info array contains only string types. + # It returns $null, otherwise. + param( + [Parameter(Mandatory = $True)] + [System.Reflection.PropertyInfo[]]$property_info_array + ) + + $return_string_array = @(); + foreach ($prop in $property_info_array) + { + if ($prop.PropertyType.FullName -eq "System.String") + { + $return_string_array += $prop.Name; + } + else + { + return $null; + } + } + + return $return_string_array; +} + function Get-ConstructorCodeByNormalizedTypeName { param( @@ -297,7 +340,7 @@ function Get-FilteredOperationTypes ) $op_types = $all_assembly_types | where { $_.Namespace -eq $dll_name -and $_.Name -like 'I*Operations' }; - + Write-Verbose $BAR_LINE; Write-Verbose 'All Operation Types:'; foreach ($op_type in $op_types) @@ -552,6 +595,11 @@ namespace ${code_common_namespace} protected static object[] ConvertFromArgumentsToObjects(object[] arguments) { + if (arguments == null) + { + return null; + } + var objects = new object[arguments.Length]; for (int index = 0; index < arguments.Length; index++) @@ -1300,6 +1348,7 @@ function Write-OperationCmdletFile $params = $operation_method_info.GetParameters(); [System.Collections.ArrayList]$param_names = @(); + [System.Collections.ArrayList]$pruned_params = @(); [System.Collections.ArrayList]$invoke_param_names = @(); [System.Collections.ArrayList]$invoke_local_param_names = @(); [System.Collections.ArrayList]$create_local_param_names = @(); @@ -1317,6 +1366,31 @@ function Write-OperationCmdletFile $paramTypeNormalizedName = Get-NormalizedTypeName -inputName $paramTypeFullName; $param_constructor_code = Get-ConstructorCodeByNormalizedTypeName -inputName $paramTypeNormalizedName; + $is_special_type = $paramTypeFullName.StartsWith($client_model_namespace_prefix); + $has_properties = $true; + if ($is_special_type) + { + $properties_of_special_type = $pt.ParameterType.GetProperties(); + if ($properties_of_special_type.Count -eq 0) + { + $has_properties = $false; + } + } + + $is_string_list = $false; + $does_contain_only_strings = $null; + if ($has_properties) + { + $is_string_list = Is-ListStringType -property_info_array $pt.ParameterType.GetProperties(); + $does_contain_only_strings = Get-StringTypes -property_info_array $pt.ParameterType.GetProperties(); + } + + $only_strings = $true; + if (($does_contain_only_strings -eq $null) -or ($does_contain_only_strings.Count -eq 0)) + { + $only_strings = $false; + } + $param_attributes = $indents + "[Parameter(Mandatory = true"; $invoke_param_attributes = $indents + "[Parameter(ParameterSetName = `"${invoke_param_set_name}`", Position = ${position_index}, Mandatory = true"; if ((Is-PipingPropertyName $normalized_param_name) -and (Is-PipingPropertyTypeName $paramTypeNormalizedName)) @@ -1331,23 +1405,85 @@ function Write-OperationCmdletFile $param_definition = $indents + "public ${paramTypeNormalizedName} ${normalized_param_name} " + $get_set_block + $NEW_LINE; $invoke_param_definition = $indents + "public ${paramTypeNormalizedName} ${invoke_param_set_name}${normalized_param_name} " + $get_set_block + $NEW_LINE; $param_index = $position_index - 1; - $invoke_local_param_definition = $indents + (' ' * 4) + "${paramTypeNormalizedName} " + $pt.Name + " = (${paramTypeNormalizedName})ParseParameter(${invoke_input_params_name}[${param_index}]);"; - $create_local_param_definition = $indents + (' ' * 4) + "${paramTypeNormalizedName} " + $pt.Name + " = ${param_constructor_code};"; + + if ($only_strings) + { + # Case 1: the parameter type contains only string types. + $invoke_local_param_definition = $indents + (' ' * 4) + "var " + $pt.Name + " = new ${paramTypeNormalizedName}();" + $NEW_LINE; + + foreach ($param in $does_contain_only_strings) + { + $invoke_local_param_definition += $indents + (' ' * 4) + "var p${param} = (string) ParseParameter(${invoke_input_params_name}[${param_index}]);" + $NEW_LINE; + $invoke_local_param_definition += $indents + (' ' * 4) + $pt.Name + ".${param} = string.IsNullOrEmpty(p${param}) ? null : p${param};" + $NEW_LINE; + $param_index += 1; + $position_index += 1; + } + } + elseif ($has_properties -and $is_string_list) + { + # Case 2: the parameter type contains only a list of strings. + $list_of_strings_property = ($pt.ParameterType.GetProperties())[0].Name; + $invoke_local_param_definition = $indents + (' ' * 4) + "var inputArray${param_index} = Array.ConvertAll((object[]) ParseParameter(${invoke_input_params_name}[${param_index}]), e => e.ToString());" + $NEW_LINE; + $invoke_local_param_definition += $indents + (' ' * 4) + "${paramTypeNormalizedName} " + $pt.Name + " = new ${paramTypeNormalizedName}();" + $NEW_LINE; + $invoke_local_param_definition += $indents + (' ' * 4) + $pt.Name + ".${list_of_strings_property} = inputArray${param_index}.ToList();" + $NEW_LINE; + } + elseif ($has_properties) + { + # Case 3: this is the most general case. + $invoke_local_param_definition = $indents + (' ' * 4) + "${paramTypeNormalizedName} " + $pt.Name + " = (${paramTypeNormalizedName})ParseParameter(${invoke_input_params_name}[${param_index}]);" + $NEW_LINE; + } + else + { + # Case 4: the parameter does not contain anything. + $invoke_local_param_definition = $indents + (' ' * 4) + "${paramTypeNormalizedName} " + $pt.Name + " = new ${paramTypeNormalizedName}();" + $NEW_LINE; + } + + + if ($only_strings) + { + # Case 1: the parameter type contains only string types. + foreach ($param in $does_contain_only_strings) + { + $create_local_param_definition += $indents + (' ' * 4) + "var p${param} = string.Empty;" + $NEW_LINE; + $param_index += 1; + $position_index += 1; + $param_names += ${param}; + $invoke_local_param_names += "p${param}"; + } + } + elseif ($is_string_list) + { + # Case 2: the parameter type contains only a list of strings. + $create_local_param_definition = $indents + (' ' * 4) + "var " + $pt.Name + " = new string[0];" + $NEW_LINE; + } + else + { + # Case 3: this is the most general case. + $create_local_param_definition = $indents + (' ' * 4) + "${paramTypeNormalizedName} " + $pt.Name + " = ${param_constructor_code};" + $NEW_LINE; + } + $param_code_content = $param_attributes + $param_definition; # For Invoke Method $invoke_param_definition = $indents + "public ${paramTypeNormalizedName} ${invoke_param_set_name}${normalized_param_name} " + $get_set_block + $NEW_LINE; $invoke_param_code_content += $invoke_param_attributes + $invoke_param_definition + $NEW_LINE; - $invoke_local_param_code_content += $invoke_local_param_definition + $NEW_LINE; - $create_local_param_code_content += $create_local_param_definition + $NEW_LINE; + $invoke_local_param_code_content += $invoke_local_param_definition; + $create_local_param_code_content += $create_local_param_definition; $cmdlet_generated_code += $param_code_content + $NEW_LINE; - $st = $param_names.Add($normalized_param_name); - $st = $invoke_param_names.Add((${invoke_param_set_name} + $normalized_param_name)); - $st = $invoke_local_param_names.Add($pt.Name); + if (-not $only_strings) + { + $st = $param_names.Add($normalized_param_name); + $st = $invoke_local_param_names.Add($pt.Name); + } + $st = $invoke_param_names.Add($pt.Name); $position_index += 1; + if ($has_properties) + { + $pruned_params.Add($pt); + } } } @@ -1374,26 +1510,47 @@ function Write-OperationCmdletFile $dynamic_param_assignment_code_lines = @(); $param_index = 1; - foreach ($pt in $params) + foreach ($pt in $pruned_params) { $param_type_full_name = $pt.ParameterType.FullName; + if ($param_type_full_name.EndsWith('CancellationToken')) { continue; } + $is_string_list = Is-ListStringType -property_info_array $pt.ParameterType.GetProperties(); + $does_contain_only_strings = Get-StringTypes -property_info_array $pt.ParameterType.GetProperties(); + $param_name = Get-NormalizedName $pt.Name; $expose_param_name = $param_name; + + $param_type_full_name = Get-NormalizedTypeName -inputName $param_type_full_name; + if ($expose_param_name -like '*Parameters') { $expose_param_name = $invoke_param_set_name + $expose_param_name; } - $dynamic_param_assignment_code_lines += + if (($does_contain_only_strings -eq $null) -or ($does_contain_only_strings.Count -eq 0)) + { + $dynamic_param_assignment_code_lines += @" var p${param_name} = new RuntimeDefinedParameter(); p${param_name}.Name = `"${expose_param_name}`"; - p${param_name}.ParameterType = typeof($param_type_full_name); +"@; + + if ($is_string_list) + { + $dynamic_param_assignment_code_lines += " p${param_name}.ParameterType = typeof(string[]);"; + } + else + { + $dynamic_param_assignment_code_lines += " p${param_name}.ParameterType = typeof($param_type_full_name);"; + } + + $dynamic_param_assignment_code_lines += +@" p${param_name}.Attributes.Add(new ParameterAttribute { ParameterSetName = "InvokeByDynamicParameters", @@ -1404,7 +1561,30 @@ function Write-OperationCmdletFile dynamicParameters.Add(`"${expose_param_name}`", p${param_name}); "@; - $param_index += 1; + $param_index += 1; + } + else + { + foreach ($s in $does_contain_only_strings) + { + $dynamic_param_assignment_code_lines += +@" + var p${s} = new RuntimeDefinedParameter(); + p${s}.Name = `"${s}`"; + p${s}.ParameterType = typeof(string); + p${s}.Attributes.Add(new ParameterAttribute + { + ParameterSetName = "InvokeByDynamicParameters", + Position = $param_index, + Mandatory = false + }); + p${s}.Attributes.Add(new AllowNullAttribute()); + dynamicParameters.Add(`"${s}`", p${s}); + +"@; + $param_index += 1; + } + } } $param_name = $expose_param_name = 'ArgumentList'; @@ -1442,19 +1622,35 @@ $dynamic_param_assignment_code protected void Execute${invoke_param_set_name}Method(object[] ${invoke_input_params_name}) { ${invoke_local_param_code_content} - var result = ${opShortName}Client.${methodName}(${invoke_local_params_join_str}); + var result = ${opShortName}Client.${methodName}(${invoke_params_join_str}); WriteObject(result); } "@; - $parameter_cmdlt_source_template = + if ($has_properties) + { + $parameter_cmdlt_source_template = @" protected PSArgument[] Create${invoke_param_set_name}Parameters() { ${create_local_param_code_content} - return ConvertFromObjectsToArguments(new string[] { $invoke_local_param_names_join_str }, new object[] { ${invoke_local_params_join_str} }); + return ConvertFromObjectsToArguments( + new string[] { $invoke_local_param_names_join_str }, + new object[] { ${invoke_local_params_join_str} }); } "@; + } + else + { + $parameter_cmdlt_source_template = +@" + protected PSArgument[] Create${invoke_param_set_name}Parameters() + { + return ConvertFromObjectsToArguments(new string[0], new object[0]); + } +"@; + } + # 1. Invoke Cmdlet Partial Code # 2. Param Cmdlet Partial Code @@ -1486,11 +1682,12 @@ $parameter_cmdlt_source_template if ($cmdletFlavor -eq 'Verb') { # If the Cmdlet Flavor is 'Verb', generate the Verb-based cmdlet code + $mapped_noun_str = $mapped_noun_str.Replace("VMSS", "Vmss"); $cmdlet_partial_class_code += @" - [Cmdlet(`"${mapped_verb_name}`", `"${mapped_noun_str}`")] + [Cmdlet(`"${mapped_verb_name}`", `"${mapped_noun_str}`", DefaultParameterSetName = `"InvokeByDynamicParameters`")] public partial class $verb_cmdlet_name : ${invoke_cmdlet_class_name} { public $verb_cmdlet_name() @@ -2210,7 +2407,7 @@ else # Skip 'Begin*ing*' Calls for Now... continue; } - + # Output Info for Method Signature Write-Verbose ""; Write-Verbose $SEC_LINE; diff --git a/src/ServiceManagement/Compute/Commands.ServiceManagement.Preview/Commands.ServiceManagement.Preview.csproj b/src/ServiceManagement/Compute/Commands.ServiceManagement.Preview/Commands.ServiceManagement.Preview.csproj index 07bd3b853480..68c594afb1ef 100644 --- a/src/ServiceManagement/Compute/Commands.ServiceManagement.Preview/Commands.ServiceManagement.Preview.csproj +++ b/src/ServiceManagement/Compute/Commands.ServiceManagement.Preview/Commands.ServiceManagement.Preview.csproj @@ -372,4 +372,19 @@ + + + %WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe + ".\Automation\RunCodeGeneration.ps1" + $(OutputPath) + "Microsoft.Azure.Commands.Compute.ComputeClientBaseCmdlet" + "ComputeClient.ComputeManagementClient" + "Microsoft.Azure.Management.Compute" + ..\..\..\ResourceManager\Compute\Commands.Compute + Verb + None + "VirtualMachineScaleSet","VirtualMachineScaleSetVM" + + + \ No newline at end of file