public class RequestWorkItem extends AbstractWorkItem implements ThreadReuseExecutor.PrioritizedRunnable
| Modifier and Type | Class and Description |
|---|---|
static class |
RequestWorkItem.MoreWorkTask |
| Modifier and Type | Field and Description |
|---|---|
protected DQPCore |
dqpCore |
static String |
REQUEST_KEY |
protected boolean |
useCallingThread |
NO_WAIT_PRIORITY| Constructor and Description |
|---|
RequestWorkItem(DQPCore dqpCore,
RequestMessage requestMsg,
Request request,
ResultsReceiver<ResultsMessage> receiver,
RequestID requestID,
DQPWorkContext workContext) |
| Modifier and Type | Method and Description |
|---|---|
void |
addConnectorRequest(AtomicRequestID atomicRequestId,
DataTierTupleSource connInfo) |
<T> FutureWork<T> |
addRequestWork(Callable<T> callable) |
protected void |
close()
Client close is currently implemented as asynch.
|
void |
closeAtomicRequest(AtomicRequestID atomicRequestId) |
ResultsMessage |
createResultsMessage(List<? extends List<?>> batch,
List<? extends Expression> columnSymbols) |
void |
doMoreWork()
Special call from request threads to allow resumption of processing by
the calling thread.
|
long |
getCreationTime() |
DQPWorkContext |
getDqpWorkContext() |
int |
getPriority() |
long |
getProcessingTimestamp() |
QueryProcessor |
getProcessor() |
RequestID |
getRequestID() |
SessionAwareCache<CachedResults> |
getRsCache() |
boolean |
isCloseRequested() |
protected boolean |
isDoneProcessing() |
protected void |
process() |
void |
processLobChunkRequest(String id,
int streamRequestId,
ResultsReceiver<LobChunk> chunckReceiver) |
protected void |
processMore() |
protected void |
processNew() |
void |
release() |
void |
removeLobStream(int streamRequestId) |
boolean |
requestCancel(String reason) |
void |
requestClose() |
void |
requestMore(int batchFirst,
int batchLast,
ResultsReceiver<ResultsMessage> receiver) |
protected void |
resumeProcessing() |
void |
run() |
Future<Void> |
scheduleWork(long delay) |
protected boolean |
sendResultsIfNeeded(TupleBatch batch)
Send results if they have been requested.
|
void |
setCancelTask(EnhancedTimer.Task cancelTask) |
String |
toString() |
isProcessing, moreWork, moreWork, pauseProcessing, workAccepted, workCompleted, workRejected, workStartedpublic static final String REQUEST_KEY
protected final DQPCore dqpCore
protected boolean useCallingThread
public RequestWorkItem(DQPCore dqpCore, RequestMessage requestMsg, Request request, ResultsReceiver<ResultsMessage> receiver, RequestID requestID, DQPWorkContext workContext)
protected boolean isDoneProcessing()
isDoneProcessing in class AbstractWorkItempublic void run()
run in interface Runnablerun in class AbstractWorkItemprotected void resumeProcessing()
resumeProcessing in class AbstractWorkItempublic void doMoreWork()
protected void process()
process in class AbstractWorkItemprotected void processMore()
throws BlockedException,
TeiidException
BlockedExceptionTeiidExceptionprotected void close()
protected void processNew()
throws TeiidProcessingException,
TeiidComponentException
public SessionAwareCache<CachedResults> getRsCache()
protected boolean sendResultsIfNeeded(TupleBatch batch) throws TeiidComponentException, TeiidProcessingException
public ResultsMessage createResultsMessage(List<? extends List<?>> batch, List<? extends Expression> columnSymbols)
public void processLobChunkRequest(String id, int streamRequestId, ResultsReceiver<LobChunk> chunckReceiver)
public void removeLobStream(int streamRequestId)
public boolean requestCancel(String reason) throws TeiidComponentException
TeiidComponentExceptionpublic void requestClose()
throws TeiidComponentException
TeiidComponentExceptionpublic boolean isCloseRequested()
public void requestMore(int batchFirst,
int batchLast,
ResultsReceiver<ResultsMessage> receiver)
public void closeAtomicRequest(AtomicRequestID atomicRequestId)
public void addConnectorRequest(AtomicRequestID atomicRequestId, DataTierTupleSource connInfo)
public String toString()
toString in class AbstractWorkItempublic DQPWorkContext getDqpWorkContext()
getDqpWorkContext in interface ThreadReuseExecutor.PrioritizedRunnablepublic long getProcessingTimestamp()
public void release()
release in interface javax.resource.spi.work.Workrelease in class AbstractWorkItempublic int getPriority()
getPriority in interface ThreadReuseExecutor.PrioritizedRunnablepublic long getCreationTime()
getCreationTime in interface ThreadReuseExecutor.PrioritizedRunnablepublic <T> FutureWork<T> addRequestWork(Callable<T> callable)
public void setCancelTask(EnhancedTimer.Task cancelTask)
public QueryProcessor getProcessor()
public RequestID getRequestID()
Copyright © 2018 JBoss by Red Hat. All rights reserved.