in import/src/main/java/com/google/cloud/healthcare/imaging/dicomadapter/CMoveService.java [222:247]
private void sendErrorResponse(int status, String message, List<String> failedInstanceUids) {
switch (status) {
case Status.Cancel:
MonitoringService.addEvent(Event.CMOVE_CANCEL);
break;
case Status.OneOrMoreFailures:
MonitoringService.addEvent(Event.CMOVE_WARNING);
break;
default:
MonitoringService.addEvent(Event.CMOVE_ERROR);
}
Attributes cmdAttr = Commands.mkCMoveRSP(cmd, status);
if (message != null) {
cmdAttr.setString(Tag.ErrorComment, VR.LO, message);
}
if (failedInstanceUids != null && failedInstanceUids.size() > 0) {
Attributes dataAttr = new Attributes();
dataAttr.setString(Tag.FailedSOPInstanceUIDList, VR.UI,
failedInstanceUids.toArray(new String[]{}));
as.tryWriteDimseRSP(pc, cmdAttr, dataAttr);
} else {
as.tryWriteDimseRSP(pc, cmdAttr);
}
}