public DelegateSessionManagerFactory(AppEngineWebXml appEngineWebXml) {
   final SessionType sessionType = appEngineWebXml.getSessionType();
   switch (sessionType) {
     case APPENGINE:
       delegate =
           new CapedwarfSessionManagerFactory(
               appEngineWebXml.isAsyncSessionPersistence(),
               appEngineWebXml.getSessionPersistenceQueueName());
       break;
     case STUB:
       delegate = StubSessionManagerFactory.INSTANCE;
       break;
     default:
       throw new IllegalStateException();
   }
 }
 public String getVersionId() {
   assertInitialized();
   return appEngineWebXml.getVersion();
 }
 public String getAppId() {
   assertInitialized();
   return appEngineWebXml.getApplication();
 }