public abstract class BaseQueryOperation extends BaseOperation
Operation
.Modifier | Constructor and Description |
---|---|
protected |
BaseQueryOperation(BaseConnection conn) |
protected |
BaseQueryOperation(OperationContext context) |
Modifier and Type | Method and Description |
---|---|
void |
execute(OperationRequest request,
OperationResponse response)
Executes an operation with the given request, passing results to the given response.
|
protected abstract void |
executeQuery(QueryRequest request,
OperationResponse response)
Actual implementation of this QUERY Operation.
|
getConnection, getContext
protected BaseQueryOperation(OperationContext context)
protected BaseQueryOperation(BaseConnection conn)
public void execute(OperationRequest request, OperationResponse response)
Any TrackedData
received as part of a request should eventually be passed into the response. Any data
not passed along will be marked as "failed" by the atom (thus, any thrown exceptions will cause all outstanding
data to be marked as "failed"). There are 4 scenarios for input/output relationships, each of which can be
handled conveniently via the ResponseUtil
utility:
OperationResponse.addResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
.OperationResponse.addCombinedResult(java.lang.Iterable<? extends com.boomi.connector.api.TrackedData>, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
.OperationResponse.addPartialResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
until all results have been processed, at which point the input
should be passed to the response as "finished" using OperationResponse.finishPartialResult(com.boomi.connector.api.TrackedData)
.OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
.
Base implementation redirects to executeQuery(com.boomi.connector.api.QueryRequest, com.boomi.connector.api.OperationResponse)
.
execute
in interface Operation
execute
in class BaseOperation
request
- the current request for this operation. this object should be downcast to the request type for
the relevant operation, one of GetRequest
, DeleteRequest
, QueryRequest
or UpdateRequest
(for CREATE,UPDATE, and UPSERT operations).response
- object which should be updated with the results of this operation (see comments above).protected abstract void executeQuery(QueryRequest request, OperationResponse response)
request
- request given to execute(com.boomi.connector.api.OperationRequest, com.boomi.connector.api.OperationResponse)
, downcast to the correct typeresponse
- response given to execute(com.boomi.connector.api.OperationRequest, com.boomi.connector.api.OperationResponse)