protected JsonObject processQuery()

in src/main/java/org/apache/datasketches/server/ResetHandler.java [43:83]


  protected JsonObject processQuery(final JsonObject query) {
    if (!query.has(QUERY_NAME_FIELD)) {
      throw new IllegalArgumentException("Query missing sketch name field");
    }

    final String key = query.get(QUERY_NAME_FIELD).getAsString();
    if (!sketches.contains(key)) {
      throw new IllegalArgumentException("Invalid sketch name: " + key);
    }

    synchronized (key.intern()) {
      final SketchStorage.SketchEntry se = sketches.getSketch(key);

      switch (se.family_) {
        case UNION:
          ((Union) se.sketch_).reset();
          break;
        case KLL:
          se.sketch_ = new KllFloatsSketch(se.configK_);
          break;
        case FREQUENCY:
          ((ItemsSketch<String>) se.sketch_).reset();
          break;
        case HLL:
          ((HllSketch) se.sketch_).reset();
          break;
        case CPC:
          ((CpcSketch) se.sketch_).reset();
          break;
        case RESERVOIR:
          ((ReservoirItemsSketch<String>) se.sketch_).reset();
          break;
        case VAROPT:
          ((VarOptItemsSketch<String>) se.sketch_).reset();
          break;
      }
    }

    // nothing to return from reset calls
    return null;
  }