org.neo4j.graphdb.Node.getGraphDatabase()方法的使用及代码示例

x33g5p2x  于2022-01-24 转载在 其他  
字(8.3k)|赞(0)|评价(0)|浏览(205)

本文整理了Java中org.neo4j.graphdb.Node.getGraphDatabase()方法的一些代码示例,展示了Node.getGraphDatabase()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Node.getGraphDatabase()方法的具体详情如下:
包路径:org.neo4j.graphdb.Node
类名称:Node
方法名:getGraphDatabase

Node.getGraphDatabase介绍

暂无

代码示例

代码示例来源:origin: neo4j/neo4j

  1. private void resolveMonitor( Node node )
  2. {
  3. if ( dataMonitor == null )
  4. {
  5. GraphDatabaseService service = node.getGraphDatabase();
  6. if ( service instanceof GraphDatabaseFacade )
  7. {
  8. Monitors monitors = ((GraphDatabaseFacade) service).getDependencyResolver().resolveDependency( Monitors.class );
  9. dataMonitor = monitors.newMonitor( DataMonitor.class );
  10. }
  11. }
  12. }

代码示例来源:origin: neo4j/neo4j

  1. private Relationship createRelationship( Node node )
  2. {
  3. try ( Transaction tx = node.getGraphDatabase().beginTx() )
  4. {
  5. Relationship rel = node.createRelationshipTo( node, MyRelTypes.TEST );
  6. tx.success();
  7. return rel;
  8. }
  9. }

代码示例来源:origin: neo4j/neo4j

  1. @PluginTarget( Node.class )
  2. public Node getThisNodeOrById( @Source Node start, @Parameter( name = "id", optional = true ) Long id )
  3. {
  4. optional = id;
  5. if ( id == null )
  6. {
  7. return start;
  8. }
  9. try ( Transaction tx = start.getGraphDatabase().beginTx() )
  10. {
  11. Node node = start.getGraphDatabase().getNodeById( id );
  12. tx.success();
  13. return node;
  14. }
  15. }

代码示例来源:origin: neo4j/neo4j

  1. public static void destroy( Map<String, Node> nodes )
  2. {
  3. if ( nodes.isEmpty() )
  4. {
  5. return;
  6. }
  7. GraphDatabaseService db = nodes.values().iterator().next().getGraphDatabase();
  8. try ( Transaction tx = db.beginTx() )
  9. {
  10. for ( Node node : db.getAllNodes() )
  11. {
  12. for ( Relationship rel : node.getRelationships() )
  13. {
  14. rel.delete();
  15. }
  16. node.delete();
  17. }
  18. tx.success();
  19. }
  20. }

代码示例来源:origin: neo4j/neo4j

  1. void setProperty( String nodeName, String propertyName, Object propertyValue )
  2. {
  3. Node i = this.getNode( nodeName );
  4. GraphDatabaseService db = i.getGraphDatabase();
  5. try ( Transaction tx = db.beginTx() )
  6. {
  7. i.setProperty( propertyName, propertyValue );
  8. tx.success();
  9. }
  10. }

代码示例来源:origin: neo4j/neo4j

  1. @PluginTarget( Node.class )
  2. public Node getThisNodeOrById( @Source Node start, @Parameter( name = "id", optional = true ) Long id )
  3. {
  4. optional = id;
  5. if ( id == null )
  6. {
  7. return start;
  8. }
  9. return start.getGraphDatabase()
  10. .getNodeById( id );
  11. }

代码示例来源:origin: neo4j/neo4j

  1. @PluginTarget( Node.class )
  2. public Iterable<Relationship> getRelationshipsBetween( @Source final Node start,
  3. @Parameter( name = "other" ) final Node end )
  4. {
  5. List<Relationship> result = new ArrayList<>();
  6. try ( Transaction tx = start.getGraphDatabase().beginTx() )
  7. {
  8. for ( Relationship relationship : start.getRelationships() )
  9. {
  10. if ( relationship.getOtherNode( start ).equals( end ) )
  11. {
  12. result.add( relationship );
  13. }
  14. }
  15. tx.success();
  16. }
  17. return result;
  18. }

