use of com.torodb.core.Shutdowner in project torodb by torodb.
the class StampedeService method startUp.
@Override
protected void startUp() throws Exception {
LOGGER.info("Starting up ToroDB Stampede");
shutdowner = bootstrapInjector.getInstance(Shutdowner.class);
shutdowner.awaitRunning();
BackendBundle backendBundle = createBackendBundle();
startBundle(backendBundle);
BackendService backendService = backendBundle.getBackendService();
ConsistencyHandler consistencyHandler = createConsistencyHandler(backendService);
if (!consistencyHandler.isConsistent()) {
LOGGER.info("Database is not consistent. Cleaning it up");
dropDatabase(backendService);
}
Injector finalInjector = createFinalInjector(backendBundle, consistencyHandler);
AbstractReplication replication = getReplication();
reportReplication(replication);
TorodBundle torodBundle = createTorodBundle(finalInjector);
startBundle(torodBundle);
MongodbReplConfig replConfig = getReplConfig(replication);
startBundle(createMongodbReplBundle(finalInjector, torodBundle, replConfig));
LOGGER.info("ToroDB Stampede is now running");
}
use of com.torodb.core.Shutdowner in project torodb by torodb.
the class CoreModule method createShutdowner.
@Provides
@Singleton
protected Shutdowner createShutdowner(ThreadFactory threadFactory) {
Shutdowner s = new Shutdowner(threadFactory);
s.startAsync();
s.awaitRunning();
return s;
}
use of com.torodb.core.Shutdowner in project torodb by torodb.
the class ToroDbService method startUp.
@Override
protected void startUp() throws Exception {
LOGGER.info("Starting up ToroDB Standalone");
shutdowner = bootstrapInjector.getInstance(Shutdowner.class);
BackendBundle backendBundle = createBackendBundle();
startBundle(backendBundle);
Injector finalInjector = createFinalInjector(backendBundle);
TorodBundle torodBundle = createTorodBundle(finalInjector);
startBundle(torodBundle);
LOGGER.info("ToroDB Stampede is now running");
}
Aggregations