From ac5172d6ace652854263f068105b387eefaf3cad Mon Sep 17 00:00:00 2001 From: Alexander Patrikalakis Date: Sat, 4 Mar 2017 01:27:33 +0900 Subject: [PATCH] Enabled setting custom vertex ids in TP3 interface Signed-off-by: Alexander Patrikalakis --- .../graphdb/tinkerpop/JanusGraphBlueprintsTransaction.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/janusgraph-core/src/main/java/org/janusgraph/graphdb/tinkerpop/JanusGraphBlueprintsTransaction.java b/janusgraph-core/src/main/java/org/janusgraph/graphdb/tinkerpop/JanusGraphBlueprintsTransaction.java index f4d637b8187..bd1a4808fec 100644 --- a/janusgraph-core/src/main/java/org/janusgraph/graphdb/tinkerpop/JanusGraphBlueprintsTransaction.java +++ b/janusgraph-core/src/main/java/org/janusgraph/graphdb/tinkerpop/JanusGraphBlueprintsTransaction.java @@ -19,6 +19,7 @@ import org.janusgraph.core.JanusGraphVertex; import org.janusgraph.core.VertexLabel; import org.janusgraph.diskstorage.util.Hex; +import org.janusgraph.graphdb.database.StandardJanusGraph; import org.janusgraph.graphdb.olap.computer.FulgoraGraphComputer; import org.janusgraph.graphdb.relations.RelationIdentifier; import org.janusgraph.graphdb.types.system.BaseVertexLabel; @@ -99,7 +100,7 @@ public FulgoraGraphComputer compute() throws IllegalArgumentException { @Override public JanusGraphVertex addVertex(Object... keyValues) { ElementHelper.legalPropertyKeyValueArray(keyValues); - if (ElementHelper.getIdValue(keyValues).isPresent()) throw Vertex.Exceptions.userSuppliedIdsNotSupported(); + if (ElementHelper.getIdValue(keyValues).isPresent() && !((StandardJanusGraph) getGraph()).getConfiguration().allowVertexIdSetting()) throw Vertex.Exceptions.userSuppliedIdsNotSupported(); Object labelValue = null; for (int i = 0; i < keyValues.length; i = i + 2) { if (keyValues[i].equals(T.label)) { @@ -114,7 +115,7 @@ public JanusGraphVertex addVertex(Object... keyValues) { label = (labelValue instanceof VertexLabel)?(VertexLabel)labelValue:getOrCreateVertexLabel((String) labelValue); } - final JanusGraphVertex vertex = addVertex(null,label); + final JanusGraphVertex vertex = addVertex(ElementHelper.getIdValue(keyValues).orElse(null), label); // for (int i = 0; i < keyValues.length; i = i + 2) { // if (!keyValues[i].equals(T.id) && !keyValues[i].equals(T.label)) // ((StandardJanusGraphTx)this).addPropertyInternal(vertex,getOrCreatePropertyKey((String) keyValues[i]),keyValues[i+1]);