Пример #1
0
        protected override bool RunNextPagePrecheck(XenTabPage senderPage)
        {
            // if reattaching and RBAC warning page is visible, then we run the prechecks when leaving the RBAC warning page
            // otherwise, when leaving xenTabPageSrName (Ref. CA-61525)
            bool runPrechecks = _srToReattach != null && _rbac
                                    ? senderPage == xenTabPageRbacWarning
                                    : senderPage == xenTabPageSrName;

            if (runPrechecks)
            {
                if (m_srWizardType is SrWizardType_LvmoHba)
                {
                    return(SetFCDevicesOnLVMoHBAPage());
                }
                if (m_srWizardType is SrWizardType_Cslg || m_srWizardType is SrWizardType_NetApp || m_srWizardType is SrWizardType_EqualLogic)
                {
                    xenTabPageCslg.SrWizardType = m_srWizardType;
                    return(xenTabPageCslg.PerformStorageSystemScan());
                }
            }

            if (senderPage == xenTabPageLvmoHba)
            {
                return(CanShowLVMoHBASummaryPage());
            }

            return(base.RunNextPagePrecheck(senderPage));
        }
Пример #2
0
        protected override bool RunNextPagePrecheck(XenTabPage senderPage)
        {
            // if reattaching and RBAC warning page is visible, then we run the prechecks when leaving the RBAC warning page
            // otherwise, when leaving xenTabPageSrName (Ref. CA-61525)
            bool runPrechecks = _srToReattach != null && _rbac
                                    ? senderPage == xenTabPageRbacWarning
                                    : senderPage == xenTabPageSrName;

            if (runPrechecks)
            {
                if (m_srWizardType is SrWizardType_Fcoe)
                {
                    return(SetFCDevicesOnLVMoHBAPage(xenTabPageLvmoFcoe));
                }
                if (m_srWizardType is SrWizardType_LvmoHba)
                {
                    return(SetFCDevicesOnLVMoHBAPage(xenTabPageLvmoHba));
                }
                if (m_srWizardType is SrWizardType_Cslg || m_srWizardType is SrWizardType_NetApp || m_srWizardType is SrWizardType_EqualLogic)
                {
                    xenTabPageCslg.SrWizardType = m_srWizardType;
                    return(xenTabPageCslg.PerformStorageSystemScan());
                }
            }

            if (senderPage == xenTabPageLvmoFcoe)
            {
                return(CanShowLVMoHBASummaryPage(xenTabPageLvmoFcoe.SrDescriptors));
            }

            if (m_srWizardType is SrWizardType_LvmoHba)
            {
                if (!Helpers.DundeeOrGreater(xenConnection) && senderPage == xenTabPageLvmoHba)
                {
                    return(CanShowLVMoHBASummaryPage(xenTabPageLvmoHba.SrDescriptors));
                }
                else if (senderPage == xenTabPageStorageProvisioningMethod
                         //if there is no sr to be created (all will be reattached)
                         || senderPage == xenTabPageLvmoHba && xenTabPageLvmoHba.SrDescriptors.All(srDescriptor => !string.IsNullOrEmpty(srDescriptor.UUID)))
                {
                    //setting SM Config to the SRs being created (UUID == empty)
                    if (xenTabPageStorageProvisioningMethod.SMConfig.Count > 0)
                    {
                        xenTabPageLvmoHba.SrDescriptors
                        .Where(desc => string.IsNullOrEmpty(desc.UUID)).ToList()
                        .ForEach(desc => desc.SMConfig = xenTabPageStorageProvisioningMethod.SMConfig);
                    }
                    return(CanShowLVMoHBASummaryPage(xenTabPageLvmoHba.SrDescriptors));
                }
            }
            return(base.RunNextPagePrecheck(senderPage));
        }
Пример #3
0
        protected override bool RunNextPagePrecheck(XenTabPage senderPage)
        {
            var runPrechecks = showProvisioningPage
                ? senderPage == xenTabPageChooseSrProv
                : (_srToReattach != null && _rbac
                    ? senderPage == xenTabPageRbacWarning
                    : senderPage == xenTabPageSrName);

            if (runPrechecks)
            {
                if (m_srWizardType is SrWizardType_Fcoe)
                {
                    xenTabPageLvmoFcoe.SrType = showProvisioningPage && xenTabPageChooseSrProv.IsGfs2 ? SR.SRTypes.gfs2 : SR.SRTypes.lvmofcoe;
                    return(SetFCDevicesOnLVMoHBAPage(xenTabPageLvmoFcoe));
                }
                if (m_srWizardType is SrWizardType_Hba)
                {
                    xenTabPageLvmoHba.SrType = showProvisioningPage && xenTabPageChooseSrProv.IsGfs2 ? SR.SRTypes.gfs2 : SR.SRTypes.lvmohba;
                    return(SetFCDevicesOnLVMoHBAPage(xenTabPageLvmoHba));
                }
                if (m_srWizardType is SrWizardType_Cslg || m_srWizardType is SrWizardType_NetApp || m_srWizardType is SrWizardType_EqualLogic)
                {
                    xenTabPageCslg.SrWizardType = m_srWizardType;
                    return(xenTabPageCslg.PerformStorageSystemScan());
                }
            }

            if (senderPage == xenTabPageLvmoFcoe)
            {
                return(CanShowLVMoHBASummaryPage(xenTabPageLvmoFcoe.SrDescriptors));
            }

            if (m_srWizardType is SrWizardType_Hba)
            {
                if (senderPage == xenTabPageLvmoHba)
                {
                    return(CanShowLVMoHBASummaryPage(xenTabPageLvmoHba.SrDescriptors));
                }
            }
            return(base.RunNextPagePrecheck(senderPage));
        }