public static void fromCRAWDAD( LinkTrace links, InputStream in, double timeMul, long ticsPerSecond, long offset, IdGenerator idGen) throws IOException { StatefulWriter<LinkEvent, Link> linkWriter = links.getWriter(); BufferedReader br = new BufferedReader(new InputStreamReader(in)); String line; while ((line = br.readLine()) != null) { String[] elems = line.split("[ \t]+"); Integer id1 = idGen.getInternalId(elems[0]); Integer id2 = idGen.getInternalId(elems[1]); long begin = (long) (Long.parseLong(elems[2]) * timeMul) + offset; long end = (long) (Long.parseLong(elems[3]) * timeMul) + offset; linkWriter.queue(begin, new LinkEvent(id1, id2, LinkEvent.UP)); linkWriter.queue(end, new LinkEvent(id1, id2, LinkEvent.DOWN)); } linkWriter.flush(); linkWriter.setProperty(Trace.timeUnitKey, Units.toTimeUnit(ticsPerSecond)); idGen.writeTraceInfo(linkWriter); linkWriter.close(); br.close(); }
/** * Returns a String representation of {@code unit}. * * @param unit the {@link Units} instance * @return a String representation of {@code unit} */ @SuppressWarnings("unused") private static String toString(final Units unit) { return "Units{" + "value='" + unit.value() + '\'' + '}'; }