Class BaseForExecOpRequestWithPaging<ReqType extends DataRetrievalRequest,MemberType extends FederationMember,PageReqType extends DataRetrievalRequest,PageRespType extends DataRetrievalResponse>
java.lang.Object
se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOps
se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.NullaryExecutableOpBase
se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpRequest<ReqType,MemberType>
se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpRequestWithPaging<ReqType,MemberType,PageReqType,PageRespType>
- All Implemented Interfaces:
StatsProvider,ExecutableOperator,NullaryExecutableOp
public abstract class BaseForExecOpRequestWithPaging<ReqType extends DataRetrievalRequest,MemberType extends FederationMember,PageReqType extends DataRetrievalRequest,PageRespType extends DataRetrievalResponse>
extends BaseForExecOpRequest<ReqType,MemberType>
Base class for implementations of request operators with requests
that have to be broken into multiple requests to handle paging.
-
Field Summary
Fields inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpRequest
fm, reqFields inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.NullaryExecutableOpBase
timeAtExecEnd, timeAtExecStartFields inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOps
collectExceptions -
Constructor Summary
ConstructorsConstructorDescriptionBaseForExecOpRequestWithPaging(ReqType req, MemberType fm, boolean collectExceptions) -
Method Summary
Modifier and TypeMethodDescriptionprotected final void_execute(IntermediateResultElementSink sink, ExecutionContext execCxt) Implementations of this function need to execute the algorithm of this operator and send the result elements (if any) to the given sink.protected abstract voidconsumeResponse(PageRespType response, IntermediateResultElementSink sink) protected abstract PageReqTypecreatePageRequest(int pageNumber) protected abstract booleanisLastPage(PageRespType response) protected abstract PageRespTypeperformPageRequest(PageReqType pageReq, FederationAccessManager fedAccessMgr) Methods inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOpRequest
createStatsMethods inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.NullaryExecutableOpBase
execute, getStats, resetStatsMethods inherited from class se.liu.ida.hefquin.engine.queryplan.executable.impl.ops.BaseForExecOps
getExceptionsCaughtDuringExecution, recordExceptionCaughtDuringExecutionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface se.liu.ida.hefquin.engine.queryplan.executable.ExecutableOperator
getExceptionsCaughtDuringExecution
-
Constructor Details
-
BaseForExecOpRequestWithPaging
-
-
Method Details
-
_execute
protected final void _execute(IntermediateResultElementSink sink, ExecutionContext execCxt) throws ExecOpExecutionException Description copied from class:NullaryExecutableOpBaseImplementations of this function need to execute the algorithm of this operator and send the result elements (if any) to the given sink. If an exception occurs during this process, then this exception needs to either be collected or be thrown, depending on whetherBaseForExecOps.collectExceptionsis set totrue.- Specified by:
_executein classNullaryExecutableOpBase- Throws:
ExecOpExecutionException
-
createPageRequest
-
performPageRequest
protected abstract PageRespType performPageRequest(PageReqType pageReq, FederationAccessManager fedAccessMgr) throws FederationAccessException - Throws:
FederationAccessException
-
consumeResponse
-
isLastPage
-