!7 sclass DirInfo { File file; long size; } module JavaXDirSizes extends DynObjectTable { start { itemToMap = func(DirInfo d) -> Map { litorderedmap( Directory := f2s(d.file), "Size" := str_toM_questionMarkIfBelowZero(d.size)) }; // wait 10 seconds if booting, then every 10 minutes doEvery(dm_osStarting() ? 10.0 : 0.0, 600.0, r calcIt); } void calcIt { temp enter(); new L l; time "Calculate Dir Sizes" { for (File dir : allJavaXDirectories()) { long size = -1; pcall { size = guessClusteredDirSize(dir); } l.add(nu(DirInfo, file := dir, +size)); } } setData(sortedByFieldDesc('size, l)); } }