2016-10-24 4 views
1

I Diagramm erstellt haben und Ecken und Kanten unter Code unter Verwendungwie Tinkerpop Items herzustellen API in arangodb verwenden, um alle Ecken zu bekommen und Kanten

ArangoDBBatchGraph arang = new ArangoDBBatchGraph("localhost", 8529, "testgraph", "testcollection", "testedgecollection"); 
     Vertex user = null; 
     Vertex preVertex = null; 
     preVertex = arang.addVertex(0); 
     preVertex.setProperty("name", "edgevertex"); 

     long startTime = System.currentTimeMillis(); 
     for(int rec = 1; rec<=10; rec++) { 

      user = arang.addVertex(rec); 
      user.setProperty("name", "user"+ rec); 
      user.setProperty("userid", rec); 
      user.setProperty("gender", "male"); 
      user.setProperty("firstname", "user"); 
      user.setProperty("lastname", rec); 
      user.setProperty("employee number", "emp0"+ rec); 

      arang.addEdge(rec, user, preVertex, "edge"+ rec); 
      preVertex = user; 
     } 

     System.out.println("write Time consumed : "+ (System.currentTimeMillis() - startTime)); 

, aber ich möchte bekommen alle Kanten und Ecken mit Tinkerpop api hinzufügen in der graphischen Darstellung I unten Code versucht, seine nicht funktioniert Ausnahme Exception in thread "main" java.lang.UnsupportedOperationException bei com.arangodb.blueprints.batch.ArangoDBBatchGraph.getVertices (ArangoDBBatchGraph.java:277) bei mydb.ArangodbTest werfen .TestConnection.main (TestConnection.java:54)

startTime = System.currentTimeMillis(); 
     Iterable<Vertex> iter = arang.getVertices(); 
     List<Vertex> list = new ArrayList<Vertex>(); 
     if(iter != null) { 
      for(final Vertex vert : iter) { 
       list.add(vert); 
      } 
     } 
     Iterable<Edge> iterEdge = arang.getEdges(); 
     List<Edge> listEdge = new ArrayList<Edge>(); 
     if(iter != null) { 
      for(Edge edge : iterEdge) { 
       listEdge.add(edge); 
      } 
     } 

     System.out.println("Read vertices list: "+ list.size() + ", Edges List: "+listEdge+ "; Time consumed : "+ (System.currentTimeMillis() - startTime)); 

Bitte helfen Sie alle Kanten und Ecken mit tinkerpop api von arangodb

Vielen Dank im Voraus zu bekommen

Antwort

0

ArangoDBBatchGraph nicht die Methoden getVertices() und getEdges() unterstützen. Sie müssen ArangoDBGraph statt ArangoDBBatchGraph verwenden.

Abgesehen davon sollte Ihr Code funktionieren.

Verwandte Themen