Class SimpleOperationResponse
- java.lang.Object
-
- com.boomi.connector.testutil.SimpleOperationResponse
-
- All Implemented Interfaces:
OperationResponse
,PayloadMetadataFactory
public class SimpleOperationResponse extends Object implements OperationResponse
Simple implementation of OperationResponse. Tries to implement much of the data tracking done by the Atom. Stores all output in a list of SimpleOperationResults for retrieval viagetResults()
.
-
-
Constructor Summary
Constructors Constructor Description SimpleOperationResponse()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addCombinedResult(Iterable<? extends TrackedData> inputs, OperationStatus status, String statusCode, String statusMessage, Payload payload)
Adds a single result for a multiple inputs.void
addEmptyResult(TrackedData input, OperationStatus status, String statusCode, String statusMessage)
Adds a single empty result for a single input.void
addErrorResult(TrackedData input, OperationStatus status, String statusCode, String statusMessage, Throwable t)
Adds a single error result for a single input.void
addPartialResult(TrackedData input, OperationStatus status, String statusCode, String statusMessage, Payload payload)
Adds a single result which is one of multiple results for a single input.void
addPartialResult(Iterable<? extends TrackedData> inputs, OperationStatus status, String statusCode, String statusMessage, Payload payload)
Adds a single result which is one of multiple results for a group of inputs.void
addResult(TrackedData input, OperationStatus status, String statusCode, String statusMessage, Payload payload)
Adds a single result for a single input.void
addTrackedData(SimpleTrackedData data)
PayloadMetadata
createMetadata()
void
finishPartialResult(TrackedData input)
Indicates that a single input has added all partial results.void
finishPartialResult(Iterable<? extends TrackedData> inputs)
Indicates that a group of inputs has added all partial results.Logger
getLogger()
Returns a logger which can be used to log general information regarding this operation execution.List<SimplePayloadMetadata>
getPayloadMetadatas()
List<SimpleOperationResult>
getResults()
Returns all results returned thus far by the operation execution.
-
-
-
Method Detail
-
addResult
public void addResult(TrackedData input, OperationStatus status, String statusCode, String statusMessage, Payload payload)
Description copied from interface:OperationResponse
Adds a single result for a single input.Note, each TrackedData should only be passed once to exactly one of the
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.finishPartialResult(com.boomi.connector.api.TrackedData)
,OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
, orOperationResponse.addErrorResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, java.lang.Throwable)
methods. If an input is not passed to one of these methods, it will be marked as "failed" when the operation completes.- Specified by:
addResult
in interfaceOperationResponse
- Parameters:
input
- the input which generated this resultstatus
- the simple status for this resultstatusCode
- the optional, implementation specific code for this result. this value is intended to be something which could be handled programmaticallystatusMessage
- the optional, implementation specific message for this result. this value is intended to be something for a user to viewpayload
- the optional payload for this result
-
addCombinedResult
public void addCombinedResult(Iterable<? extends TrackedData> inputs, OperationStatus status, String statusCode, String statusMessage, Payload payload)
Description copied from interface:OperationResponse
Adds a single result for a multiple inputs.Note, each TrackedData should only be passed once to exactly one of the
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.finishPartialResult(com.boomi.connector.api.TrackedData)
,OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
, orOperationResponse.addErrorResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, java.lang.Throwable)
methods. If an input is not passed to one of these methods, it will be marked as "failed" when the operation completes.- Specified by:
addCombinedResult
in interfaceOperationResponse
- Parameters:
inputs
- the multiple inputs which generated this resultstatus
- the simple status for this resultstatusCode
- the optional, implementation specific code for this result. this value is intended to be something which could be handled programmaticallystatusMessage
- the optional, implementation specific message for this result. this value is intended to be something for a user to viewpayload
- the optional payload for this result
-
addPartialResult
public void addPartialResult(TrackedData input, OperationStatus status, String statusCode, String statusMessage, Payload payload)
Description copied from interface:OperationResponse
Adds a single result which is one of multiple results for a single input. This method may be called as many times as necessary for the same input until that input has been passed toOperationResponse.finishPartialResult(com.boomi.connector.api.TrackedData)
.- Specified by:
addPartialResult
in interfaceOperationResponse
- Parameters:
input
- the single input which generated this resultstatus
- the simple status for this resultstatusCode
- the optional, implementation specific code for this result. this value is intended to be something which could be handled programmaticallystatusMessage
- the optional, implementation specific message for this result. this value is intended to be something for a user to viewpayload
- the optional payload for this result
-
finishPartialResult
public void finishPartialResult(TrackedData input)
Description copied from interface:OperationResponse
Indicates that a single input has added all partial results.Note, each TrackedData should only be passed once to exactly one of the
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.finishPartialResult(com.boomi.connector.api.TrackedData)
,OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
, orOperationResponse.addErrorResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, java.lang.Throwable)
methods. If an input is not passed to one of these methods, it will be marked as "failed" when the operation completes.- Specified by:
finishPartialResult
in interfaceOperationResponse
- Parameters:
input
- the single input which has had all partial results added
-
addPartialResult
public void addPartialResult(Iterable<? extends TrackedData> inputs, OperationStatus status, String statusCode, String statusMessage, Payload payload)
Description copied from interface:OperationResponse
Adds a single result which is one of multiple results for a group of inputs. This method may be called as many times as necessary for the same inputs until they have been passed toOperationResponse.finishPartialResult(Iterable)
.- Specified by:
addPartialResult
in interfaceOperationResponse
- Parameters:
inputs
- the group of inputs which generated this resultstatus
- the simple status for this resultstatusCode
- the optional, implementation specific code for this result. this value is intended to be something which could be handled programmaticallystatusMessage
- the optional, implementation specific message for this result. this value is intended to be something for a user to viewpayload
- the optional payload for this result
-
finishPartialResult
public void finishPartialResult(Iterable<? extends TrackedData> inputs)
Description copied from interface:OperationResponse
Indicates that a group of inputs has added all partial results.Note, each TrackedData should only be passed once to exactly one of the
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.finishPartialResult(com.boomi.connector.api.TrackedData)
,OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
, orOperationResponse.addErrorResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, java.lang.Throwable)
methods. If an input is not passed to one of these methods, it will be marked as "failed" when the operation completes.- Specified by:
finishPartialResult
in interfaceOperationResponse
- Parameters:
inputs
- the group of inputs which has had all partial results added
-
addEmptyResult
public void addEmptyResult(TrackedData input, OperationStatus status, String statusCode, String statusMessage)
Description copied from interface:OperationResponse
Adds a single empty result for a single input. This is different from callingOperationResponse.addResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
with anull
or empty Payload, as that call will generate an empty output document, but this call will not generate any output document.Note, each TrackedData should only be passed once to exactly one of the
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.finishPartialResult(com.boomi.connector.api.TrackedData)
,OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
, orOperationResponse.addErrorResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, java.lang.Throwable)
methods. If an input is not passed to one of these methods, it will be marked as "failed" when the operation completes.- Specified by:
addEmptyResult
in interfaceOperationResponse
- Parameters:
input
- the input which generated this result
-
addErrorResult
public void addErrorResult(TrackedData input, OperationStatus status, String statusCode, String statusMessage, Throwable t)
Description copied from interface:OperationResponse
Adds a single error result for a single input. This is different from callingOperationResponse.addResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
with anull
or empty Payload, as that call will generate an empty output document, but this call will not generate any output document.Note, each TrackedData should only be passed once to exactly one of the
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.finishPartialResult(com.boomi.connector.api.TrackedData)
,OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
, orOperationResponse.addErrorResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, java.lang.Throwable)
methods. If an input is not passed to one of these methods, it will be marked as "failed" when the operation completes.- Specified by:
addErrorResult
in interfaceOperationResponse
- Parameters:
input
- the input which generated this resultstatus
- the operation status, must be an error status, may not beOperationStatus.SUCCESS
-
createMetadata
public PayloadMetadata createMetadata()
- Specified by:
createMetadata
in interfacePayloadMetadataFactory
-
getLogger
public Logger getLogger()
Description copied from interface:OperationResponse
Returns a logger which can be used to log general information regarding this operation execution.Note, events specific to a TrackedData should be logged using the logger retrieved from
TrackedData.getLogger()
.- Specified by:
getLogger
in interfaceOperationResponse
- Returns:
- an execution logger
-
addTrackedData
public void addTrackedData(SimpleTrackedData data)
-
getResults
public List<SimpleOperationResult> getResults()
Returns all results returned thus far by the operation execution.
-
getPayloadMetadatas
public List<SimplePayloadMetadata> getPayloadMetadatas()
-
-