private String orderStr(final int predecessorId, final int successorId) { final StringBuilder sb = new StringBuilder(); sb.append("{").append(quote(JsonTraceCodec.RELATIONSHIP_RELATIONSHIP)).append(": ") .append(quote(Relationship.SUCCESSOR_OF.name())).append(",").append(quote(JsonTraceCodec.RELATIONSHIP_FROM)) .append(": ").append(successorId).append(",").append(quote(JsonTraceCodec.RELATIONSHIP_TO)).append(": ") .append(predecessorId).append("}"); return sb.toString(); }
@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((_from.getId() == null) ? 0 : _from.getId().hashCode()); result = prime * result + ((_relationship == null) ? 0 : _relationship.hashCode()); result = prime * result + ((_to.getId() == null) ? 0 : _to.getId().hashCode()); return result; }
private static Set<TraceRelationship> parseRelationships(final JsonNode rootNode, final Map<Long, ShallowTrace> traceMap) throws IOException { Set<TraceRelationship> relationships = new HashSet<>(); for (JsonNode node : getField(rootNode, JsonTraceCodec.RELATIONSHIPS)) { final Relationship relationship = Relationship.valueOf(getTextField(node, JsonTraceCodec.RELATIONSHIP_RELATIONSHIP)); final long from = getIntField(node, JsonTraceCodec.RELATIONSHIP_FROM); final long to = getIntField(node, JsonTraceCodec.RELATIONSHIP_TO); if (!traceMap.containsKey(from)) { throw new IOException("Missing trace with id: " + from + " referenced by relationship: " + relationship); } if (!traceMap.containsKey(to)) { throw new IOException("Missing trace with id: " + to + " referenced by relationship: " + relationship); } relationships.add(new TraceRelationship(new ShallowTraceBuilder(traceMap.get(from)), new ShallowTraceBuilder(traceMap.get(to)), relationship)); } return relationships; }
private String hierStr(final int parentId, final int childId) { final StringBuilder sb = new StringBuilder(); sb.append("{").append(quote(JsonTraceCodec.RELATIONSHIP_RELATIONSHIP)).append(": ") .append(quote(Relationship.PARENT_OF.name())).append(",").append(quote(JsonTraceCodec.RELATIONSHIP_FROM)) .append(": ").append(parentId).append(",").append(quote(JsonTraceCodec.RELATIONSHIP_TO)).append(": ") .append(childId).append("}"); return sb.toString(); }
@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((_from.getId() == null) ? 0 : _from.getId().hashCode()); result = prime * result + ((_relationship == null) ? 0 : _relationship.hashCode()); result = prime * result + ((_to.getId() == null) ? 0 : _to.getId().hashCode()); return result; }
private static Set<TraceRelationship> parseRelationships(final JsonNode rootNode, final Map<Long, ShallowTrace> traceMap) throws IOException { Set<TraceRelationship> relationships = new HashSet<>(); for (JsonNode node : getField(rootNode, JsonTraceCodec.RELATIONSHIPS)) { final Relationship relationship = Relationship.valueOf(getTextField(node, JsonTraceCodec.RELATIONSHIP_RELATIONSHIP)); final long from = getIntField(node, JsonTraceCodec.RELATIONSHIP_FROM); final long to = getIntField(node, JsonTraceCodec.RELATIONSHIP_TO); if (!traceMap.containsKey(from)) { throw new IOException("Missing trace with id: " + from + " referenced by relationship: " + relationship); } if (!traceMap.containsKey(to)) { throw new IOException("Missing trace with id: " + to + " referenced by relationship: " + relationship); } relationships.add(new TraceRelationship(new ShallowTraceBuilder(traceMap.get(from)), new ShallowTraceBuilder(traceMap.get(to)), relationship)); } return relationships; }
private static void writeRelationships(final Trace trace, final JsonGenerator generator) throws IOException { generator.writeArrayFieldStart(JsonTraceCodec.RELATIONSHIPS); for (TraceRelationship rel : trace.getRelationships()) { generator.writeStartObject(); generator.writeStringField(JsonTraceCodec.RELATIONSHIP_RELATIONSHIP, rel.getRelationhsip().name()); generator.writeNumberField(JsonTraceCodec.RELATIONSHIP_FROM, rel.getFrom()); generator.writeNumberField(JsonTraceCodec.RELATIONSHIP_TO, rel.getTo()); generator.writeEndObject(); } generator.writeEndArray(); }
private static void writeRelationships(final Trace trace, final JsonGenerator generator) throws IOException { generator.writeArrayFieldStart(JsonTraceCodec.RELATIONSHIPS); for (TraceRelationship rel : trace.getRelationships()) { generator.writeStartObject(); generator.writeStringField(JsonTraceCodec.RELATIONSHIP_RELATIONSHIP, rel.getRelationhsip().name()); generator.writeNumberField(JsonTraceCodec.RELATIONSHIP_FROM, rel.getFrom()); generator.writeNumberField(JsonTraceCodec.RELATIONSHIP_TO, rel.getTo()); generator.writeEndObject(); } generator.writeEndArray(); }