long start = System.currentTimeMillis();
Project project = getProject(request);
Engine engine = getEngine(request, project);
JSONObject clusterer_conf = getJsonParameter(request,"clusterer");
Clusterer clusterer = null;
String type = clusterer_conf.has("type") ? clusterer_conf.getString("type") : "binning";
if ("knn".equals(type)) {
clusterer = new kNNClusterer();
} else {
clusterer = new BinningClusterer();
}
clusterer.initializeFromJSON(project, clusterer_conf);
clusterer.computeClusters(engine);
respondJSON(response, clusterer);
logger.info("computed clusters [{},{}] in {}ms", new Object[] { type, clusterer_conf.getString("function"), Long.toString(System.currentTimeMillis() - start) });
} catch (Exception e) {
respondException(response, e);