class TransientScottyEngine extends AbstractProcessingEngine implements ProcessingEngine, ProcessingEngineMXBean {

    @Override
    public synchronized void startup() {
        if (engineState != EngineState.RAW)
            throw new IllegalStateException();

        logger.info("Engine is starting up...");
        super.startup();
        wfRepository.start();
        timeoutManager.setEngine(this);
        poolManager.setEngine(this);
        timeoutManager.startup();
        earlyResponseContainer.startup();
        poolManager.startup();
        engineState = EngineState.STARTED;
        logger.info("Engine is running");
        startupBlocker.unblock();
    }

}