Example #1
0
        private void rbStorageAccountInMigration_CheckedChanged(object sender, EventArgs e)
        {
            RadioButton rbSender = (RadioButton)sender;

            if (rbSender.Checked)
            {
                cmbTargetStorage.Items.Clear();

                TreeNode targetResourceGroupNode = _AsmToArmForm.SeekARMChildTreeNode(_AsmToArmForm.TargetResourceGroup.Name, _AsmToArmForm.TargetResourceGroup.GetFinalTargetName(), _AsmToArmForm.TargetResourceGroup, false);
                TreeNode storageAccountsNode     = _AsmToArmForm.SeekARMChildTreeNode(targetResourceGroupNode.Nodes, "Storage Accounts", "Storage Accounts", "Storage Accounts", false);

                if (storageAccountsNode != null)
                {
                    foreach (TreeNode armStorageAccountNode in storageAccountsNode.Nodes)
                    {
                        TreeNode asmStorageAccountNode = (TreeNode)armStorageAccountNode.Tag;
                        cmbTargetStorage.Items.Add(asmStorageAccountNode.Tag);
                    }
                }

                if ((_AsmDataDisk.TargetStorageAccount == null) || (_AsmDataDisk.TargetStorageAccount.GetType() == typeof(ArmStorageAccount)))
                {
                    foreach (AsmStorageAccount asmStorageAccount in cmbTargetStorage.Items)
                    {
                        if (asmStorageAccount.Name == _AsmDataDisk.StorageAccountName)
                        {
                            cmbTargetStorage.SelectedItem = asmStorageAccount;
                            break;
                        }
                    }

                    // In the event we couldn't find the target default storage account, alert user and select default
                    if (_AsmDataDisk.TargetStorageAccount == null)
                    {
                        MessageBox.Show("Unable to location originating ASM Storage Account '" + _AsmDataDisk.StorageAccountName + "' as an object included for ASM to ARM migration.  Please select a target storage account for the Azure Disk.");
                    }
                }
                else
                {
                    foreach (AsmStorageAccount asmStorageAccount in cmbTargetStorage.Items)
                    {
                        if (asmStorageAccount.Id == _AsmDataDisk.TargetStorageAccount.Id)
                        {
                            cmbTargetStorage.SelectedItem = asmStorageAccount;
                            break;
                        }
                    }

                    if (cmbTargetStorage.SelectedItem == null)
                    {
                        MessageBox.Show("Unable to location previously selected ASM Storage Account '" + _AsmDataDisk.TargetStorageAccount.Id + "' as an object included for ASM to ARM migration.  Please select a target storage account for the Azure Disk.");
                    }
                }
            }
        }
Example #2
0
        private async void rbVNetInMigration_CheckedChanged(object sender, EventArgs e)
        {
            TreeNode          asmTreeNode       = (TreeNode)_VirtualMachineNode.Tag;
            AsmVirtualMachine asmVirtualMachine = (AsmVirtualMachine)asmTreeNode.Tag;
            RadioButton       rb = (RadioButton)sender;

            if (rb.Checked)
            {
                cmbExistingArmVNets.Items.Clear();
                cmbExistingArmSubnet.Items.Clear();

                TreeNode targetResourceGroupNode = _AsmToArmForm.SeekARMChildTreeNode(_AsmToArmForm.TargetResourceGroup.Name, _AsmToArmForm.TargetResourceGroup.GetFinalTargetName(), _AsmToArmForm.TargetResourceGroup, false);
                TreeNode virtualNetworksNode     = _AsmToArmForm.SeekARMChildTreeNode(targetResourceGroupNode.Nodes, "Virtual Networks", "Virtual Networks", "Virtual Networks", false);

                if (virtualNetworksNode != null)
                {
                    foreach (TreeNode asmVirtualNetworkNode in virtualNetworksNode.Nodes)
                    {
                        TreeNode asmVirtualNetworkAsmParentNode = (TreeNode)asmVirtualNetworkNode.Tag;

                        if (((AsmVirtualNetwork)asmVirtualNetworkAsmParentNode.Tag).HasNonGatewaySubnet)
                        {
                            cmbExistingArmVNets.Items.Add(asmVirtualNetworkAsmParentNode.Tag);
                        }
                    }
                }

                if (asmVirtualMachine.TargetVirtualNetwork != null)
                {
                    // Attempt to match target to list items
                    foreach (AsmVirtualNetwork listVirtualNetwork in cmbExistingArmVNets.Items)
                    {
                        if (listVirtualNetwork.Id == asmVirtualMachine.TargetVirtualNetwork.Id)
                        {
                            cmbExistingArmVNets.SelectedItem = listVirtualNetwork;
                        }
                    }

                    if (cmbExistingArmVNets.SelectedItem != null && asmVirtualMachine.TargetSubnet != null)
                    {
                        foreach (AsmSubnet listSubnet in cmbExistingArmSubnet.Items)
                        {
                            if (listSubnet.Id == asmVirtualMachine.TargetSubnet.Id)
                            {
                                cmbExistingArmSubnet.SelectedItem = listSubnet;
                            }
                        }
                    }
                }

                if ((cmbExistingArmVNets.SelectedItem == null) && (cmbExistingArmVNets.Items.Count > 0))
                {
                    foreach (AsmVirtualNetwork listVirtualNetwork in cmbExistingArmVNets.Items)
                    {
                        if (listVirtualNetwork.Name == asmVirtualMachine.VirtualNetworkName)
                        {
                            cmbExistingArmVNets.SelectedItem = listVirtualNetwork;
                        }
                    }

                    if (cmbExistingArmVNets.SelectedItem == null)
                    {
                        cmbExistingArmVNets.SelectedIndex = 0;
                    }
                }

                if ((cmbExistingArmSubnet.SelectedItem == null) && (cmbExistingArmSubnet.Items.Count > 0))
                {
                    foreach (AsmSubnet listSubnet in cmbExistingArmSubnet.Items)
                    {
                        if (listSubnet.Name == asmVirtualMachine.SubnetName)
                        {
                            cmbExistingArmSubnet.SelectedItem = listSubnet;
                        }
                    }

                    if (cmbExistingArmSubnet.SelectedItem == null)
                    {
                        cmbExistingArmSubnet.SelectedIndex = 0;
                    }
                }
            }
        }