public class R extends AbstractRelation<E>
E
elements with a single primary index.
Note: This has to be public in order to be an ILocatableResource
.
Modifier and Type | Class and Description |
---|---|
static class |
R.KeyOrder
Metadata about the index orders for this relation.
|
AbstractResource.Options
Modifier and Type | Field and Description |
---|---|
static R.KeyOrder |
primaryKeyOrder
The only defined index order (the primary key).
|
indexManager, log
Constructor and Description |
---|
R(IIndexManager indexManager,
String namespace,
Long timestamp,
Properties properties) |
Modifier and Type | Method and Description |
---|---|
void |
create()
Create any logically contained resources (relations, indices).
|
void |
create(byte[][] separatorKeys,
UUID[] dataServices)
Alternative
create() method creates the primary index using the
specified separator keys and data services. |
long |
delete(IChunkedOrderedIterator<E> itr)
Simple delete implementation works fine for a local journal.
|
void |
destroy()
Destroy any logically contained resources (relations, indices).
|
Class<E> |
getElementClass()
Return the class for the generic type of this relation.
|
Set<String> |
getIndexNames()
Return the fully qualified name of each index maintained by this
relation.
|
IKeyOrder<E> |
getKeyOrder(IPredicate<E> p)
Return the
IKeyOrder for the predicate corresponding to the
perfect access path. |
Iterator<IKeyOrder<E>> |
getKeyOrders()
Return the
IKeyOrder s corresponding to the registered indices for
this relation. |
IKeyOrder<E> |
getPrimaryKeyOrder()
Return the
IKeyOrder for the primary index for the relation. |
long |
insert(IChunkedOrderedIterator<E> itr)
Simple insert procedure works fine for a local journal.
|
E |
newElement(List<BOp> a,
IBindingSet bindingSet)
Create and return a new element.
|
getAccessPath, getAccessPath, getAccessPath, getFQN, getFQN, getFQN, getIndex, getIndex, getIndex, newAccessPath, newIndexMetadata
acquireExclusiveLock, assertWritable, getBareProperties, getChunkCapacity, getChunkOfChunksCapacity, getChunkTimeout, getCommitTime, getContainer, getContainerNamespace, getExecutorService, getFullyBufferedReadThreshold, getIndexManager, getMaxParallelSubqueries, getNamespace, getProperties, getProperty, getProperty, getTimestamp, init, isForceSerialExecution, isReadOnly, toString, unlock
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getExecutorService, getIndexManager
getContainerNamespace, getNamespace, getTimestamp, init
public static final R.KeyOrder primaryKeyOrder
public R(IIndexManager indexManager, String namespace, Long timestamp, Properties properties)
indexManager
- namespace
- timestamp
- properties
- public Class<E> getElementClass()
IRelation
public void create()
IMutableResource
ILocatableResource.init()
is suitable for invocation from
IMutableResource.create()
. Instead, you are responsible for invoking ILocatableResource.init()
from this method IFF it is appropriate to reuse its initialization logic.create
in interface IMutableResource<IRelation<E>>
create
in class AbstractResource<IRelation<E>>
public void create(byte[][] separatorKeys, UUID[] dataServices)
create()
method creates the primary index using the
specified separator keys and data services.public void destroy()
IMutableResource
destroy
in interface IMutableResource<IRelation<E>>
destroy
in class AbstractResource<IRelation<E>>
public E newElement(List<BOp> a, IBindingSet bindingSet)
IRelation
a
- An ordered list of variables and/or constants.bindingSet
- A set of bindings.public Set<String> getIndexNames()
IRelation
public Iterator<IKeyOrder<E>> getKeyOrders()
IRelation
IKeyOrder
s corresponding to the registered indices for
this relation. [rather than getIndexNames?]public IKeyOrder<E> getPrimaryKeyOrder()
IRelation
IKeyOrder
for the primary index for the relation.public IKeyOrder<E> getKeyOrder(IPredicate<E> p)
IRelation
IKeyOrder
for the predicate corresponding to the
perfect access path. A perfect access path is one where the bound values
in the predicate form a prefix in the key space of the corresponding
index.IKeyOrder
for the perfect access path -or-
null
if there is no index which provides a perfect
access path for that predicate.public long insert(IChunkedOrderedIterator<E> itr)
itr
- An iterator visiting the elements to be written.public long delete(IChunkedOrderedIterator<E> itr)
itr
- An iterator visiting the elements to be removed. Existing
elements in the relation having a key equal to the key formed
from the visited elements will be removed from the relation.Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.