/** Stop the backup service. */ private void stopImpl() { logger.logInfo("Stopping backup service ."); try { eventHandler.stop(); final WorkspaceModel workspaceModel = WorkspaceModel.getInstance(); workspaceModel.close(workspace); logger.logInfo("Backup service stopped."); } catch (final Throwable t) { throw new BackupException(t, "Failed to stop backup service."); } }
/** Start the backup service. This involves opening the backup workspace. */ private void startImpl() { logger.logInfo("Starting backup service."); try { environment = readBackupEnvironment(); workspace = readBackupWorkspace(); Assert.assertNotNull(environment, "Backup environment not yet initialized."); Assert.assertNotNull(workspace, "Backup workspace not yet initialized."); final WorkspaceModel workspaceModel = WorkspaceModel.getInstance(); if (!workspaceModel.isInitialized(workspace)) { workspaceModel.initialize( new ProcessAdapter() { @Override public void beginProcess() {} @Override public void beginStep(final Step step, final Object data) {} @Override public void determineSteps(final Integer steps) {} @Override public void endProcess() {} @Override public void endStep(final Step step) {} }, new InitializeMediator() { public Boolean confirmRestorePremium() { return null; } public Boolean confirmRestoreStandard() { return null; } }, workspace, null); } eventHandler.start(getModelFactory()); logger.logInfo("Backup service started."); } catch (final Throwable t) { throw new BackupException(t, "Failed to start backup service."); } }
/** * Read the backup workspace. * * @return The backup <code>Workspace</code>. */ private Workspace readBackupWorkspace() { Assert.assertNotNull(environment, "Backup environment not yet initialized."); Assert.assertNotNull(fileSystem, "Backup file system not yet initialized."); final WorkspaceModel workspaceModel = WorkspaceModel.getInstance(); return workspaceModel.getWorkspace(fileSystem.getRoot()); }