code: public void start()
      throws Exception
      {
          if (_random==null)
          {
              log.debug("New random session seed");
              try 
              {
                  _random=SecureRandom.getInstance("SHA1PRNG");
              }
              catch (NoSuchAlgorithmException e)
              {
                  log.warn("Could not generate SecureRandom for session-id randomness",e);
                  _random=new Random();
                  _weakRandom=true;
              }
              _random.setSeed(_random.nextLong()^System.currentTimeMillis()^hashCode()^Runtime.getRuntime().freeMemory());
          }
          
          if (_sessions==null)
              _sessions=new HashMap();
          
          // Start the session scavenger if we haven't already
          if (_scavenger == null)
          {
              _scavenger = new SessionScavenger();
              _scavenger.start();
          }
      }
docs: /* ------------------------------------------------------------