Package org.aksw.jenax.arq.util.node
Class BlankNodeAllocatorAsGivenOrRandom
java.lang.Object
org.aksw.jenax.arq.util.node.BlankNodeAllocatorAsGivenOrRandom
- All Implemented Interfaces:
org.apache.jena.riot.lang.BlankNodeAllocator
public class BlankNodeAllocatorAsGivenOrRandom
extends Object
implements org.apache.jena.riot.lang.BlankNodeAllocator
An adaption of
BlankNodeAllocatorLabelEncoded
which passes on labels as given, but allocates fresh ones based on incrementing a value
scoped with a random per-jvm value.
This means that any given blank node labels such as _:foo will be retained, but turtle constructs such as
:s :p [] will yield unique blank nodes across jvms.
TODO Should this class go to IO-related utils (parsing/serialization) instead?- Author:
- Claus Stadler
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringBNodeGenIdPrefix is a copy ofBlankNodeAllocatorLabelEncoded's private attributeprotected final AtomicLongprotected final longA random per-jvm value used for blank node allocation -
Constructor Summary
ConstructorsConstructorDescriptionBlankNodeAllocatorAsGivenOrRandom(long globalBnodeScope) BlankNodeAllocatorAsGivenOrRandom(long globalBnodeScope, AtomicLong counter) -
Method Summary
-
Field Details
-
BNodeGenIdPrefix
BNodeGenIdPrefix is a copy ofBlankNodeAllocatorLabelEncoded's private attribute- See Also:
-
globalBnodeScope
protected final long globalBnodeScopeA random per-jvm value used for blank node allocation -
counter
-
-
Constructor Details
-
BlankNodeAllocatorAsGivenOrRandom
public BlankNodeAllocatorAsGivenOrRandom(long globalBnodeScope) -
BlankNodeAllocatorAsGivenOrRandom
-
-
Method Details
-
getGlobalInstance
-
reset
public void reset()Ignore reset - avoid clashes- Specified by:
resetin interfaceorg.apache.jena.riot.lang.BlankNodeAllocator
-
alloc
- Specified by:
allocin interfaceorg.apache.jena.riot.lang.BlankNodeAllocator
-
create
public org.apache.jena.graph.Node create()- Specified by:
createin interfaceorg.apache.jena.riot.lang.BlankNodeAllocator
-