Exemple #1
0
        protected override void UpdateWizardContent(XenTabPage senderPage)
        {
            var senderPagetype = senderPage.GetType();

            if (senderPagetype == typeof(ChooseSrTypePage))
            {
                #region
                RemovePagesFrom(_rbac ? 3 : 2);
                m_srWizardType = xenTabPageChooseSrType.SrWizardType;

                if (m_srWizardType is SrWizardType_VhdoNfs)
                {
                    AddPage(xenTabPageVhdoNFS);
                }
                else if (m_srWizardType is SrWizardType_LvmoIscsi)
                {
                    AddPage(xenTabPageLvmoIscsi);

                    if (Helpers.DundeeOrGreater(xenConnection))
                    {
                        AddPage(xenTabPageStorageProvisioningMethod);
                    }
                }
                else if (m_srWizardType is SrWizardType_LvmoHba)
                {
                    AddPage(xenTabPageLvmoHba);

                    if (Helpers.DundeeOrGreater(xenConnection))
                    {
                        AddPage(xenTabPageStorageProvisioningMethod);
                    }

                    AddPage(xenTabPageLvmoHbaSummary);
                }
                else if (m_srWizardType is SrWizardType_Fcoe)
                {
                    AddPage(xenTabPageLvmoFcoe);
                    AddPage(xenTabPageLvmoHbaSummary);
                }
                else if (m_srWizardType is SrWizardType_Cslg)
                {
                    AddPage(xenTabPageCslg);

                    if (Helpers.BostonOrGreater(xenConnection))
                    {
                        AddPages(xenTabPageCslgLocation, xenTabPageCslgSettings);
                    }
                    else
                    {
                        AddPages(new XenTabPage {
                            Text = ""
                        });
                    }
                }
                else if (m_srWizardType is SrWizardType_NetApp || m_srWizardType is SrWizardType_EqualLogic)
                {
                    AddPages(xenTabPageCslg, xenTabPageFilerDetails);

                    if (m_srWizardType is SrWizardType_NetApp)
                    {
                        xenTabPageFilerDetails.IsNetApp = true;
                        AddPage(xenTabPageNetApp);
                    }
                    else if (m_srWizardType is SrWizardType_EqualLogic)
                    {
                        xenTabPageFilerDetails.IsNetApp = false;
                        AddPage(xentabPageEqualLogic);
                    }
                }
                else if (m_srWizardType is SrWizardType_CifsIso)
                {
                    AddPage(xenTabPageCifsIso);
                }
                else if (m_srWizardType is SrWizardType_Cifs)
                {
                    AddPage(xenTabPageCifs);
                }
                else if (m_srWizardType is SrWizardType_NfsIso)
                {
                    AddPage(xenTabPageNfsIso);
                }

                xenTabPageSrName.SrWizardType      = m_srWizardType;
                xenTabPageSrName.MatchingFrontends = xenTabPageChooseSrType.MatchingFrontends;

                NotifyNextPagesOfChange(xenTabPageSrName);
                #endregion
            }
            else if (senderPagetype == typeof(NewSrWizardNamePage))
            {
                #region
                m_srWizardType.SrName                  = xenTabPageSrName.SrName;
                m_srWizardType.Description             = xenTabPageSrName.SrDescription;
                m_srWizardType.AutoDescriptionRequired = xenTabPageSrName.AutoDescriptionRequired;

                if (m_srWizardType is SrWizardType_VhdoNfs)
                {
                    xenTabPageVhdoNFS.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_LvmoIscsi)
                {
                    xenTabPageLvmoIscsi.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_LvmoHba)
                {
                    xenTabPageLvmoHba.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_Cslg || m_srWizardType is SrWizardType_NetApp || m_srWizardType is SrWizardType_EqualLogic)
                {
                    xenTabPageCslg.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_CifsIso)
                {
                    xenTabPageCifsIso.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_NfsIso)
                {
                    xenTabPageNfsIso.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_Cifs)
                {
                    xenTabPageCifs.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_Fcoe)
                {
                    xenTabPageLvmoFcoe.SrWizardType = m_srWizardType;
                }
                #endregion
            }
            else if (senderPagetype == typeof(CIFS_ISO))
            {
                m_srWizardType.DeviceConfig = xenTabPageCifsIso.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageCifsIso.SrDescription);
            }
            else if (senderPagetype == typeof(CifsFrontend))
            {
                m_srWizardType.DeviceConfig = xenTabPageCifs.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageCifs.SrDescription);
            }
            else if (senderPagetype == typeof(LVMoISCSI))
            {
                m_srWizardType.UUID         = xenTabPageLvmoIscsi.UUID;
                m_srWizardType.DeviceConfig = xenTabPageLvmoIscsi.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageLvmoIscsi.SrDescription);

                if (m_srWizardType.UUID != null) //already existing SR
                {
                    xenTabPageStorageProvisioningMethod.SetControlsUsingExistingSMConfig(m_srWizardType.SMConfig);
                    xenTabPageStorageProvisioningMethod.DisableControls();
                }
                else
                {
                    xenTabPageStorageProvisioningMethod.ResetControls();
                }
            }
            else if (senderPagetype == typeof(NFS_ISO))
            {
                m_srWizardType.DeviceConfig = xenTabPageNfsIso.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageNfsIso.SrDescription);
            }
            else if (senderPagetype == typeof(VHDoNFS))
            {
                m_srWizardType.UUID         = xenTabPageVhdoNFS.UUID;
                m_srWizardType.DeviceConfig = xenTabPageVhdoNFS.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageVhdoNFS.SrDescription);
            }
            else if (senderPagetype == typeof(CSLG))
            {
                #region
                if (Helpers.BostonOrGreater(xenConnection))
                {
                    xenTabPageCslgLocation.SelectedStorageAdapter = xenTabPageCslg.SelectedStorageAdapter;
                    xenTabPageCslgSettings.SelectedStorageAdapter = xenTabPageCslg.SelectedStorageAdapter;
                    NotifyNextPagesOfChange(xenTabPageCslgLocation, xenTabPageCslgSettings);
                }
                else
                {
                    RemovePagesFrom(_rbac ? 4 : 3);

                    if (xenTabPageCslg.SelectedStorageSystem != null)
                    {
                        AddPages(xenTabPageCslgSettings);
                        xenTabPageCslgSettings.SystemStorage = xenTabPageCslg.SelectedStorageSystem;
                        xenTabPageCslgSettings.StoragePools  = xenTabPageCslg.StoragePools;
                        NotifyNextPagesOfChange(xenTabPageCslgLocation);
                    }
                    else if (xenTabPageCslg.NetAppSelected || xenTabPageCslg.DellSelected)
                    {
                        AddPage(xenTabPageFilerDetails);
                        NotifyNextPagesOfChange(xenTabPageFilerDetails);

                        if (xenTabPageCslg.NetAppSelected)
                        {
                            if (m_srWizardType is SrWizardType_Cslg)
                            {
                                m_srWizardType = ((SrWizardType_Cslg)m_srWizardType).ToNetApp();
                                xenTabPageCslg.SrWizardType = m_srWizardType;
                            }
                            xenTabPageFilerDetails.IsNetApp = true;
                            AddPage(xenTabPageNetApp);
                        }
                        else if (xenTabPageCslg.DellSelected)
                        {
                            if (m_srWizardType is SrWizardType_Cslg)
                            {
                                m_srWizardType = ((SrWizardType_Cslg)m_srWizardType).ToEqualLogic();
                                xenTabPageCslg.SrWizardType = m_srWizardType;
                            }
                            xenTabPageFilerDetails.IsNetApp = false;
                            AddPage(xentabPageEqualLogic);
                        }
                    }
                }

                foreach (var entry in xenTabPageCslg.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                #endregion
            }
            else if (senderPagetype == typeof(CslgLocation))
            {
                xenTabPageCslgSettings.StorageLinkCredentials = xenTabPageCslgLocation.StorageLinkCredentials;
                xenTabPageCslgSettings.SystemStorage          = xenTabPageCslgLocation.SystemStorage;
                xenTabPageCslgSettings.StoragePools           = xenTabPageCslgLocation.StoragePools;

                foreach (var entry in xenTabPageCslgLocation.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                NotifyNextPagesOfChange(xenTabPageCslgSettings);
            }
            else if (senderPagetype == typeof(CslgSettings))
            {
                foreach (var entry in xenTabPageCslgSettings.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                SetCustomDescription(m_srWizardType, xenTabPageCslgSettings.SrDescription);
            }
            else if (senderPagetype == typeof(FilerDetails))
            {
                #region
                foreach (var entry in xenTabPageFilerDetails.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }

                if (xenTabPageFilerDetails.IsNetApp)
                {
                    xenTabPageNetApp.SrScanAction = xenTabPageFilerDetails.SrScanAction;
                    xenTabPageNetApp.SrWizardType = m_srWizardType;
                    NotifyNextPagesOfChange(xenTabPageNetApp);
                }
                else
                {
                    xentabPageEqualLogic.SrScanAction = xenTabPageFilerDetails.SrScanAction;
                    xentabPageEqualLogic.SrWizardType = m_srWizardType;
                    NotifyNextPagesOfChange(xentabPageEqualLogic);
                }
                #endregion
            }
            else if (senderPagetype == typeof(NetApp))
            {
                m_srWizardType.UUID = xenTabPageNetApp.UUID;
                foreach (var entry in xenTabPageNetApp.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                SetCustomDescription(m_srWizardType, xenTabPageNetApp.SrDescription);
            }
            else if (senderPagetype == typeof(EqualLogic))
            {
                m_srWizardType.UUID = xentabPageEqualLogic.UUID;
                foreach (var entry in xentabPageEqualLogic.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                SetCustomDescription(m_srWizardType, xentabPageEqualLogic.SrDescription);
            }
            else if (senderPagetype == typeof(LVMoHBA))
            {
                bool creatingNew = m_srWizardType.SrDescriptors.Any(srDescriptor => string.IsNullOrEmpty(srDescriptor.UUID));
                if (!creatingNew)
                {
                    DisablePage(xenTabPageStorageProvisioningMethod, true);
                    xenTabPageStorageProvisioningMethod.ResetControls();
                }
            }
            else if (senderPagetype == typeof(StorageProvisioning))
            {
                m_srWizardType.SMConfig = xenTabPageStorageProvisioningMethod.SMConfig;
            }
        }
Exemple #2
0
        protected override void UpdateWizardContent(XenTabPage senderPage)
        {
            var senderPagetype = senderPage.GetType();

            if (senderPagetype == typeof(ChooseSrTypePage))
            {
                #region
                showProvisioningPage = false;
                RemovePagesFrom(_rbac ? 3 : 2);
                m_srWizardType = xenTabPageChooseSrType.SrWizardType;

                if (m_srWizardType is SrWizardType_VhdoNfs)
                {
                    AddPage(xenTabPageVhdoNFS);
                }
                else if (m_srWizardType is SrWizardType_Iscsi)
                {
                    showProvisioningPage = Helpers.KolkataOrGreater(xenConnection) &&
                                           !Helpers.FeatureForbidden(xenConnection, Host.RestrictCorosync);
                    if (showProvisioningPage)
                    {
                        AddPage(xenTabPageChooseSrProv);
                    }
                    AddPage(xenTabPageLvmoIscsi);
                }
                else if (m_srWizardType is SrWizardType_Hba)
                {
                    showProvisioningPage = Helpers.KolkataOrGreater(xenConnection) &&
                                           !Helpers.FeatureForbidden(xenConnection, Host.RestrictCorosync);
                    if (showProvisioningPage)
                    {
                        AddPage(xenTabPageChooseSrProv);
                    }
                    AddPage(xenTabPageLvmoHba);
                    AddPage(xenTabPageLvmoHbaSummary);
                }
                else if (m_srWizardType is SrWizardType_Fcoe)
                {
                    AddPage(xenTabPageLvmoFcoe);
                    AddPage(xenTabPageLvmoHbaSummary);
                }
                else if (m_srWizardType is SrWizardType_Cslg)
                {
                    AddPage(xenTabPageCslg);
                    AddPages(xenTabPageCslgLocation, xenTabPageCslgSettings);
                }
                else if (m_srWizardType is SrWizardType_NetApp || m_srWizardType is SrWizardType_EqualLogic)
                {
                    AddPages(xenTabPageCslg, xenTabPageFilerDetails);

                    if (m_srWizardType is SrWizardType_NetApp)
                    {
                        xenTabPageFilerDetails.IsNetApp = true;
                        AddPage(xenTabPageNetApp);
                    }
                    else if (m_srWizardType is SrWizardType_EqualLogic)
                    {
                        xenTabPageFilerDetails.IsNetApp = false;
                        AddPage(xentabPageEqualLogic);
                    }
                }
                else if (m_srWizardType is SrWizardType_CifsIso)
                {
                    AddPage(xenTabPageCifsIso);
                }
                else if (m_srWizardType is SrWizardType_Cifs)
                {
                    AddPage(xenTabPageCifs);
                }
                else if (m_srWizardType is SrWizardType_NfsIso)
                {
                    AddPage(xenTabPageNfsIso);
                }

                xenTabPageSrName.SrWizardType      = m_srWizardType;
                xenTabPageSrName.MatchingFrontends = xenTabPageChooseSrType.MatchingFrontends;

                NotifyNextPagesOfChange(xenTabPageSrName);
                #endregion
            }
            else if (senderPagetype == typeof(NewSrWizardNamePage))
            {
                #region
                m_srWizardType.SrName                  = xenTabPageSrName.SrName;
                m_srWizardType.Description             = xenTabPageSrName.SrDescription;
                m_srWizardType.AutoDescriptionRequired = xenTabPageSrName.AutoDescriptionRequired;

                if (m_srWizardType is SrWizardType_VhdoNfs)
                {
                    xenTabPageVhdoNFS.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_Iscsi)
                {
                    xenTabPageLvmoIscsi.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_Hba)
                {
                    xenTabPageLvmoHba.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_Cslg || m_srWizardType is SrWizardType_NetApp || m_srWizardType is SrWizardType_EqualLogic)
                {
                    xenTabPageCslg.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_CifsIso)
                {
                    xenTabPageCifsIso.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_NfsIso)
                {
                    xenTabPageNfsIso.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_Cifs)
                {
                    xenTabPageCifs.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_Fcoe)
                {
                    xenTabPageLvmoFcoe.SrWizardType = m_srWizardType;
                }
                #endregion
            }
            else if (senderPagetype == typeof(ChooseSrProvisioningPage))
            {
                var isGfs2 = xenTabPageChooseSrProv.IsGfs2;
                xenTabPageLvmoHba.SrType   = isGfs2 ? SR.SRTypes.gfs2 : SR.SRTypes.lvmohba;
                xenTabPageLvmoFcoe.SrType  = isGfs2 ? SR.SRTypes.gfs2 : SR.SRTypes.lvmofcoe;
                xenTabPageLvmoIscsi.SrType = isGfs2 ? SR.SRTypes.gfs2 : SR.SRTypes.lvmoiscsi;
            }
            else if (senderPagetype == typeof(CIFS_ISO))
            {
                m_srWizardType.DeviceConfig = xenTabPageCifsIso.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageCifsIso.SrDescription);
            }
            else if (senderPagetype == typeof(CifsFrontend))
            {
                m_srWizardType.UUID         = xenTabPageCifs.UUID;
                m_srWizardType.DeviceConfig = xenTabPageCifs.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageCifs.SrDescription);
            }
            else if (senderPagetype == typeof(LVMoISCSI))
            {
                SetCustomDescription(m_srWizardType, xenTabPageLvmoIscsi.SrDescription);

                m_srWizardType.UUID         = xenTabPageLvmoIscsi.UUID;
                m_srWizardType.DeviceConfig = xenTabPageLvmoIscsi.DeviceConfig;
                m_srWizardType.IsGfs2       = xenTabPageLvmoIscsi.SrType == SR.SRTypes.gfs2;
            }
            else if (senderPagetype == typeof(NFS_ISO))
            {
                m_srWizardType.DeviceConfig = xenTabPageNfsIso.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageNfsIso.SrDescription);
            }
            else if (senderPagetype == typeof(VHDoNFS))
            {
                m_srWizardType.UUID         = xenTabPageVhdoNFS.UUID;
                m_srWizardType.DeviceConfig = xenTabPageVhdoNFS.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageVhdoNFS.SrDescription);
            }
            else if (senderPagetype == typeof(CSLG))
            {
                xenTabPageCslgLocation.SelectedStorageAdapter = xenTabPageCslg.SelectedStorageAdapter;
                xenTabPageCslgSettings.SelectedStorageAdapter = xenTabPageCslg.SelectedStorageAdapter;
                NotifyNextPagesOfChange(xenTabPageCslgLocation, xenTabPageCslgSettings);

                foreach (var entry in xenTabPageCslg.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
            }
            else if (senderPagetype == typeof(CslgLocation))
            {
                xenTabPageCslgSettings.StorageLinkCredentials = xenTabPageCslgLocation.StorageLinkCredentials;
                xenTabPageCslgSettings.SystemStorage          = xenTabPageCslgLocation.SystemStorage;
                xenTabPageCslgSettings.StoragePools           = xenTabPageCslgLocation.StoragePools;

                foreach (var entry in xenTabPageCslgLocation.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                NotifyNextPagesOfChange(xenTabPageCslgSettings);
            }
            else if (senderPagetype == typeof(CslgSettings))
            {
                foreach (var entry in xenTabPageCslgSettings.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                SetCustomDescription(m_srWizardType, xenTabPageCslgSettings.SrDescription);
            }
            else if (senderPagetype == typeof(FilerDetails))
            {
                #region
                foreach (var entry in xenTabPageFilerDetails.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }

                if (xenTabPageFilerDetails.IsNetApp)
                {
                    xenTabPageNetApp.SrScanAction = xenTabPageFilerDetails.SrScanAction;
                    xenTabPageNetApp.SrWizardType = m_srWizardType;
                    NotifyNextPagesOfChange(xenTabPageNetApp);
                }
                else
                {
                    xentabPageEqualLogic.SrScanAction = xenTabPageFilerDetails.SrScanAction;
                    xentabPageEqualLogic.SrWizardType = m_srWizardType;
                    NotifyNextPagesOfChange(xentabPageEqualLogic);
                }
                #endregion
            }
            else if (senderPagetype == typeof(NetApp))
            {
                m_srWizardType.UUID = xenTabPageNetApp.UUID;
                foreach (var entry in xenTabPageNetApp.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                SetCustomDescription(m_srWizardType, xenTabPageNetApp.SrDescription);
            }
            else if (senderPagetype == typeof(EqualLogic))
            {
                m_srWizardType.UUID = xentabPageEqualLogic.UUID;
                foreach (var entry in xentabPageEqualLogic.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                SetCustomDescription(m_srWizardType, xentabPageEqualLogic.SrDescription);
            }
        }
Exemple #3
0
        protected override void UpdateWizardContent(XenTabPage senderPage)
        {
            var senderPagetype = senderPage.GetType();

            if (senderPagetype == typeof(ChooseSrTypePage))
            {
                #region
                RemovePagesFrom(_rbac ? 3 : 2);
                m_srWizardType = xenTabPageChooseSrType.SrWizardType;

                if (m_srWizardType is SrWizardType_VhdoNfs)
                {
                    AddPage(xenTabPageVhdoNFS);
                }
                else if (m_srWizardType is SrWizardType_lvmomirror)
                {
                    AddPage(xenTabPageLvmoMirror);
                    AddPage(xenTabPageLVMoMirrorChooseLog);
                    AddPage(xenTabPageLvmoMirrorSummary);
                }
                else if (m_srWizardType is SrWizardType_LvmoMirror_Iscsi)
                {
                    AddPage(xenTabPageLvmoMirrorSetIscsi);
                }
                else if (m_srWizardType is SrWizardType_LvmoIscsi)
                {
                    AddPage(xenTabPageLvmoIscsi);
                }
                else if (m_srWizardType is SrWizardType_LvmoHba)
                {
                    AddPage(xenTabPageLvmoHba);
                    AddPage(xenTabPageLvmoHbaSummary);
                }
                else if (m_srWizardType is SrWizardType_rawHba)
                {
                    xenTabPageSrName.setSrWizardNamePage();
                }
                else if (m_srWizardType is SrWizardType_lvmobond)
                {
                    AddPage(xenTabPageLvmoBond);
                    AddPage(xenTabPageLvmoBondSummary);
                }
                else if (m_srWizardType is SrWizardType_Fcoe)
                {
                    AddPage(xenTabPageLvmoFcoe);
                    AddPage(xenTabPageLvmoHbaSummary);
                }
                else if (m_srWizardType is SrWizardType_Cslg)
                {
                    AddPage(xenTabPageCslg);
                    AddPages(xenTabPageCslgLocation, xenTabPageCslgSettings);
                }
                else if (m_srWizardType is SrWizardType_NetApp || m_srWizardType is SrWizardType_EqualLogic)
                {
                    AddPages(xenTabPageCslg, xenTabPageFilerDetails);

                    if (m_srWizardType is SrWizardType_NetApp)
                    {
                        xenTabPageFilerDetails.IsNetApp = true;
                        AddPage(xenTabPageNetApp);
                    }
                    else if (m_srWizardType is SrWizardType_EqualLogic)
                    {
                        xenTabPageFilerDetails.IsNetApp = false;
                        AddPage(xentabPageEqualLogic);
                    }
                }
                else if (m_srWizardType is SrWizardType_CifsIso)
                {
                    AddPage(xenTabPageCifsIso);
                }
                else if (m_srWizardType is SrWizardType_Cifs)
                {
                    AddPage(xenTabPageCifs);
                }
                else if (m_srWizardType is SrWizardType_NfsIso)
                {
                    AddPage(xenTabPageNfsIso);
                }

                xenTabPageSrName.SrWizardType      = m_srWizardType;
                xenTabPageSrName.MatchingFrontends = xenTabPageChooseSrType.MatchingFrontends;

                NotifyNextPagesOfChange(xenTabPageSrName);
                #endregion
            }
            else if (senderPagetype == typeof(NewSrWizardNamePage))
            {
                #region
                m_srWizardType.SrName                  = xenTabPageSrName.SrName;
                m_srWizardType.Description             = xenTabPageSrName.SrDescription;
                m_srWizardType.AutoDescriptionRequired = xenTabPageSrName.AutoDescriptionRequired;

                if (m_srWizardType is SrWizardType_VhdoNfs)
                {
                    xenTabPageVhdoNFS.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_LvmoIscsi)
                {
                    xenTabPageLvmoIscsi.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_LvmoHba)
                {
                    xenTabPageLvmoHba.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_lvmobond)
                {
                    xenTabPageLvmoBond.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_lvmomirror)
                {
                    xenTabPageLvmoMirror.SrWizardType          = m_srWizardType;
                    xenTabPageLVMoMirrorChooseLog.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_LvmoMirror_Iscsi)
                {
                    xenTabPageLvmoMirrorSetIscsi.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_Cslg || m_srWizardType is SrWizardType_NetApp || m_srWizardType is SrWizardType_EqualLogic)
                {
                    xenTabPageCslg.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_CifsIso)
                {
                    xenTabPageCifsIso.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_NfsIso)
                {
                    xenTabPageNfsIso.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_Cifs)
                {
                    xenTabPageCifs.SrWizardType = m_srWizardType;
                }
                else if (m_srWizardType is SrWizardType_Fcoe)
                {
                    xenTabPageLvmoFcoe.SrWizardType = m_srWizardType;
                }
                #endregion
            }
            else if (senderPagetype == typeof(CIFS_ISO))
            {
                m_srWizardType.DeviceConfig = xenTabPageCifsIso.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageCifsIso.SrDescription);
            }
            else if (senderPagetype == typeof(CifsFrontend))
            {
                m_srWizardType.UUID         = xenTabPageCifs.UUID;
                m_srWizardType.DeviceConfig = xenTabPageCifs.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageCifs.SrDescription);
            }
            else if (senderPagetype == typeof(LVMoISCSI))
            {
                SetCustomDescription(m_srWizardType, xenTabPageLvmoIscsi.SrDescription);

                m_srWizardType.UUID         = xenTabPageLvmoIscsi.UUID;
                m_srWizardType.DeviceConfig = xenTabPageLvmoIscsi.DeviceConfig;
            }
            else if (senderPagetype == typeof(LVMoMirrorIscsi))
            {
                SetCustomDescription(m_srWizardType, xenTabPageLvmoMirrorSetIscsi.SrDescription);

                m_srWizardType.UUID         = xenTabPageLvmoMirrorSetIscsi.UUID;
                m_srWizardType.DeviceConfig = xenTabPageLvmoMirrorSetIscsi.DeviceConfig;
            }
            else if (senderPagetype == typeof(NFS_ISO))
            {
                m_srWizardType.DeviceConfig = xenTabPageNfsIso.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageNfsIso.SrDescription);
            }
            else if (senderPagetype == typeof(VHDoNFS))
            {
                m_srWizardType.UUID         = xenTabPageVhdoNFS.UUID;
                m_srWizardType.DeviceConfig = xenTabPageVhdoNFS.DeviceConfig;
                SetCustomDescription(m_srWizardType, xenTabPageVhdoNFS.SrDescription);
            }
            else if (senderPagetype == typeof(CSLG))
            {
                xenTabPageCslgLocation.SelectedStorageAdapter = xenTabPageCslg.SelectedStorageAdapter;
                xenTabPageCslgSettings.SelectedStorageAdapter = xenTabPageCslg.SelectedStorageAdapter;
                NotifyNextPagesOfChange(xenTabPageCslgLocation, xenTabPageCslgSettings);

                foreach (var entry in xenTabPageCslg.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
            }
            else if (senderPagetype == typeof(CslgLocation))
            {
                xenTabPageCslgSettings.StorageLinkCredentials = xenTabPageCslgLocation.StorageLinkCredentials;
                xenTabPageCslgSettings.SystemStorage          = xenTabPageCslgLocation.SystemStorage;
                xenTabPageCslgSettings.StoragePools           = xenTabPageCslgLocation.StoragePools;

                foreach (var entry in xenTabPageCslgLocation.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                NotifyNextPagesOfChange(xenTabPageCslgSettings);
            }
            else if (senderPagetype == typeof(CslgSettings))
            {
                foreach (var entry in xenTabPageCslgSettings.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                SetCustomDescription(m_srWizardType, xenTabPageCslgSettings.SrDescription);
            }
            else if (senderPagetype == typeof(FilerDetails))
            {
                #region
                foreach (var entry in xenTabPageFilerDetails.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }

                if (xenTabPageFilerDetails.IsNetApp)
                {
                    xenTabPageNetApp.SrScanAction = xenTabPageFilerDetails.SrScanAction;
                    xenTabPageNetApp.SrWizardType = m_srWizardType;
                    NotifyNextPagesOfChange(xenTabPageNetApp);
                }
                else
                {
                    xentabPageEqualLogic.SrScanAction = xenTabPageFilerDetails.SrScanAction;
                    xentabPageEqualLogic.SrWizardType = m_srWizardType;
                    NotifyNextPagesOfChange(xentabPageEqualLogic);
                }
                #endregion
            }
            else if (senderPagetype == typeof(NetApp))
            {
                m_srWizardType.UUID = xenTabPageNetApp.UUID;
                foreach (var entry in xenTabPageNetApp.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                SetCustomDescription(m_srWizardType, xenTabPageNetApp.SrDescription);
            }
            else if (senderPagetype == typeof(EqualLogic))
            {
                m_srWizardType.UUID = xentabPageEqualLogic.UUID;
                foreach (var entry in xentabPageEqualLogic.DeviceConfigParts)
                {
                    m_srWizardType.DeviceConfig[entry.Key] = entry.Value;
                }
                SetCustomDescription(m_srWizardType, xentabPageEqualLogic.SrDescription);
            }
        }