docs: protected SessionAffinityContext getSessionAffinityContext(HttpServletRequest _request)
    {
  
      Hashtable sacHashtable = (Hashtable) ((IExtendedRequest) _request).getSessionAffinityContext();
  
      if (sacHashtable == null)
      {
        sacHashtable = new Hashtable();
        ((IExtendedRequest) _request).setSessionAffinityContext((Object) sacHashtable);
        if (_smc.isDebugSessionCrossover())
        {
          currentThreadSacHashtable.set(sacHashtable);
        }
      }
  
      String sacKey = _smc.getSessionAffinityContextKey();
      SessionAffinityContext sac = (SessionAffinityContext) sacHashtable.get(sacKey);
  
      if (sac != null)
      {
        if (com.ibm.ejs.ras.TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_CORE.isLoggable(Level.FINE))
        {
          LoggingUtil.SESSION_LOGGER_CORE.logp(Level.FINE, methodClassName, methodNames[GET_SESSION_AFFINITY_CONTEXT], "Found sac on request for key " + sacKey);
        }
      }
      else
      {
        sac = _sam.analyzeRequest(_request);
        sacHashtable.put(sacKey, sac);
        if (com.ibm.ejs.ras.TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_CORE.isLoggable(Level.FINE))
        {
          LoggingUtil.SESSION_LOGGER_CORE.logp(Level.FINE, methodClassName, methodNames[GET_SESSION_AFFINITY_CONTEXT], "Created sac and stored on request for key " + sacKey);
        }
      }
      return sac;
    }