private void initialize() {
        if(this.initialized) {
            return;
        }
        if (LoggingUtil.SESSION_LOGGER_CORE.isLoggable(Level.INFO)) {
            if (this.sessionStoreService==null) {
                LoggingUtil.SESSION_LOGGER_CORE.logp(Level.INFO, methodClassName, "initialize", "SessionMgrComponentImpl.noPersistence");
            } else {
                String modeName = "sessionPersistenceMode";
                Object modeValue = this.mergedConfiguration.get(modeName);
                LoggingUtil.SESSION_LOGGER_CORE.logp(Level.INFO, methodClassName, "initialize", "SessionMgrComponentImpl.persistenceMode", new Object[] { modeValue });
            }
        }
        SessionProperties.setPropertiesInSMC(this.serverLevelSessionManagerConfig, this.mergedConfiguration);
        String cloneId = SessionManagerConfig.getCloneId();
        if (cloneId == null) {
            if (this.sessionStoreService==null && SessionManagerConfig.isTurnOffCloneId()) {
                /*-
                 * In tWAS, WsSessionAffinityManager sets the CloneID to -1 when two conditions are both met:
                 * A) Running in a standalone server (com.ibm.ws.runtime.service.WLM#getMemberUID()==null)
                 * B) The HttpSessionCloneId custom property is not explicitly set
                 * 
                 * In addition, tWAS will set the CloneID to "" (the empty String) if a third condition is also met:
                 * C) The NoAdditionalSessionInfo custom property is set to "true"
                 * 
                 * In lWAS, there's no notion of a "standalone" server, because potentially any lWAS server 
                 * could require a CloneID for session affinity. As a result, our logic for using an
                 * empty Clone ID on lWAS needs to be different than our logic on tWAS.
                 * 
                 * Since most customers who specify a session store will be interested in session affinity,
                 * we'll assume that these customers are always interested in a non-empty Clone ID.
                 * 
                 * We'll also assume that customers who do not specify a session store who also explicitly
                 * set the noAdditionalInfo property to "true" would prefer an empty Clone ID.
                 * 
                 * All customers can always explicitly set the cloneId property to override these assumptions.
                 */
                cloneId = "";
            } else {
                String serverId = getServerId(); // never returns null
                if (TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_CORE.isLoggable(Level.FINE)) {
                    LoggingUtil.SESSION_LOGGER_CORE.logp(Level.FINE, methodClassName, "initialize", "serverId=" + serverId);
                }
                SessionManagerConfig.setServerId(serverId);
                cloneId = EncodeCloneID.encodeString(serverId); // never returns null
            }
            SessionManagerConfig.setCloneId(cloneId);
        }
        this.initialized=true;
    }
private void initialize ( ) { if ( this . initialized ) { return ; } if ( LoggingUtil . SESSION_LOGGER_CORE . isLoggable ( Level . INFO ) ) { if ( this . sessionStoreService == null ) { LoggingUtil . SESSION_LOGGER_CORE . logp ( Level . INFO , methodClassName , "initialize" , "SessionMgrComponentImpl.noPersistence" ) ; } else { String modeName = "sessionPersistenceMode" ; Object modeValue = this . mergedConfiguration . get ( modeName ) ; LoggingUtil . SESSION_LOGGER_CORE . logp ( Level . INFO , methodClassName , "initialize" , "SessionMgrComponentImpl.persistenceMode" , new Object [ ] { modeValue } ) ; } } SessionProperties . setPropertiesInSMC ( this . serverLevelSessionManagerConfig , this . mergedConfiguration ) ; String cloneId = SessionManagerConfig . getCloneId ( ) ; if ( cloneId == null ) { if ( this . sessionStoreService == null && SessionManagerConfig . isTurnOffCloneId ( ) ) { cloneId = "" ; } else { String serverId = getServerId ( ) ; if ( TraceComponent . isAnyTracingEnabled ( ) && LoggingUtil . SESSION_LOGGER_CORE . isLoggable ( Level . FINE ) ) { LoggingUtil . SESSION_LOGGER_CORE . logp ( Level . FINE , methodClassName , "initialize" , "serverId=" + serverId ) ; } SessionManagerConfig . setServerId ( serverId ) ; cloneId = EncodeCloneID . encodeString ( serverId ) ; } SessionManagerConfig . setCloneId ( cloneId ) ; } this . initialized = true ; }
Delay initialization until a public method of this service is called