Package org.neo4j.gds.core.huge
Class CSRCompositeRelationshipIterator
- java.lang.Object
-
- org.neo4j.gds.core.huge.CSRCompositeRelationshipIterator
-
- All Implemented Interfaces:
CompositeRelationshipIterator
public class CSRCompositeRelationshipIterator extends java.lang.Object implements CompositeRelationshipIterator
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.neo4j.gds.api.CompositeRelationshipIterator
CompositeRelationshipIterator.RelationshipConsumer
-
-
Field Summary
Fields Modifier and Type Field Description static AdjacencyProperties[]
EMPTY_PROPERTIES
-
Constructor Summary
Constructors Constructor Description CSRCompositeRelationshipIterator(AdjacencyList adjacencyList, java.util.Optional<AdjacencyList> inverseAdjacencyList, java.lang.String[] propertyKeys, AdjacencyProperties[] properties, AdjacencyProperties[] inverseProperties)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CompositeRelationshipIterator
concurrentCopy()
Creates a thread-safe copy of the iterator.int
degree(long nodeId)
Returns the degree of the given node id.void
forEachInverseRelationship(long nodeId, CompositeRelationshipIterator.RelationshipConsumer consumer)
Calls the given consumer for every inverse relationship of a given node.void
forEachRelationship(long nodeId, CompositeRelationshipIterator.RelationshipConsumer consumer)
Applies the given consumer on all relationships of the given node id.java.lang.String[]
propertyKeys()
Returns the property keys that are managed by this iterator.
-
-
-
Field Detail
-
EMPTY_PROPERTIES
public static final AdjacencyProperties[] EMPTY_PROPERTIES
-
-
Constructor Detail
-
CSRCompositeRelationshipIterator
public CSRCompositeRelationshipIterator(AdjacencyList adjacencyList, java.util.Optional<AdjacencyList> inverseAdjacencyList, java.lang.String[] propertyKeys, AdjacencyProperties[] properties, AdjacencyProperties[] inverseProperties)
-
-
Method Detail
-
degree
public int degree(long nodeId)
Description copied from interface:CompositeRelationshipIterator
Returns the degree of the given node id.- Specified by:
degree
in interfaceCompositeRelationshipIterator
-
forEachRelationship
public void forEachRelationship(long nodeId, CompositeRelationshipIterator.RelationshipConsumer consumer)
Description copied from interface:CompositeRelationshipIterator
Applies the given consumer on all relationships of the given node id.- Specified by:
forEachRelationship
in interfaceCompositeRelationshipIterator
-
forEachInverseRelationship
public void forEachInverseRelationship(long nodeId, CompositeRelationshipIterator.RelationshipConsumer consumer)
Description copied from interface:CompositeRelationshipIterator
Calls the given consumer for every inverse relationship of a given node. Inverse relationships basically mirror the relationships in the iterator. For example, if `forEachRelationship(42)` returns `1337` then the result of `forEachInverseRelationship(1337)` contains `42. For undirected relationships, accessing the inverse is never supported.Note, that the inverse index might not always be present. Check
GraphStore.inverseIndexedRelationshipTypes()
before calling this method to verify that the relevant relationship type is inverse indexed.- Specified by:
forEachInverseRelationship
in interfaceCompositeRelationshipIterator
- Parameters:
nodeId
- the node for which to iterate the inverse relationshipsconsumer
- relationship consumer function
-
propertyKeys
public java.lang.String[] propertyKeys()
Description copied from interface:CompositeRelationshipIterator
Returns the property keys that are managed by this iterator. The order is equivalent to the order of the value array inCompositeRelationshipIterator.RelationshipConsumer.consume(long, long, double[])
.- Specified by:
propertyKeys
in interfaceCompositeRelationshipIterator
-
concurrentCopy
public CompositeRelationshipIterator concurrentCopy()
Description copied from interface:CompositeRelationshipIterator
Creates a thread-safe copy of the iterator.- Specified by:
concurrentCopy
in interfaceCompositeRelationshipIterator
-
-