代码示例来源:origin: neo4j/neo4j

  1. @PluginTarget( Node.class )
  2. public Iterable<Relationship> createRelationships( @Source Node start,
  3. @Parameter( name = "type" ) RelationshipType type, @Parameter( name = "nodes" ) Iterable<Node> nodes )
  4. {
  5. List<Relationship> result = new ArrayList<>();
  6. try ( Transaction tx = start.getGraphDatabase().beginTx() )
  7. {
  8. for ( Node end : nodes )
  9. {
  10. result.add( start.createRelationshipTo( end, type ) );
  11. }
  12. tx.success();
  13. }
  14. return result;
  15. }

代码示例来源:origin: neo4j/neo4j

  1. @Name( GET_CONNECTED_NODES )
  2. @PluginTarget( Node.class )
  3. public Iterable<Node> getAllConnectedNodes( @Source Node start )
  4. {
  5. ArrayList<Node> nodes = new ArrayList<>();
  6. try ( Transaction tx = start.getGraphDatabase().beginTx() )
  7. {
  8. for ( Relationship rel : start.getRelationships() )
  9. {
  10. nodes.add( rel.getOtherNode( start ) );
  11. }
  12. tx.success();
  13. }
  14. return nodes;
  15. }

代码示例来源:origin: neo4j/neo4j

  1. @Override
  2. protected Traverser instantiateTraverser( Node start, Node end )
  3. {
  4. GraphDatabaseService db = start.getGraphDatabase();
  5. TraversalDescription sideBase = db.traversalDescription().breadthFirst().uniqueness( NODE_PATH );
  6. return db.bidirectionalTraversalDescription().mirroredSides( sideBase.expand( expander ) )
  7. .sideSelector( LEVEL_STOP_DESCENT_ON_RESULT, maxDepth )
  8. .collisionEvaluator( toDepth( maxDepth ) )
  9. .traverse( start, end );
  10. }

代码示例来源:origin: neo4j/neo4j

  1. @PluginTarget( Node.class )
  2. public Iterable<Relationship> createRelationships( @Source Node start,
  3. @Parameter( name = "type" ) RelationshipType type, @Parameter( name = "nodes" ) Iterable<Node> nodes )
  4. {
  5. List<Relationship> result = new ArrayList<>();
  6. try ( Transaction tx = start.getGraphDatabase().beginTx() )
  7. {
  8. for ( Node end : nodes )
  9. {
  10. result.add( start.createRelationshipTo( end, type ) );
  11. }
  12. tx.success();
  13. }
  14. return result;
  15. }

代码示例来源:origin: neo4j/neo4j

  1. @Override
  2. void extraData( MappingSerializer serializer )
  3. {
  4. if ( !isDeleted() )
  5. {
  6. MappingWriter writer = serializer.writer;
  7. MappingWriter properties = writer.newMapping( RepresentationType.PROPERTIES, "data" );
  8. new PropertiesRepresentation( node ).serialize( properties );
  9. if ( writer.isInteractive() )
  10. {
  11. serializer.putList( "relationship_types", ListRepresentation.relationshipTypes(
  12. node.getGraphDatabase().getAllRelationshipTypes() ) );
  13. }
  14. properties.done();
  15. }
  16. }

代码示例来源:origin: neo4j/neo4j

  1. private static Function<Node,StartRelationship> incoming( String type )
  2. {
  3. return node ->
  4. {
  5. GraphDatabaseService db = node.getGraphDatabase();
  6. RelationshipType relType = withName( type );
  7. return new StartRelationship(
  8. db.createNode().createRelationshipTo( node, relType ).getId(),
  9. Direction.INCOMING,
  10. relType );
  11. };
  12. }

代码示例来源:origin: neo4j/neo4j

  1. private static Function<Node,StartRelationship> outgoing( String type )
  2. {
  3. return node ->
  4. {
  5. GraphDatabaseService db = node.getGraphDatabase();
  6. RelationshipType relType = withName( type );
  7. return new StartRelationship(
  8. node.createRelationshipTo( db.createNode(), relType ).getId(),
  9. Direction.OUTGOING,
  10. relType );
  11. };
  12. }

