in DIXFSamples/RecurringIntegrationApp/Runtime/DefaultDataFlowNetwork.cs [332:381]
private async Task<bool> postProcessMessageAsync(DataJobStatusDetail jobStatusDetail,
ClientDataMessage dataMessage)
{
bool retVal = false;
if (jobStatusDetail == null || jobStatusDetail.DataJobStatus == null)
return retVal;
switch (jobStatusDetail.DataJobStatus.DataJobState)
{
// Document was processed successfully with no pre, post or functional
// errors
case DataJobState.Processed:
{
var targetDataMessage = new ClientDataMessage()
{
Name = dataMessage.Name,
FullPath = Path.Combine(Settings.SuccessDir, dataMessage.Name),
MessageStatus = MessageStatus.Succeeded
};
await this.moveDataToTargetAsync(dataMessage, targetDataMessage);
await this.updateStatsAsync(jobStatusDetail, StatType.Success, targetDataMessage);
retVal = true;
}
break;
// Document had some processing error
case DataJobState.PostProcessError:
case DataJobState.PreProcessError:
case DataJobState.ProcessedWithErrors:
{
var targetDataMessage = new ClientDataMessage()
{
Name = dataMessage.Name,
FullPath = Path.Combine(Settings.ErrorDir, dataMessage.Name),
MessageStatus = MessageStatus.Failed
};
await this.moveDataToTargetAsync(dataMessage, targetDataMessage);
await this.updateStatsAsync(jobStatusDetail, StatType.Failure, targetDataMessage);
}
break;
}
return retVal;
}