tds/src/main/java/thredds/core/ConfigCatalogInitialization.java
public void makeDebugActions() {
    DebugCommands.Category debugHandler = debugCommands.findCategory("Catalogs");
    DebugCommands.Action act;

     act = new DebugCommands.Action("showCatalogExt", "Show known catalogs") {
       public void doAction(DebugCommands.Event e) {
         e.pw.printf("numberCatalogs=%d nextCatId=%d%n", numberCatalogs, nextCatId);
         e.pw.printf("%nid  root  lastRead     path%n");

         CatalogTracker catalogTracker = new CatalogTracker(trackerDir, false, numberCatalogs, 0);
         for (CatalogExt cat : catalogTracker.getCatalogs()) {
           e.pw.printf("%3d: %5s %s %s%n", cat.getCatId(), cat.isRoot(), CalendarDate.of(cat.getLastRead()), cat.getCatRelLocation());
         }
       }
     };
     debugHandler.addAction(act);

    act = new DebugCommands.Action("showRoots", "Show root catalogs") {
      public void doAction(DebugCommands.Event e) {
        StringBuilder sbuff = new StringBuilder();
        synchronized (ConfigCatalogInitialization.this) {
          for (String catPath : rootCatalogKeys) {
            sbuff.append(" catalog= ").append(catPath).append("\n");
            //String filename = StringUtil2.unescape(cat.getUriString());
            //sbuff.append(" from= ").append(filename).append("\n");
          }
        }
        e.pw.println();
        e.pw.println(Escape.html(sbuff.toString()));
      }
    };
    debugHandler.addAction(act);

    act = new DebugCommands.Action("showStats", "Show catalog initialization stats") {
      public void doAction(DebugCommands.Event e) {
        if (callback != null)
          e.pw.printf("%n%s%n", Escape.html(callback.toString()));
        else
          e.pw.printf("N/A%n");
      }
    };
    debugHandler.addAction(act);
  }
public void makeDebugActions() {
    DebugCommands.Category debugHandler = debugCommands.findCategory("Catalogs");
    DebugCommands.Action act;

     act = new DebugCommands.Action("showCatalogExt", "Show known catalogs") {
       public void doAction(DebugCommands.Event e) {
         e.pw.printf("numberCatalogs=%d nextCatId=%d%n", numberCatalogs, nextCatId);
         e.pw.printf("%nid  root  lastRead     path%n");

         CatalogTracker catalogTracker = new CatalogTracker(trackerDir, false, numberCatalogs, 0);
         for (CatalogExt cat : catalogTracker.getCatalogs()) {
           e.pw.printf("%3d: %5s %s %s%n", cat.getCatId(), cat.isRoot(), CalendarDate.of(cat.getLastRead()), cat.getCatRelLocation());
         }
       }
     };
     debugHandler.addAction(act);

    act = new DebugCommands.Action("showRoots", "Show root catalogs") {
      public void doAction(DebugCommands.Event e) {
        StringBuilder sbuff = new StringBuilder();
        synchronized (ConfigCatalogInitialization.this) {
          for (String catPath : rootCatalogKeys) {
            sbuff.append(" catalog= ").append(catPath).append("\n");
            //String filename = StringUtil2.unescape(cat.getUriString());
            //sbuff.append(" from= ").append(filename).append("\n");
          }
        }
        e.pw.println();
        e.pw.println(Escape.html(sbuff.toString()));
      }
    };
    debugHandler.addAction(act);

    act = new DebugCommands.Action("showStats", "Show catalog initialization stats") {
      public void doAction(DebugCommands.Event e) {
        if (callback != null)
          e.pw.printf("%n%s%n", Escape.html(callback.toString()));
        else
          e.pw.printf("N/A%n");
      }
    };
    debugHandler.addAction(act);
  }
/////////////////////////////////////////////////////////////////////////////////////////////////////////////