docs: @Override
      protected void doGet( final HttpServletRequest request, final HttpServletResponse response )
              throws ServletException, IOException {
  
          if ( "/favicon.ico".equals( request.getRequestURI() ) ) {
              super.doGet( request, response );
              return;
          }
  
          final String pathInfo = request.getPathInfo();
          LOG.info( " + starting at path " + pathInfo );
  
          if ( pathInfo.startsWith( "/readonly" ) ) {
              response.getWriter().println( "readonly" );
              return;
          }
  
          if ( pathInfo.startsWith( "/put" ) ) {
              final HttpSession session = request.getSession();
              final Cache cache = getOrCreateCache( session );
              final Enumeration<String> names = request.getParameterNames();
              while ( names.hasMoreElements() ) {
                  final String name = names.nextElement();
                  final String value = request.getParameter( name );
                  cache.put( name, value );
              }
          }
          else if ( pathInfo.startsWith( "/list" ) ) {
              final HttpSession session = request.getSession(false);
              if(session == null)
              	return;
              
              final PrintWriter out = response.getWriter();
              final Cache cache = getOrCreateCache( session );
              for ( final Map.Entry<String, Object> entry : cache.entrySet() ) {
                  out.println( entry.getKey() + "=" + entry.getValue() );
              }
          }
          else if ( pathInfo.startsWith( "/swapSessionId" ) ) {
              final HttpSession session = request.getSession();
              final Cache cache = getOrCreateCache( session );
  
              final PrintWriter out = response.getWriter();
              out.println( "old sessionId: " + session.getId() );
              session.invalidate();
  
              final HttpSession newSession = request.getSession();
              newSession.setAttribute( "cache", cache );
              out.println( "new sessionId: " + newSession.getId() );
          }
  
      }