mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
Merged BRANCHES/V3.4 to HEAD (to fix ALF-5837)
23478: ALF-5303: Upload new version fails when file uploaded to sub-folder and parent folder has rule for update git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@24245 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -21,13 +21,17 @@ package org.alfresco.repo.rule.ruletrigger;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.model.ContentModel;
|
||||
import org.alfresco.repo.action.ActionModel;
|
||||
import org.alfresco.repo.policy.PolicyComponent;
|
||||
import org.alfresco.repo.rule.RuleModel;
|
||||
import org.alfresco.repo.security.authentication.AuthenticationComponent;
|
||||
import org.alfresco.service.cmr.dictionary.DictionaryService;
|
||||
import org.alfresco.service.cmr.repository.ContentService;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.repository.NodeService;
|
||||
import org.alfresco.service.cmr.rule.RuleType;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
/**
|
||||
* Rule trigger abstract base
|
||||
@@ -151,9 +155,27 @@ public abstract class RuleTriggerAbstractBase implements RuleTrigger
|
||||
*/
|
||||
protected void triggerRules(NodeRef nodeRef, NodeRef actionedUponNodeRef)
|
||||
{
|
||||
for (RuleType ruleType : this.ruleTypes)
|
||||
{
|
||||
ruleType.triggerRuleType(nodeRef, actionedUponNodeRef, this.executeRuleImmediately);
|
||||
}
|
||||
// Do not trigger rules for rule and action type nodes
|
||||
if (ignoreTrigger(actionedUponNodeRef) == false)
|
||||
{
|
||||
for (RuleType ruleType : this.ruleTypes)
|
||||
{
|
||||
ruleType.triggerRuleType(nodeRef, actionedUponNodeRef, this.executeRuleImmediately);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private boolean ignoreTrigger(NodeRef actionedUponNodeRef)
|
||||
{
|
||||
boolean result = false;
|
||||
QName typeQName = nodeService.getType(actionedUponNodeRef);
|
||||
if (typeQName.equals(RuleModel.TYPE_RULE) == true ||
|
||||
typeQName.equals(ActionModel.TYPE_ACTION) == true ||
|
||||
typeQName.equals(ActionModel.TYPE_COMPOSITE_ACTION) == true ||
|
||||
typeQName.equals(ContentModel.TYPE_THUMBNAIL) == true)
|
||||
{
|
||||
result = true;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user