boolean execute()

in tephra-hbase-compat-1.3/src/main/java/org/apache/tephra/hbase/txprune/InvalidListPruningDebugTool.java [303:353]


  boolean execute(String[] args, PrintWriter out) throws IOException {
      if (args.length < 1) {
        printUsage(out);
        return false;
      }

    String command = args[0];
    switch (command) {
        case "time-region":
          if (args.length <= 2) {
            String time = args.length == 2 ? args[1] : NOW;
            RegionsAtTime timeRegion = getRegionsOnOrBeforeTime(time);
            out.println(GSON.toJson(timeRegion));
            return true;
          }
          break;
        case "idle-regions":
          if (args.length <= 3) {
            Integer numRegions = Integer.parseInt(args[1]);
            String time = args.length == 3 ? args[2] : NOW;
            SortedSet<RegionPruneInfoPretty> regionPruneInfos = getIdleRegions(numRegions, time);
            out.println(GSON.toJson(regionPruneInfos));
            return true;
          }
          break;
        case "prune-info":
          if (args.length == 2) {
            String regionName = args[1];
            RegionPruneInfo regionPruneInfo = getRegionPruneInfo(regionName);
            if (regionPruneInfo != null) {
              out.println(GSON.toJson(regionPruneInfo));
            } else {
              out.println(String.format("No prune info found for the region %s.", regionName));
            }
            return true;
          }
          break;
        case "to-compact-regions":
          if (args.length <= 3) {
            Integer numRegions = Integer.parseInt(args[1]);
            String time = args.length == 3 ? args[2] : NOW;
            Set<String> toBeCompactedRegions = getRegionsToBeCompacted(numRegions, time);
            out.println(GSON.toJson(toBeCompactedRegions));
            return true;
          }
          break;
      }

      printUsage(out);
      return false;
  }