protected void Page_Init(object sender, EventArgs e)
 {
     ConfigurationSteps.WBxCreateTasksTable(WBCollection.ConfigurationStepsNames);
     if (String.IsNullOrEmpty(NextConfigurationStep.Value))
     {
         NextConfigurationStep.Value = WBCollection.ConfigurationStepsNames[0];
     }
 }
        private void doNextConfigurationStep()
        {
            WBTaskFeedback feedback = collection.DoConfigurationStep(NextConfigurationStep.Value);

            ConfigurationSteps.WBxUpdateTask(feedback);

            if (!String.IsNullOrEmpty(feedback.NextTaskName))
            {
                NextConfigurationStep.Value = feedback.NextTaskName;
                ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "TriggerNextStepFunction", "WorkBoxFramework_triggerNextConfigurationStep();", true);
            }
            else
            {
                CancelButton.Text = "Done";
            }
        }
        private void RefreshSteps()
        {
            if (SelectedConfiguration != null)
            {
                ConfigurationSteps.Clear();

                foreach (ConfigurationStepModel cfgs in SelectedConfiguration.Steps)
                {
                    ConfigurationSteps.Add(cfgs);
                }

                ConfigurationStepsAreEnabled = true;
            }
            else
            {
                ConfigurationStepsAreEnabled = false;
            }
        }
Esempio n. 4
0
        public void PushDatabaseConfiguration(Database.ConfigurationSteps nextActionDatabaseConfigurationStep)
        {
            switch (nextActionDatabaseConfigurationStep)
            {
                case ConfigurationSteps.ConfigurationCancel:
                    IEnumerable<KeyValuePair<string, ICommunicatorCallback>> callBackList = communicator.ClientList.Where(itm => itm.Key != databaseConnectionSessionID);

                    foreach (KeyValuePair<string, ICommunicatorCallback> callBack in callBackList)
                    {
                        BackgroundWorker callBackForConfigurationCancel = new BackgroundWorker();

                        callBackForConfigurationCancel.DoWork += callBackForConfigurationCancel_DoWork;
                        callBackForConfigurationCancel.RunWorkerCompleted += DisposeOn_RunWorkerCompleted;

                        callBackForConfigurationCancel.RunWorkerAsync(callBack);
                    }

                    break;
                case ConfigurationSteps.CreateDatabase:
                    configureDatabaseConnectionWorker = new BackgroundWorker();

                    configureDatabaseConnectionWorker.DoWork += configureDatabaseConnectionWorker_DoWork;
                    configureDatabaseConnectionWorker.RunWorkerCompleted += configureDatabaseConnectionWorker_RunWorkerCompleted;

                    configurationStep = ConfigurationSteps.CreateDatabase;

                    configureDatabaseConnectionWorker.RunWorkerAsync();
                    break;
            }
        }
Esempio n. 5
0
        private void configureDatabaseConnectionWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            if (configurationStep == ConfigurationSteps.Initializing)
            {
                bool done = false;
                while (!done) done = connectionDatabaseCallbackWorkerList.Count(itm => itm.IsBusy) == 0;

                masterConnectionString = submittedDatabaseConfiguration.GenerateConnectionString(Information.ConnectionStringType.UseMaster);
                emptyCatalogConnectionString = submittedDatabaseConfiguration.GenerateConnectionString(Information.ConnectionStringType.EmptyCatalog);
                connectionString = submittedDatabaseConfiguration.GenerateConnectionString();

                configurationStep = ConfigurationSteps.CheckingInstance;
            }

            if (configurationStep == ConfigurationSteps.CheckingInstance)
            {
                configurationStep = CheckInstance();
                if (configurationStep == ConfigurationSteps.InstanceFailure) return;
                configurationStep = ConfigurationSteps.CheckingDatabase;
            }

            if (configurationStep == ConfigurationSteps.CheckingDatabase)
            {
                configurationStep = CheckDatabase(submittedDatabaseConfiguration);
                if (configurationStep == ConfigurationSteps.DatabaseNotAvailable) return;
                configurationStep = ConfigurationSteps.DatabaseAvailable;
            }

            if (configurationStep == ConfigurationSteps.CreateDatabase)
            {
                configurationStep = CreateDatabase();
                if (configurationStep == ConfigurationSteps.CreateDatabaseFailed) return;

                bool result = Framework.Operations.Instance.ImportAssembly(Assembly.Load("BOMBS.Core"), connectionString);

                if (result)
                {
                    configurationStep = ConfigurationSteps.DatabaseAvailable;
                    communicator.ServerInformation.DatabaseInformation = submittedDatabaseConfiguration;
                    submittedDatabaseConfiguration.WriteResources();
                }
                else configurationStep = ConfigurationSteps.ImportCoreModuleFailed;
            }
        }