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 voidaddCombinedResult(Iterable<? extends TrackedData> inputs, OperationStatus status, String statusCode, String statusMessage, Payload payload)Adds a single result for a multiple inputs.voidaddEmptyResult(TrackedData input, OperationStatus status, String statusCode, String statusMessage)Adds a single empty result for a single input.voidaddErrorResult(TrackedData input, OperationStatus status, String statusCode, String statusMessage, Throwable t)Adds a single error result for a single input.voidaddPartialResult(TrackedData input, OperationStatus status, String statusCode, String statusMessage, Payload payload)Adds a single result which is one of multiple results for a single input.voidaddPartialResult(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.voidaddResult(TrackedData input, OperationStatus status, String statusCode, String statusMessage, Payload payload)Adds a single result for a single input.voidaddTrackedData(SimpleTrackedData data)PayloadMetadatacreateMetadata()voidfinishPartialResult(TrackedData input)Indicates that a single input has added all partial results.voidfinishPartialResult(Iterable<? extends TrackedData> inputs)Indicates that a group of inputs has added all partial results.LoggergetLogger()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:OperationResponseAdds 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:
addResultin 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:OperationResponseAdds 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:
addCombinedResultin 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:OperationResponseAdds 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:
addPartialResultin 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:OperationResponseIndicates 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:
finishPartialResultin 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:OperationResponseAdds 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:
addPartialResultin 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:OperationResponseIndicates 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:
finishPartialResultin 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:OperationResponseAdds 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 anullor 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:
addEmptyResultin 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:OperationResponseAdds 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 anullor 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:
addErrorResultin 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:
createMetadatain interfacePayloadMetadataFactory
-
getLogger
public Logger getLogger()
Description copied from interface:OperationResponseReturns 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:
getLoggerin 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()
-
-