Пример #1
0
        public void DeleteApplication()
        {
            var deleteApp = new DeleteDatabase(Client.Ticket, Token, Client.AccountDomain, ApplicationId);

            deleteApp.Post();

            Token           = null;
            ApplicationId   = null;
            ApplicationName = null;
            this._qbDataTables.Clear();
        }
Пример #2
0
        public void DeleteTable(IQTable table)
        {
            var tableId = table.TableId;

            if (!_qbDataTables.ContainsKey(tableId))
            {
                throw new TableDoesNotExistInQuickBase("Table does not exist in this instance of QApplication.");
            }
            var deleteTbl = new DeleteDatabase(Client.Ticket, Token, Client.AccountDomain, tableId);

            deleteTbl.Post();

            _qbDataTables.Remove(tableId);
        }
        public async Task <DeleteDatabase> DeleteDatabase(string database, bool ifExists, string option, string group, string permissions)
        {
            if (string.IsNullOrEmpty(database))
            {
                throw new Exception("database and comment are required.");
            }

            DeleteDatabaseParam jsonParams = new DeleteDatabaseParam
            {
                ifExists    = ifExists,
                option      = option,
                group       = group,
                permissions = permissions
            };

            DeleteDatabase deleteDatabase = await Delete <DeleteDatabase>(_webHcatBaseUrl, _webHCatVersion, _webHCatUserName, requestURL.CreateDatabase(database), jsonParams);

            return(deleteDatabase);
        }
        public void Worker()
        {
            try {
                var setupUpdateServer = new SetupUpdateServer(_configurationManager);
                setupUpdateServer.Subscribe(this);
                using (var webServer = setupUpdateServer.Execute()) {
                    setupUpdateServer.Dispose();

                    var connectToUpdateServer = new ConnectToUpdateServer(webServer);
                    connectToUpdateServer.Subscribe(this);
                    using (var connection = connectToUpdateServer.Execute()) {
                        connectToUpdateServer.Dispose();

                        var getUpdateInfo = new GetUpdateInfo(connection, _configurationManager);
                        getUpdateInfo.Subscribe(this);
                        var updateInfo = getUpdateInfo.Execute();
                        getUpdateInfo.Dispose();

                        var checkIfUpdateAvailable = new CheckIfUpdateAvailable(_targetConfig,
                                                                                updateInfo);
                        checkIfUpdateAvailable.Subscribe(this);
                        if (checkIfUpdateAvailable.Execute()) {
                            var createTemporaryFolder = new CreateTemporaryFolder();
                            createTemporaryFolder.Subscribe(this);
                            string temporaryFolder = createTemporaryFolder.Execute();
                            createTemporaryFolder.Dispose();

                            var downloadDistributive = new DownloadDistributive(webServer,
                                                                                updateInfo,
                                                                                temporaryFolder);
                            downloadDistributive.Subscribe(this);
                            string archivedDistributive = downloadDistributive.Execute();
                            downloadDistributive.Dispose();

                            var extractDistributive = new ExtractDistributive(archivedDistributive,
                                                                              temporaryFolder);
                            extractDistributive.Subscribe(this);
                            string distributive = extractDistributive.Execute();
                            extractDistributive.Dispose();

                            var killTargetProcess = new KillTargetProcess(_targetConfig);
                            killTargetProcess.Subscribe(this);
                            killTargetProcess.Execute();
                            killTargetProcess.Dispose();

                            var installNewVersion = new InstallNewVersion(distributive);
                            installNewVersion.Subscribe(this);
                            installNewVersion.Execute();
                            installNewVersion.Dispose();

                            //var restoreCredentials = new RestoreCredentials(_configurationManager);
                            //restoreCredentials.Subscribe(this);
                            //restoreCredentials.Execute();
                            //restoreCredentials.Dispose();

                            var deleteDatabase = new DeleteDatabase(_targetConfig,
                                                                    _configurationManager);
                            deleteDatabase.Subscribe(this);
                            deleteDatabase.Execute();
                            deleteDatabase.Dispose();

                            var runApplication = new RunApplication(_targetConfig);
                            runApplication.Subscribe(this);
                            runApplication.Execute();
                            runApplication.Dispose();

                            var deleteTemporaryFolder = new DeleteTemporaryFolder(temporaryFolder);
                            deleteTemporaryFolder.Execute();
                        }
                        else {
                            InvokeUpdateNotNeeded();
                        }
                        checkIfUpdateAvailable.Dispose();
                    }
                }
                InvokeUpdateComplete();
            }
            catch (Exception exception) {
                Log.Error(exception);
                InvokeUpdateFailed();
            }
        }