Package org.neo4j.gds.api
Interface IdMap
-
- All Superinterfaces:
BatchNodeIterable,NodeIterator,PartialIdMap
- All Known Subinterfaces:
CSRGraph,FilteredIdMap,Graph
- All Known Implementing Classes:
ArrayIdMap,CSRGraphAdapter,GraphAdapter,HugeGraph,IdMapAdapter,LabeledIdMap,NodeFilteredGraph,UnionGraph
public interface IdMap extends PartialIdMap, NodeIterator, BatchNodeIterable
Bidirectional mapping between two id spaces. Usually the IdMap is used to map between neo4j node ids and consecutive mapped node ids.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceIdMap.NodeLabelConsumer-
Nested classes/interfaces inherited from interface org.neo4j.gds.api.BatchNodeIterable
BatchNodeIterable.BitSetIdIterator, BatchNodeIterable.IdIterable, BatchNodeIterable.IdIterator
-
-
Field Summary
Fields Modifier and Type Field Description static longNOT_FOUNDDefines the value for unmapped idsstatic longSTART_NODE_IDDefines the lower bound of mapped ids
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description java.util.Set<org.neo4j.gds.NodeLabel>availableNodeLabels()booleancontains(long originalNodeId)Returns true iff the neo4jNodeId is mapped, otherwise false.voidforEachNodeLabel(long mappedNodeId, IdMap.NodeLabelConsumer consumer)booleanhasLabel(long mappedNodeId, org.neo4j.gds.NodeLabel label)longhighestNeoId()longnodeCount()Number of mapped nodeIds.java.util.List<org.neo4j.gds.NodeLabel>nodeLabels(long mappedNodeId)IdMaprootIdMap()Returns the original node mapping if the current node mapping is filtered, otherwise it returns itself.default longsafeToMappedNodeId(long originalNodeId)Map original nodeId to mapped nodeId Returns org.neo4j.gds.api.IdMap#NOT_FOUND if the nodeId is not mapped.longtoOriginalNodeId(long mappedNodeId)Map mapped nodeId back to neo4j nodeIdlongtoRootNodeId(long mappedNodeId)Maps a filtered mapped node id to its root mapped node id.default java.util.Optional<? extends FilteredIdMap>withFilteredLabels(java.util.Collection<org.neo4j.gds.NodeLabel> nodeLabels, int concurrency)-
Methods inherited from interface org.neo4j.gds.api.BatchNodeIterable
batchIterables
-
Methods inherited from interface org.neo4j.gds.api.NodeIterator
forEachNode, nodeIterator, nodeIterator
-
Methods inherited from interface org.neo4j.gds.api.PartialIdMap
rootNodeCount, toMappedNodeId
-
-
-
-
Field Detail
-
START_NODE_ID
static final long START_NODE_ID
Defines the lower bound of mapped ids- See Also:
- Constant Field Values
-
NOT_FOUND
static final long NOT_FOUND
Defines the value for unmapped ids- See Also:
- Constant Field Values
-
-
Method Detail
-
safeToMappedNodeId
default long safeToMappedNodeId(long originalNodeId)
Map original nodeId to mapped nodeId Returns org.neo4j.gds.api.IdMap#NOT_FOUND if the nodeId is not mapped.
-
toOriginalNodeId
long toOriginalNodeId(long mappedNodeId)
Map mapped nodeId back to neo4j nodeId
-
toRootNodeId
long toRootNodeId(long mappedNodeId)
Maps a filtered mapped node id to its root mapped node id. This is necessary for nested (filtered) id mappings. If this mapping is a nested mapping, this method returns the root mapped node id of the parent mapping. For the root mapping this method returns the given node id.
-
contains
boolean contains(long originalNodeId)
Returns true iff the neo4jNodeId is mapped, otherwise false.
-
nodeCount
long nodeCount()
Number of mapped nodeIds.
-
highestNeoId
long highestNeoId()
-
nodeLabels
java.util.List<org.neo4j.gds.NodeLabel> nodeLabels(long mappedNodeId)
-
forEachNodeLabel
void forEachNodeLabel(long mappedNodeId, IdMap.NodeLabelConsumer consumer)
-
availableNodeLabels
java.util.Set<org.neo4j.gds.NodeLabel> availableNodeLabels()
-
hasLabel
boolean hasLabel(long mappedNodeId, org.neo4j.gds.NodeLabel label)
-
rootIdMap
IdMap rootIdMap()
Returns the original node mapping if the current node mapping is filtered, otherwise it returns itself.
-
withFilteredLabels
default java.util.Optional<? extends FilteredIdMap> withFilteredLabels(java.util.Collection<org.neo4j.gds.NodeLabel> nodeLabels, int concurrency)
-
-