Class ResponseUtil
- java.lang.Object
-
- com.boomi.connector.api.ResponseUtil
-
public class ResponseUtil extends Object
Utility methods for handling responses.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
addApplicationError(OperationResponse response, TrackedData input, String statusCode, Payload payload)
Adds a single application error result for the given input to the given response.static void
addCombinedFailure(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode)
Adds a single failure result with an empty payload for the given inputs to the given response.static void
addCombinedFailure(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode, Payload payload)
Adds a single failure result for the given inputs to the given response.static void
addCombinedSuccess(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode)
Adds a single successful result with an empty payload for the given inputs to the given response.static void
addCombinedSuccess(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode, Payload payload)
Adds a single successful result for the given inputs to the given response.static void
addEmptyFailure(OperationResponse response, TrackedData input, String statusCode)
Adds a single failure result for the given input to the given response (this will not generate any output document).static void
addEmptyFailures(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode)
Adds a failure result for each of the given inputs to the given response (this will not generate any output documents).static void
addEmptyResults(OperationResponse response, Iterable<? extends TrackedData> inputs, OperationStatus status, String statusCode, String statusMessage)
Adds each of the given inputs to the given response as an empty result (this will not generate any output documents).static void
addEmptyResultWithHttpStatus(OperationResponse response, TrackedData input, int httpStatusCode, String statusMessage)
Adds the given input to the given response as an empty result (this will not generate any output documents).static void
addEmptySuccess(OperationResponse response, TrackedData input, String statusCode)
Adds a single successful result for the given input to the given response (this will not generate any output document).static void
addEmptySuccesses(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode)
Adds a successful result for each of the given inputs to the given response (this will not generate any output document).static void
addExceptionFailure(OperationResponse response, TrackedData input, Throwable t)
Adds a failure for the given input as well as logs the given Throwable.static void
addExceptionFailures(OperationResponse response, Iterable<? extends TrackedData> inputs, Throwable t)
Adds a failure for each of the given inputs as well as logs the given Throwable.static void
addFailure(OperationResponse response, TrackedData input, String statusCode)
Adds a single failure result with an empty payload for the given input to the given response.static void
addFailure(OperationResponse response, TrackedData input, String statusCode, Payload payload)
Adds a single failure result for the given input to the given response.static void
addPartialFailure(OperationResponse response, TrackedData input, String statusCode, Payload payload)
Adds one of the failure results for the given input to the given response.static void
addPartialFailures(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode, Payload payload)
Adds failure results for the given inputs to the given response.static boolean
addPartialResult(OperationResponse operation, TrackedData input, ConnectorResult result)
Utility method to add a partialConnectorResult
to anOperationResponse
for a specificTrackedData
instance.static void
addPartialResultWithHttpStatus(OperationResponse response, TrackedData input, int httpStatusCode, String statusMessage)
Adds a single partial result with no payload for the given input to the given response.static void
addPartialResultWithHttpStatus(OperationResponse response, TrackedData input, int httpStatusCode, String statusMessage, Payload payload)
Adds a single partial result for the given input to the given response.static void
addPartialSuccess(OperationResponse response, TrackedData input, String statusCode, Payload payload)
Adds one of the successful results for the given input to the given response.static void
addPartialSuccesses(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode, Payload payload)
Adds successful results for the given inputs to the given response.static void
addResult(OperationResponse operation, TrackedData input, ConnectorResult result)
Utility method to add a partialConnectorResult
to anOperationResponse
for a specificTrackedData
instance.static void
addResult(OperationResponse operation, TrackedData input, ConnectorStatus status)
Convenience method to add a result to anOperationResponse
using the providedConnectorStatus
and a null payload.static void
addResult(OperationResponse operation, TrackedData input, ConnectorStatus status, Payload payload)
Convenience method to add a result to anOperationResponse
using the providedConnectorStatus
and payload.static void
addResultWithHttpStatus(OperationResponse response, TrackedData input, int httpStatusCode, String statusMessage, Payload payload)
Adds a single result for the given input to the given response.static void
addSplitFailure(OperationResponse response, TrackedData input, String statusCode, Iterable<? extends Payload> payloads)
Adds all of the failure results for the given input to the given response.static void
addSplitResult(OperationResponse response, TrackedData input, OperationStatus status, String statusCode, String statusMessage, Iterable<? extends Payload> payloads)
Adds all of the results for the given input to the given response.static void
addSplitSuccess(OperationResponse response, TrackedData input, String statusCode, Iterable<? extends Payload> payloads)
Adds all of the successful results for the given input to the given response.static void
addSuccess(OperationResponse response, TrackedData input, String statusCode)
Adds a single successful result with an empty payload for the given input to the given response.static void
addSuccess(OperationResponse response, TrackedData input, String statusCode, Payload payload)
Adds a single successful result for the given input to the given response.static OperationStatus
getOperationStatus(int httpStatusCode)
This method derives the appropriateOperationStatus
from the specified HTTP status code.static Payload
toPayload(ByteArrayOutputStream bout)
Constructs a Payload around the given ByteArrayOutputStream.static Payload
toPayload(InputStream input)
Constructs a Payload around the given InputStream.static Payload
toPayload(String input)
Constructs a Payload around the given String, to be encoded using the Atom default Charset.static Payload
toPayload(String input, Charset charset)
Constructs a Payload around the given String, to be encoded using the given Charset.static Payload
toPayload(javax.xml.bind.JAXBContext jaxbContext, Object obj)
Constructs a Payload around the given JAXB object.static Payload
toPayload(Source source)
Constructs a Payload around the given xml Source.static Payload
toPayload(Node node)
Constructs a Payload around the given xml Node.
-
-
-
Method Detail
-
toPayload
public static Payload toPayload(InputStream input)
Constructs a Payload around the given InputStream.- Parameters:
input
- input stream to be returned by the new Payload
-
toPayload
public static Payload toPayload(javax.xml.bind.JAXBContext jaxbContext, Object obj)
Constructs a Payload around the given JAXB object.- Parameters:
jaxbContext
- context which should be used to marshal the given objectobj
- JAXB object to be written by the new payload
-
toPayload
public static Payload toPayload(Node node)
Constructs a Payload around the given xml Node.- Parameters:
node
- xml to be written by the new payload
-
toPayload
public static Payload toPayload(Source source)
Constructs a Payload around the given xml Source.- Parameters:
source
- xml to be written by the new payload
-
toPayload
public static Payload toPayload(String input)
Constructs a Payload around the given String, to be encoded using the Atom default Charset.Warning, the use of String output is generally discouraged as it can cause memory issues. Please avoid if at all possible. See
AtomContext.createTempOutputStream()
for the preferred alternative.- Parameters:
input
- input String to be encoded in the new Payload
-
toPayload
public static Payload toPayload(String input, Charset charset)
Constructs a Payload around the given String, to be encoded using the given Charset.Warning, the use of String output is generally discouraged as it can cause memory issues. Please avoid if at all possible. See
AtomContext.createTempOutputStream()
for the preferred alternative.- Parameters:
input
- input String to be encoded in the new Payloadcharset
- the charset to use when encoding the String, may benull
, in which case the Atom default is used
-
toPayload
public static Payload toPayload(ByteArrayOutputStream bout)
Constructs a Payload around the given ByteArrayOutputStream.Warning, the use of ByteArrayOutputStream is generally discouraged as it can cause memory issues. Please avoid if at all possible. See
AtomContext.createTempOutputStream()
for the preferred alternative.- Parameters:
bout
- output stream containing the data to be written
-
addSuccess
public static void addSuccess(OperationResponse response, TrackedData input, String statusCode)
Adds a single successful result with an empty payload for the given input to the given response.Equivalent to:
response.addResult(input, OperationStatus.SUCCESS, statusCode, null, null);
- Parameters:
response
- operation responseinput
- operation inputstatusCode
- optional success status code- See Also:
OperationResponse.addResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
-
addEmptySuccess
public static void addEmptySuccess(OperationResponse response, TrackedData input, String statusCode)
Adds a single successful result for the given input to the given response (this will not generate any output document).Equivalent to:
response.addEmptyResult(input, OperationStatus.SUCCESS, statusCode, null);
- Parameters:
response
- operation responseinput
- operation inputstatusCode
- optional success status code- See Also:
OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
-
addSuccess
public static void addSuccess(OperationResponse response, TrackedData input, String statusCode, Payload payload)
Adds a single successful result for the given input to the given response.Equivalent to:
response.addResult(input, OperationStatus.SUCCESS, statusCode, null, payload);
- Parameters:
response
- operation responseinput
- operation inputstatusCode
- optional success status codepayload
- optional success payload- See Also:
OperationResponse.addResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
-
addApplicationError
public static void addApplicationError(OperationResponse response, TrackedData input, String statusCode, Payload payload)
Adds a single application error result for the given input to the given response.Equivalent to:
response.addResult(input, OperationStatus.APPLICATION_ERROR, statusCode, null, payload);
- Parameters:
response
- operation responseinput
- operation inputstatusCode
- optional success status codepayload
- optional success payload- See Also:
OperationResponse.addResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
-
addCombinedSuccess
public static void addCombinedSuccess(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode)
Adds a single successful result with an empty payload for the given inputs to the given response.Equivalent to:
response.addCombinedResult(inputs, OperationStatus.SUCCESS, statusCode, null, null);
- Parameters:
response
- operation responseinputs
- operation inputsstatusCode
- optional success status code- See Also:
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)
-
addCombinedSuccess
public static void addCombinedSuccess(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode, Payload payload)
Adds a single successful result for the given inputs to the given response.Equivalent to:
response.addCombinedResult(inputs, OperationStatus.SUCCESS, statusCode, null, payload);
- Parameters:
response
- operation responseinputs
- operation inputsstatusCode
- optional success status codepayload
- optional success payload- See Also:
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)
-
addPartialSuccess
public static void addPartialSuccess(OperationResponse response, TrackedData input, String statusCode, Payload payload)
Adds one of the successful results for the given input to the given response.Equivalent to:
response.addPartialResult(input, OperationStatus.SUCCESS, statusCode, null, payload);
- Parameters:
response
- operation responseinput
- operation inputstatusCode
- optional success status codepayload
- optional success payload- See Also:
OperationResponse.addPartialResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
-
addPartialSuccesses
public static void addPartialSuccesses(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode, Payload payload)
Adds successful results for the given inputs to the given response.Equivalent to:
response.addPartialResult(inputs, OperationStatus.SUCCESS, statusCode, null, payload);
- Parameters:
response
- operation responseinputs
- operation inputsstatusCode
- optional success status codepayload
- optional success payload- See Also:
OperationResponse.addPartialResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
-
addSplitSuccess
public static void addSplitSuccess(OperationResponse response, TrackedData input, String statusCode, Iterable<? extends Payload> payloads)
Adds all of the successful results for the given input to the given response. This will callOperationResponse.addPartialResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
for each payload and then callOperationResponse.finishPartialResult(com.boomi.connector.api.TrackedData)
for the given input.- Parameters:
response
- operation responseinput
- operation inputstatusCode
- optional success status codepayloads
- optional success payloads
-
addEmptySuccesses
public static void addEmptySuccesses(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode)
Adds a successful result for each of the given inputs to the given response (this will not generate any output document).Equivalent to:
for(TrackedData input : inputs) { response.addEmptyResult(input, OperationStatus.SUCCESS, statusCode, null); }
- Parameters:
response
- operation responseinputs
- operation inputsstatusCode
- optional success status code- See Also:
OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
-
addFailure
public static void addFailure(OperationResponse response, TrackedData input, String statusCode)
Adds a single failure result with an empty payload for the given input to the given response.Equivalent to:
response.addResult(input, OperationStatus.FAILURE, statusCode, null, null);
- Parameters:
response
- operation responseinput
- operation inputstatusCode
- optional failure status code- See Also:
OperationResponse.addResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
-
addEmptyFailure
public static void addEmptyFailure(OperationResponse response, TrackedData input, String statusCode)
Adds a single failure result for the given input to the given response (this will not generate any output document).Equivalent to:
response.addEmptyResult(input, OperationStatus.FAILURE, statusCode, null);
- Parameters:
response
- operation responseinput
- operation inputstatusCode
- optional failure status code- See Also:
OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
-
addFailure
public static void addFailure(OperationResponse response, TrackedData input, String statusCode, Payload payload)
Adds a single failure result for the given input to the given response.Equivalent to:
response.addResult(input, OperationStatus.FAILURE, statusCode, null, null);
- Parameters:
response
- operation responseinput
- operation inputstatusCode
- optional fail status codepayload
- optional fail payload- See Also:
OperationResponse.addResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
-
addCombinedFailure
public static void addCombinedFailure(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode)
Adds a single failure result with an empty payload for the given inputs to the given response.Equivalent to:
response.addCombinedResult(inputs, OperationStatus.FAILURE, statusCode, null, null);
- Parameters:
response
- operation responseinputs
- operation inputsstatusCode
- optional failure status code- See Also:
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)
-
addCombinedFailure
public static void addCombinedFailure(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode, Payload payload)
Adds a single failure result for the given inputs to the given response.Equivalent to:
response.addCombinedResult(inputs, OperationStatus.FAILURE, statusCode, null, payload);
- Parameters:
response
- operation responseinputs
- operation inputsstatusCode
- optional failure status codepayload
- optional failure payload- See Also:
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)
-
addPartialFailure
public static void addPartialFailure(OperationResponse response, TrackedData input, String statusCode, Payload payload)
Adds one of the failure results for the given input to the given response.Equivalent to:
response.addPartialResult(input, OperationStatus.FAILURE, statusCode, null, payload);
- Parameters:
response
- operation responseinput
- operation inputstatusCode
- optional failure status codepayload
- optional failure payload- See Also:
OperationResponse.addPartialResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
-
addPartialFailures
public static void addPartialFailures(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode, Payload payload)
Adds failure results for the given inputs to the given response.Equivalent to:
response.addPartialResult(inputs, OperationStatus.FAILURE, statusCode, null, payload);
- Parameters:
response
- operation responseinputs
- operation inputsstatusCode
- optional failure status codepayload
- optional failure payload- See Also:
OperationResponse.addPartialResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
-
addSplitFailure
public static void addSplitFailure(OperationResponse response, TrackedData input, String statusCode, Iterable<? extends Payload> payloads)
Adds all of the failure results for the given input to the given response. This will callOperationResponse.addPartialResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
for each payload and then callOperationResponse.finishPartialResult(com.boomi.connector.api.TrackedData)
for the given input.- Parameters:
response
- operation responseinput
- operation inputstatusCode
- optional failure status codepayloads
- optional failure payloads
-
addEmptyFailures
public static void addEmptyFailures(OperationResponse response, Iterable<? extends TrackedData> inputs, String statusCode)
Adds a failure result for each of the given inputs to the given response (this will not generate any output documents).Equivalent to:
for(TrackedData input : inputs) { response.addEmptyResult(input, OperationStatus.FAILURE, statusCode, null); }
- Parameters:
response
- operation responseinputs
- operation inputsstatusCode
- optional success status code- See Also:
OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
-
addSplitResult
public static void addSplitResult(OperationResponse response, TrackedData input, OperationStatus status, String statusCode, String statusMessage, Iterable<? extends Payload> payloads)
Adds all of the results for the given input to the given response. This will callOperationResponse.addPartialResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String, com.boomi.connector.api.Payload)
for each payload and then callOperationResponse.finishPartialResult(com.boomi.connector.api.TrackedData)
for the given input.- Parameters:
response
- operation responseinput
- operation inputstatus
- operation statusstatusCode
- optional status codestatusMessage
- optional status messagepayloads
- optional payloads
-
addEmptyResults
public static void addEmptyResults(OperationResponse response, Iterable<? extends TrackedData> inputs, OperationStatus status, String statusCode, String statusMessage)
Adds each of the given inputs to the given response as an empty result (this will not generate any output documents).Equivalent to:
for(TrackedData input : inputs) { response.addEmptyResult(input, status, statusCode, statusMessage); }
- Parameters:
response
- operation responseinputs
- operation inputsstatus
- operation statusstatusCode
- optional status codestatusMessage
- optional status message- See Also:
OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
-
addExceptionFailure
public static void addExceptionFailure(OperationResponse response, TrackedData input, Throwable t)
Adds a failure for the given input as well as logs the given Throwable.Equivalent to:
response.addErrorResult(input, OperationStatus.FAILURE, ConnectorException.getStatusCode(t), ConnectorException.getStatusMessage(t), t)
- Parameters:
response
- current operation responseinput
- optional relevant input datat
- optional failure- See Also:
TrackedData.getLogger()
,OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
-
addExceptionFailures
public static void addExceptionFailures(OperationResponse response, Iterable<? extends TrackedData> inputs, Throwable t)
Adds a failure for each of the given inputs as well as logs the given Throwable.Equivalent to:
for(TrackedData input : inputs) { addExceptionFailure(response, input, t); }
- Parameters:
response
- current operation responseinputs
- optional relevant input datat
- optional failure- See Also:
TrackedData.getLogger()
,OperationResponse.addEmptyResult(com.boomi.connector.api.TrackedData, com.boomi.connector.api.OperationStatus, java.lang.String, java.lang.String)
-
addEmptyResultWithHttpStatus
public static void addEmptyResultWithHttpStatus(OperationResponse response, TrackedData input, int httpStatusCode, String statusMessage)
Adds the given input to the given response as an empty result (this will not generate any output documents). The appropriateOperationStatus
will be derived from the specified HTTP status code. This method should only be used for services that adhere to the HTTP status code standards.Equivalent to:
response.addEmptyResult(input, operationStatus, httpStatusCode, statusMessage);
- Parameters:
response
- operation responseinput
- operation inputhttpStatusCode
- http status codestatusMessage
- optional status message
-
addResultWithHttpStatus
public static void addResultWithHttpStatus(OperationResponse response, TrackedData input, int httpStatusCode, String statusMessage, Payload payload)
Adds a single result for the given input to the given response. The appropriateOperationStatus
will be derived from the specified HTTP status code. This method should only be used for services that adhere to the HTTP status code standards.Equivalent to:
response.addResult(input, operationStatus, httpStatusCode, statusMessage, payload);
- Parameters:
response
- operation responseinput
- operation inputhttpStatusCode
- http status codestatusMessage
- optional status messagepayload
- optional payload
-
addPartialResultWithHttpStatus
public static void addPartialResultWithHttpStatus(OperationResponse response, TrackedData input, int httpStatusCode, String statusMessage)
Adds a single partial result with no payload for the given input to the given response. This method will produce an empty output document but the status code and status message will still be accessible in document metadata. The appropriateOperationStatus
will be derived from the specified HTTP status code. This method should only be used for services that adhere to the HTTP status code standards.Equivalent to:
response.addPartialResult(input, operationStatus, httpStatusCode, statusMessage, null);
- Parameters:
response
- the operation responseinput
- the operation inputhttpStatusCode
- the http status codestatusMessage
- the status message
-
addPartialResultWithHttpStatus
public static void addPartialResultWithHttpStatus(OperationResponse response, TrackedData input, int httpStatusCode, String statusMessage, Payload payload)
Adds a single partial result for the given input to the given response. The appropriateOperationStatus
will be derived from the specified HTTP status code. This method should only be used for services that adhere to the HTTP status code standards.Equivalent to:
response.addPartialResult(input, operationStatus, httpStatusCode, statusMessage, payload);
- Parameters:
response
- the operation responseinput
- the operation inputhttpStatusCode
- the http status codestatusMessage
- the status messagepayload
- the optional payload
-
getOperationStatus
public static OperationStatus getOperationStatus(int httpStatusCode)
This method derives the appropriateOperationStatus
from the specified HTTP status code. This method should only be used for services that adhere to the HTTP status code standards.- Parameters:
httpStatusCode
- the HTTP status code- Returns:
- the operation status
-
addPartialResult
public static boolean addPartialResult(OperationResponse operation, TrackedData input, ConnectorResult result)
Utility method to add a partialConnectorResult
to anOperationResponse
for a specificTrackedData
instance. This method will NOT finish the partial results for the tracked data instance. Callers are expected to callOperationResponse.finishPartialResult(TrackedData)
to finish the results when ready. A null result or a result whereConnectorResult.getPayloads()
returns an null or empty iterable will not be added to the operation response. For non-null results, the payloads returned byConnectorResult.getPayloads()
will each be added as a partial result usingConnectorResult.getStatus()
as the status if available,ConnectorStatus.UNKNOWN
otherwise. The result and payloads will be closed after all payloads have been added to the response. If an exception is encountered while adding the results, an additionalOperationStatus.APPLICATION_ERROR
partial result will be added. The status code and status message for the error result will be based on the exception. Throwing aConnectorException
when returning the payloads has the additional benefit of being able to specify the status code and message for the error result.- Parameters:
operation
- the operation responseinput
- the tracked data instanceresult
- the result to add- Returns:
- true if partial results were added, false otherwise
-
addResult
public static void addResult(OperationResponse operation, TrackedData input, ConnectorResult result)
Utility method to add a partialConnectorResult
to anOperationResponse
for a specificTrackedData
instance. This method generally adheres to the same contract asaddPartialResult(OperationResponse, TrackedData, ConnectorResult)
except this method will callOperationResponse.finishPartialResult(TrackedData)
if partial results were added. If no partial results were added, a "full" result will be added usingConnectorResult.getStatus()
if available,ConnectorStatus.UNKNOWN
otherwise. No payload will be included in the full result.- Parameters:
operation
- the operation response where the result will be addedinput
- the tracked data instanceresult
- the result to add
-
addResult
public static void addResult(OperationResponse operation, TrackedData input, ConnectorStatus status)
Convenience method to add a result to anOperationResponse
using the providedConnectorStatus
and a null payload. Effectively equivalent to callingOperationResponse.addResult(TrackedData, OperationStatus, String, String, Payload)
. If a null status is provided, ConnectorStatus#UNKNOWN will be used instead.- Parameters:
operation
- the operation response where the result will be addedinput
- the tracked data instancestatus
- the status of the result
-
addResult
public static void addResult(OperationResponse operation, TrackedData input, ConnectorStatus status, Payload payload)
Convenience method to add a result to anOperationResponse
using the providedConnectorStatus
and payload. Effectively equivalent to callingOperationResponse.addResult(TrackedData, OperationStatus, String, String, Payload)
. If a null status is provided, ConnectorStatus#UNKNOWN will be used instead.- Parameters:
operation
- the operation response where the result will be addedinput
- the tracked data intsancestatus
- the status of the resultpayload
- the payload for the result
-
-