Author: tdraier
Date: Wed Aug 16 18:12:07 2006
New Revision: 14920

URL: https://svndev.jahia.net/websvn/listing.php?sc=1&rev=14920&repname=jahia
Log:
fixed workflow lock

Modified:
    trunk/core/src/java/org/jahia/services/lock/LockPrerequisites.java

Modified: trunk/core/src/java/org/jahia/services/lock/LockPrerequisites.java
URL: 
https://svndev.jahia.net/websvn/diff.php?path=/trunk/core/src/java/org/jahia/services/lock/LockPrerequisites.java&rev=14920&repname=jahia
==============================================================================
--- trunk/core/src/java/org/jahia/services/lock/LockPrerequisites.java 
(original)
+++ trunk/core/src/java/org/jahia/services/lock/LockPrerequisites.java Wed Aug 
16 18:12:07 2006
@@ -319,19 +319,10 @@
                 }
             } else {
                 WorkflowService workflowService = 
ServicesRegistry.getInstance().getWorkflowService();
-                object = workflowService.getHardLinkedMainObject(object);
                 ContentObjectKey main = 
workflowService.getMainLinkObject(object);
 
-                while (true) {
-                    LockKey workflowLockKey = 
LockKey.composeLockKey(LockKey.WORKFLOW_ACTION+"_"+object.getType(), 
object.getIdInType(), -1);
-                    if (!results.getResultsList().contains(workflowLockKey)) {
-                        putLockIfNotSameContext(workflowLockKey, owner, 
context, justTesting, results);
-                    }
-                    if (main.equals(object)) {
-                        break;
-                    }
-                    object = object.getParent(EntryLoadRequest.STAGED);
-                }
+                LockKey workflowLockKey = 
LockKey.composeLockKey(LockKey.WORKFLOW_ACTION+"_"+main.getType(), 
main.getIdInType(), -1);
+                putLockIfNotSameContext(workflowLockKey, owner, context, 
justTesting, results);
 
                 if (checkNoWorkflow) {
                     boolean isInactive = 
workflowService.getInheritedMode(object) == WorkflowService.INACTIVE;
@@ -339,14 +330,6 @@
                         verifyLockForWorkflowGroup(object, owner, context, 
justTesting, results);
                     }
                 }
-
-                if (recurse) {
-                    List l = workflowService.getUnlinkedContentObjects(object);
-                    for (Iterator iterator = l.iterator(); 
iterator.hasNext();) {
-                        ContentObjectKey child = (ContentObjectKey) 
iterator.next();
-                        verifyLockForWorkflow(child, owner, context, 
justTesting, results, recurse, false);
-                    }
-                }
             }
         } catch (JahiaException e) {
             logger.warn("Cannot get workflow objects",e);

Reply via email to