public void doStart() throws Exception {
Dispatcher underlyingDisp = dispatcherHolder.getDispatcher();
ServiceSpaceName serviceSpaceName = new ServiceSpaceName(configInfo.getServiceSpaceURI());
StackContext stackContext = new StackContext(serviceSpaceName,
underlyingDisp,
configInfo.getSessionTimeoutSeconds(),
configInfo.getNumPartitions(),
configInfo.getSweepInterval(),
repManagerFactory,
repStorageFactory,
backingStrategyFactory) {
@Override
protected MemoryContextualiser newMemoryContextualiser(Contextualiser next,
ConcurrentMotableMap mmap,
Evicter mevicter,
PoolableInvocationWrapperPool requestPool) {
return new MotionTracker(next, mevicter, mmap, sessionFactory, requestPool);
}
};
stackContext.build();
serviceSpace = stackContext.getServiceSpace();
manager = stackContext.getManager();
sessionMonitor = stackContext.getSessionMonitor();
sessionMonitor.addSessionListener(new SessionListenerAdapter());
serviceSpace.start();
}