Package org.eclipse.rdf4j.query.impl
Class QueueCursor<E>
java.lang.Object
org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration<E,X>
org.eclipse.rdf4j.common.iteration.LookAheadIteration<E,T>
org.eclipse.rdf4j.common.iteration.QueueIteration<E,QueryEvaluationException>
org.eclipse.rdf4j.query.impl.QueueCursor<E>
- All Implemented Interfaces:
AutoCloseable
,CloseableIteration<E,
,QueryEvaluationException> Iteration<E,
QueryEvaluationException>
- Direct Known Subclasses:
FedXQueueCursor
Makes working with a queue easier by adding the methods
QueueIteration.done()
and QueueIteration.toss(Exception)
and
automatically converting the exception into a QueryEvaluationException with an appropriate stack trace.- Author:
- James Leigh
-
Constructor Summary
ConstructorDescriptionQueueCursor
(int capacity) Creates an QueueCursor with the given (fixed) capacity and default access policy.QueueCursor
(int capacity, boolean fair, WeakReference<?> callerReference) Deprecated, for removal: This API element is subject to removal in a future version.WeakReference is no longer supported as a way to automatically close this iteration.QueueCursor
(int capacity, WeakReference<?> callerReference) Deprecated, for removal: This API element is subject to removal in a future version.WeakReference is no longer supported as a way to automatically close this iteration.QueueCursor
(BlockingQueue<E> queue) Deprecated.WeakReference is no longer supported as a way to automatically close this iteration.QueueCursor
(BlockingQueue<E> queue, WeakReference<?> callerReference) Deprecated, for removal: This API element is subject to removal in a future version.WeakReference is no longer supported as a way to automatically close this iteration. -
Method Summary
Modifier and TypeMethodDescriptionprotected QueryEvaluationException
Converts an exception from the underlying iteration to an exception of type X.Methods inherited from class org.eclipse.rdf4j.common.iteration.QueueIteration
checkException, done, getNextElement, handleClose, put, toss
Methods inherited from class org.eclipse.rdf4j.common.iteration.LookAheadIteration
hasNext, next, remove
Methods inherited from class org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration
close, isClosed
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.eclipse.rdf4j.common.iteration.CloseableIteration
stream
-
Constructor Details
-
QueueCursor
public QueueCursor(int capacity) Creates an QueueCursor with the given (fixed) capacity and default access policy.- Parameters:
capacity
- the capacity of this queue
-
QueueCursor
@Deprecated(since="4.1.2", forRemoval=true) public QueueCursor(int capacity, WeakReference<?> callerReference) Deprecated, for removal: This API element is subject to removal in a future version.WeakReference is no longer supported as a way to automatically close this iteration. The recommended approach to automatically closing an iteration on garbage collection is to use aCleaner
.Creates an QueueCursor with the given (fixed) capacity and default access policy.- Parameters:
capacity
- the capacity of this queuecallerReference
- the thing that needs this cursor. Used to detect unexpected code failures and clean up in those case
-
QueueCursor
@Deprecated(since="4.1.2", forRemoval=true) public QueueCursor(int capacity, boolean fair, WeakReference<?> callerReference) Deprecated, for removal: This API element is subject to removal in a future version.WeakReference is no longer supported as a way to automatically close this iteration. The recommended approach to automatically closing an iteration on garbage collection is to use aCleaner
.Creates an QueueCursor with the given (fixed) capacity and the specified access policy.- Parameters:
capacity
- the capacity of this queuefair
- if true then queue accesses for threads blocked on insertion or removal, are processed in FIFO order; if false the access order is unspecified.callerReference
- the thing that needs this cursor. Used to detect unexpected code failures and clean up in those case
-
QueueCursor
@Deprecated(since="4.1.2", forRemoval=true) public QueueCursor(BlockingQueue<E> queue, WeakReference<?> callerReference) Deprecated, for removal: This API element is subject to removal in a future version.WeakReference is no longer supported as a way to automatically close this iteration. The recommended approach to automatically closing an iteration on garbage collection is to use aCleaner
.Creates an QueueCursor with the givenBlockingQueue
as its backing queue.
It may not be threadsafe to modify or access the givenBlockingQueue
from other locations. This method only enables the defaultArrayBlockingQueue
to be overridden.- Parameters:
queue
- A BlockingQueue that is not used in other locations, but will be used as the backing Queue implementation for this cursor.callerReference
- the thing that needs this cursor. Used to detect unexpected code failures and clean up in those case
-
QueueCursor
Deprecated.WeakReference is no longer supported as a way to automatically close this iteration. The recommended approach to automatically closing an iteration on garbage collection is to use aCleaner
.Creates an QueueCursor with the givenBlockingQueue
as its backing queue.
It may not be threadsafe to modify or access the givenBlockingQueue
from other locations. This method only enables the defaultArrayBlockingQueue
to be overridden.- Parameters:
queue
- A BlockingQueue that is not used in other locations, but will be used as the backing Queue implementation for this cursor.
-
-
Method Details
-
convert
Description copied from class:QueueIteration
Converts an exception from the underlying iteration to an exception of type X.- Specified by:
convert
in classQueueIteration<E,
QueryEvaluationException>
-