boolean dirty = false;
for (final Map.Entry<String, String> entry : workflowMap.entrySet()) {
final String workflowId = entry.getValue();
final Workflow workflow;
try {
workflow = workflowSession.getWorkflow(workflowId);
if (workflow.isActive()) {
activeWorkflowMap.put(entry.getKey(), workflow.getId());
}
final Resource resource = resourceResolver.getResource(entry.getKey());
final ModifiableValueMap mvm = resource.adaptTo(ModifiableValueMap.class);
if (!StringUtils.equals(mvm.get(KEY_STATE, String.class), workflow.getState())) {
mvm.put(KEY_STATE, workflow.getState());
dirty = true;
}
} catch (WorkflowException e) {
log.error("Could not get workflow with id [ {} ]. {}", workflowId, e.getMessage());
}