代码示例来源:origin: neo4j/neo4j

  1. private Relationship getFirstRelationshipFromRomeoNode()
  2. {
  3. Node romeo = getNode( "Romeo" );
  4. try ( Transaction transaction = romeo.getGraphDatabase().beginTx() )
  5. {
  6. ResourceIterable<Relationship> relationships = (ResourceIterable<Relationship>) romeo.getRelationships();
  7. try ( ResourceIterator<Relationship> iterator = relationships.iterator() )
  8. {
  9. return iterator.next();
  10. }
  11. }
  12. }

代码示例来源:origin: neo4j/neo4j

  1. @PluginTarget( Node.class )
  2. public Path pathToReference( @Source Node me )
  3. {
  4. PathFinder<Path> finder = GraphAlgoFactory.shortestPath( PathExpanders.allTypesAndDirections(), 6 );
  5. return finder.findSinglePath( me.getGraphDatabase()
  6. .createNode(), me );
  7. }
  8. }

代码示例来源:origin: neo4j/neo4j

  1. @Override
  2. protected Traverser instantiateTraverser( Node start, Node end )
  3. {
  4. // Bidirectional traversal
  5. GraphDatabaseService db = start.getGraphDatabase();
  6. TraversalDescription base = db.traversalDescription().depthFirst().uniqueness( uniqueness() );
  7. return db.bidirectionalTraversalDescription()
  8. .startSide( base.expand( expander ).evaluator( toDepth( maxDepth / 2 ) ) )
  9. .endSide( base.expand( expander.reverse() ).evaluator( toDepth( maxDepth - maxDepth / 2 ) ) )
  10. .traverse( start, end );
  11. }
  12. }

代码示例来源:origin: neo4j/neo4j

  1. private ResourceIterable<WeightedPath> findPaths( Node start, Node end, boolean multiplePaths )
  2. {
  3. PathInterest interest;
  4. if ( multiplePaths )
  5. {
  6. interest = stopAfterLowestWeight ? PathInterestFactory.allShortest() : PathInterestFactory.all();
  7. }
  8. else
  9. {
  10. interest = PathInterestFactory.single();
  11. }
  12. GraphDatabaseService db = start.getGraphDatabase();
  13. TraversalDescription traversalDescription = db.traversalDescription().uniqueness( Uniqueness.NONE )
  14. .expand( expander, initialState );
  15. lastTraverser = traversalDescription.order(
  16. new SelectorFactory( end, interest ) )
  17. .evaluator( includeWhereEndNodeIs( end ) )
  18. .traverse( start );
  19. return Iterators.asResourceIterable(
  20. new WeightedPathIterator( lastTraverser.iterator(), costEvaluator, stopAfterLowestWeight ) );
  21. }

代码示例来源:origin: neo4j/neo4j

  1. @Test
  2. @Graph( "I know you" )
  3. public void get_Relationship_by_ID() throws JsonParseException
  4. {
  5. Node node = data.get().get( "I" );
  6. Relationship relationship;
  7. try ( Transaction transaction = node.getGraphDatabase().beginTx() )
  8. {
  9. relationship = node.getSingleRelationship(
  10. RelationshipType.withName( "know" ),
  11. Direction.OUTGOING );
  12. }
  13. String response = gen().expectedStatus(
  14. com.sun.jersey.api.client.ClientResponse.Status.OK.getStatusCode() ).get(
  15. getRelationshipUri( relationship ) ).entity();
  16. assertTrue( JsonHelper.jsonToMap( response ).containsKey( "start" ) );
  17. }

代码示例来源:origin: neo4j/neo4j

  1. @Override
  2. protected Traverser instantiateTraverser( Node start, Node end )
  3. {
  4. GraphDatabaseService db = start.getGraphDatabase();
  5. TraversalDescription side =
  6. db.traversalDescription().breadthFirst().uniqueness( uniqueness ).order(
  7. ( startSource, expander ) -> new LiteDepthFirstSelector( startSource, startThreshold, expander ) );
  8. return db.bidirectionalTraversalDescription().startSide( side.expand( expander ).evaluator( toDepth( onDepth / 2 ) ) )
  9. .endSide( side.expand( expander.reverse() ).evaluator( toDepth( onDepth - onDepth / 2 ) ) )
  10. .collisionEvaluator( atDepth( onDepth ) )
  11. // TODO Level side selector will make the traversal return wrong result, why?
  12. // .sideSelector( SideSelectorPolicies.LEVEL, onDepth )
  13. .traverse( start, end );
  14. }
  15. }

相关文章