From b94757b42e311d7dd78886edff7e61dd0bcc4442 Mon Sep 17 00:00:00 2001 From: Katarina Valalikova Date: Wed, 1 Apr 2020 19:48:15 +0200 Subject: [PATCH] modify instead of delete delta for auditing task actions such as (suspend, runNow, resume) - MID-3743 --- .../midpoint/model/impl/controller/ModelController.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/controller/ModelController.java b/model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/controller/ModelController.java index 13c3269fc5d..3a1052aceb4 100644 --- a/model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/controller/ModelController.java +++ b/model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/controller/ModelController.java @@ -1941,12 +1941,17 @@ private void auditTaskOperation(PrismReferenceValue taskRef, AuditEventType even String requestIdentifier = ModelImplUtils.generateRequestIdentifier(); auditRecord.setRequestIdentifier(requestIdentifier); auditRecord.setTarget(taskRef); - ObjectDelta delta = prismContext.deltaFactory().object().createDeleteDelta(TaskType.class, taskRef.getOid()); + ObjectDelta delta; + if (AuditEventType.DELETE_OBJECT == event) { + delta = prismContext.deltaFactory().object().createDeleteDelta(TaskType.class, taskRef.getOid()); + } else { + //TODO should we somehow indicate deltas which are executed in taskManager? + delta = prismContext.deltaFactory().object().createEmptyModifyDelta(TaskType.class, taskRef.getOid()); + } ObjectDeltaOperation odo = new ObjectDeltaOperation<>(delta, parentResult); auditRecord.getDeltas().add(odo); if (AuditEventStage.EXECUTION == stage) { auditRecord.setOutcome(parentResult.getStatus()); - } auditHelper.audit(auditRecord, null, operationTask, parentResult); }