protected static void loadMeasurement(int id) throws Exception { MeasurementGetResponse get = execute(service.measurements().get(String.valueOf(id))); Measurement measurement = get.getResult(); if (measurement.getDescription().startsWith("MeasureRingNode")) { MeasurementResultResponse resultResp = execute(service.measurements().result(String.valueOf(id))); List<MeasurementResult> results = resultResp.getResult(); for (MeasurementResult result : results) { List<TraceData> sections = new ArrayList<TraceData>(); for (Output output : result.getOutputs()) { if (validStep(output)) { TracerouteOutput to = (TracerouteOutput) output; TracerouteData summary = summarize(to.getData()); TraceData section = new TraceData(); section.setToIp(summary.getFrom()); TraceData validStart = validStart(sections, summary); if (validStart == null) { section.setFromIp(result.getFrom()); section.setRtt(summary.getRoundTripTime()); } else { section.setFromIp(validStart.getToIp()); section.setRtt(summary.getRoundTripTime().subtract(validStart.getRttSource())); } section.setRttSource(summary.getRoundTripTime()); section.setSourceIp(result.getFrom()); sections.add(section); } } // Output section for (TraceData td : sections) { traceDataDao.save(td); } } } }