@Override public void handle(Request request, Response response) { try (DbSession session = dbClient.openSession(false)) { ComponentDto component = loadComponent(session, request); userSession.checkComponentPermission(UserRole.USER, component); JsonWriter json = response.newJsonWriter(); json.beginObject(); Map<String, LiveMeasureDto> measuresByMetricKey = loadMeasuresGroupedByMetricKey(component, session); appendComponent(json, component, userSession, session); appendPermissions(json, userSession); appendMeasures(json, measuresByMetricKey); json.endObject(); json.close(); } }
@CheckForNull private static String formatMeasure(Map<String, LiveMeasureDto> measuresByMetricKey, Metric metric) { LiveMeasureDto measure = measuresByMetricKey.get(metric.getKey()); return formatMeasure(measure, metric); }
private static String formatMeasure(@Nullable LiveMeasureDto measure, Metric metric) { if (measure == null) { return null; } Double value = getDoubleValue(measure, metric); if (value != null) { return Double.toString(value); } return null; }
json.prop("q", component.qualifier()); ComponentDto parentModule = retrieveParentModuleIfNotCurrentComponent(component, session); ComponentDto project = dbClient.componentDao().selectOrFailByUuid(session, component.projectUuid());
json.prop("q", component.qualifier()); ComponentDto parentProject = retrieveRootIfNotCurrentComponent(component, session); ComponentDto project = dbClient.componentDao().selectOrFailByUuid(session, component.projectUuid());
@Override public void handle(Request request, Response response) { try (DbSession session = dbClient.openSession(false)) { ComponentDto component = loadComponent(session, request); userSession.checkComponentPermission(UserRole.USER, component); JsonWriter json = response.newJsonWriter(); json.beginObject(); Map<String, LiveMeasureDto> measuresByMetricKey = loadMeasuresGroupedByMetricKey(component, session); appendComponent(json, component, userSession, session); appendPermissions(json, userSession); appendMeasures(json, measuresByMetricKey); json.endObject(); json.close(); } }
private static void appendMeasures(JsonWriter json, Map<String, LiveMeasureDto> measuresByMetricKey) { json.name("measures").beginObject(); json.prop("lines", formatMeasure(measuresByMetricKey, LINES)); json.prop("coverage", formatMeasure(measuresByMetricKey, COVERAGE)); json.prop("duplicationDensity", formatMeasure(measuresByMetricKey, DUPLICATED_LINES_DENSITY)); json.prop("issues", formatMeasure(measuresByMetricKey, VIOLATIONS)); json.prop("tests", formatMeasure(measuresByMetricKey, TESTS)); json.endObject(); }
private static String formatMeasure(@Nullable LiveMeasureDto measure, Metric metric) { if (measure == null) { return null; } Double value = getDoubleValue(measure, metric); if (value != null) { return Double.toString(value); } return null; }
@CheckForNull private static String formatMeasure(Map<String, LiveMeasureDto> measuresByMetricKey, Metric metric) { LiveMeasureDto measure = measuresByMetricKey.get(metric.getKey()); return formatMeasure(measure, metric); }
private static void appendMeasures(JsonWriter json, Map<String, LiveMeasureDto> measuresByMetricKey) { json.name("measures").beginObject(); json.prop("lines", formatMeasure(measuresByMetricKey, LINES)); json.prop("coverage", formatMeasure(measuresByMetricKey, COVERAGE)); json.prop("duplicationDensity", formatMeasure(measuresByMetricKey, DUPLICATED_LINES_DENSITY)); json.prop("issues", formatMeasure(measuresByMetricKey, VIOLATIONS)); json.prop("tests", formatMeasure(measuresByMetricKey, TESTS)); json.endObject(); }