docs: 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;
      }