code: protected void activate(ComponentContext context) throws Throwable {
          if (TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_CORE.isLoggable(Level.FINER)) {
              LoggingUtil.SESSION_LOGGER_CORE.entering(CLASS_NAME, "activate", context);
          }
          this.context = context;
          if(sessionStoreService == null && this.foundSessionStoreServiceConfig()) {
              if (TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_CORE.isLoggable(Level.FINE)) {
                  LoggingUtil.SESSION_LOGGER_CORE.logp(Level.FINE, CLASS_NAME, "activate", "Will not register default SessionManager service because a SesionStoreService will be available soon");
              }
          } else {
              this.registerSessionManager();            
          }
          if (TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_CORE.isLoggable(Level.FINER)) {
              LoggingUtil.SESSION_LOGGER_CORE.exiting(CLASS_NAME, "activate");
          }
      }
docs: Since the services this service consumes are dynamic,
  activate will be the first method called by DS. This
  method needs to register a default SessionManager service,
  but it should also be careful NOT to restart applications
  (unless applications are already running somehow)
  
  @param context the context used to register the SessionManager service
  @throws Throwable