private List<ApprovalRequest<AssociationAdditionType>> getApprovalRequests(ModelContext<?> modelContext, PrimaryChangeProcessorConfigurationType wfConfigurationType,
ObjectTreeDeltas changes, Task taskFromModel, OperationResult result) {
List<ApprovalRequest<AssociationAdditionType>> requests = new ArrayList<>();
PcpAspectConfigurationType config = primaryChangeAspectHelper.getPcpAspectConfigurationType(wfConfigurationType, this);
Set<Map.Entry<ResourceShadowDiscriminator, ObjectDelta<ShadowType>>> entries = changes.getProjectionChangeMapEntries();
for (Map.Entry<ResourceShadowDiscriminator, ObjectDelta<ShadowType>> entry : entries) {
ObjectDelta<ShadowType> delta = entry.getValue();
if (delta.isAdd()) {
requests.addAll(getApprovalRequestsFromShadowAdd(config, entry.getValue(), entry.getKey(), modelContext, taskFromModel, result));
} else if (delta.isModify()) {
ModelProjectionContext projectionContext = modelContext.findProjectionContext(entry.getKey());
requests.addAll(getApprovalRequestsFromShadowModify(
config, projectionContext.getObjectOld(), entry.getValue(), entry.getKey(), modelContext, taskFromModel, result));
} else {
}
}
return requests;
}