Exemplo n.º 1
0
        public void AssignLicense(List <CheckableDataGridViewRow> rowsChecked)
        {
            if (rowsChecked.Any(r => !r.XenObject.Connection.IsConnected))
            {
                ShowPoolHostNotConnectedError();
                SummariseDisconnectedRows(rowsChecked);
                ResetButtonEnablement();
                return;
            }

            List <LicenseDataGridViewRow> licenseRows = rowsChecked.ConvertAll(r => r as LicenseDataGridViewRow).
                                                        Where(lr => lr.CanUseLicenseServer).ToList();

            if (licenseRows.Count > 0)
            {
                AssignLicenseDialog ald = new AssignLicenseDialog(licenseRows.ConvertAll(r => r.XenObject),
                                                                  licenseRows.First().LicenseServerAddress,
                                                                  licenseRows.First().LicenseServerPort);
                ald.ShowDialog(View.Parent);
            }
            else
            {
                Debug.Assert(rowsChecked.Count == 1, "rowsChecked.Count == 1");
                List <LicenseDataGridViewRow> validRows = rowsChecked.ConvertAll(r => r as LicenseDataGridViewRow);
                Debug.Assert(!validRows[0].CanUseLicenseServer, "Should not be able to use the license server");
                new OpenLicenseFileDialog(View.Parent, RowsToHosts(validRows)[0], Messages.INSTALL_LICENSE_KEY, false).ShowDialogAndRunAction();
            }

            licenseRows.ForEach(r => r.BeginCellUpdate());
            SummariseDisconnectedRows(rowsChecked);
            ResetButtonEnablement();
        }
Exemplo n.º 2
0
        public void AssignLicense(List <CheckableDataGridViewRow> rowsChecked)
        {
            if (rowsChecked.Any(r => !r.XenObject.Connection.IsConnected))
            {
                ShowPoolHostNotConnectedError();
                SummariseDisconnectedRows(rowsChecked);
                ResetButtonEnablement();
                return;
            }

            List <LicenseDataGridViewRow> licenseRows = rowsChecked.ConvertAll(r => r as LicenseDataGridViewRow);
            AssignLicenseDialog           ald         = new AssignLicenseDialog(licenseRows.ConvertAll(r => r.XenObject),
                                                                                licenseRows.First().LicenseServerAddress,
                                                                                licenseRows.First().LicenseServerPort,
                                                                                licenseRows.First().LicenseEdition);

            ald.ShowDialog(View.Parent);

            SummariseDisconnectedRows(rowsChecked);
            ResetButtonEnablement();
        }
        public void AssignLicense(List <CheckableDataGridViewRow> rowsChecked)
        {
            if (rowsChecked.Any(r => !r.XenObject.Connection.IsConnected))
            {
                ShowPoolHostNotConnectedError();
                SummariseDisconnectedRows(rowsChecked);
                ResetButtonEnablement();
                return;
            }

            var licenseRows = rowsChecked.ConvertAll(r => r as LicenseDataGridViewRow);
            var row         = licenseRows.FirstOrDefault();
            var xenObjects  = licenseRows.ConvertAll(r => r.XenObject);

            if (row != null && xenObjects.Count > 0)
            {
                using (var ald = new AssignLicenseDialog(xenObjects,
                                                         row.LicenseServerAddress, row.LicenseServerPort, row.LicenseEdition))
                    ald.ShowDialog(View.Parent);
            }

            SummariseDisconnectedRows(rowsChecked);
            ResetButtonEnablement();
        }
        public void AssignLicense(List<CheckableDataGridViewRow> rowsChecked)
        {
            if (rowsChecked.Any(r => !r.XenObject.Connection.IsConnected))
            {
                ShowPoolHostNotConnectedError();
                SummariseDisconnectedRows(rowsChecked);
                ResetButtonEnablement();
                return;
            }

            List<LicenseDataGridViewRow> licenseRows = rowsChecked.ConvertAll(r => r as LicenseDataGridViewRow).
                Where(lr => lr.CanUseLicenseServer).ToList();

            if(licenseRows.Count > 0)
            {
                AssignLicenseDialog ald = new AssignLicenseDialog(licenseRows.ConvertAll(r=>r.XenObject),
                                                                  licenseRows.First().LicenseServerAddress,
                                                                  licenseRows.First().LicenseServerPort);
                ald.ShowDialog(View.Parent);
            }
            else
            {
                Debug.Assert(rowsChecked.Count == 1, "rowsChecked.Count == 1");
                List<LicenseDataGridViewRow> validRows = rowsChecked.ConvertAll(r => r as LicenseDataGridViewRow);
                Debug.Assert(!validRows[0].CanUseLicenseServer, "Should not be able to use the license server");
                new OpenLicenseFileDialog(View.Parent, RowsToHosts(validRows)[0], Messages.INSTALL_LICENSE_KEY, false).ShowDialogAndRunAction();
            }

            licenseRows.ForEach(r => r.BeginCellUpdate());
            SummariseDisconnectedRows(rowsChecked);
            ResetButtonEnablement();
        }