KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > alfresco > repo > action > executer > CompositeActionExecuter


1 /*
2  * Copyright (C) 2005 Alfresco, Inc.
3  *
4  * Licensed under the Mozilla Public License version 1.1
5  * with a permitted attribution clause. You may obtain a
6  * copy of the License at
7  *
8  * http://www.alfresco.org/legal/license.txt
9  *
10  * Unless required by applicable law or agreed to in writing,
11  * software distributed under the License is distributed on an
12  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
13  * either express or implied. See the License for the specific
14  * language governing permissions and limitations under the
15  * License.
16  */

17 package org.alfresco.repo.action.executer;
18
19 import java.util.List JavaDoc;
20
21 import org.alfresco.repo.action.RuntimeActionService;
22 import org.alfresco.service.cmr.action.Action;
23 import org.alfresco.service.cmr.action.CompositeAction;
24 import org.alfresco.service.cmr.action.ParameterDefinition;
25 import org.alfresco.service.cmr.repository.NodeRef;
26
27 /**
28  * Add features action executor implementation.
29  *
30  * @author Roy Wetherall
31  */

32 public class CompositeActionExecuter extends ActionExecuterAbstractBase
33 {
34     /**
35      * Action constants
36      */

37     public static final String JavaDoc NAME = "composite-action";
38     
39     /**
40      * The action service
41      */

42     private RuntimeActionService actionService;
43     
44     /**
45      * Set the action service
46      *
47      * @param actionService the action service
48      */

49     public void setActionService(RuntimeActionService actionService)
50     {
51         this.actionService = actionService;
52     }
53
54     /**
55      * @see org.alfresco.repo.action.executer.ActionExecuter#execute(org.alfresco.service.cmr.repository.NodeRef, NodeRef)
56      */

57     public void executeImpl(Action action, NodeRef actionedUponNodeRef)
58     {
59         if (action instanceof CompositeAction)
60         {
61             for (Action subAction : ((CompositeAction)action).getActions())
62             {
63                 // We don't check the conditions of sub-actions and they don't have an execution history
64
this.actionService.directActionExecution(subAction, actionedUponNodeRef);
65             }
66         }
67     }
68
69     /**
70      * Add parameter definitions
71      */

72     @Override JavaDoc
73     protected void addParameterDefintions(List JavaDoc<ParameterDefinition> paramList)
74     {
75         // No parameters
76
}
77
78 }
79
Popular Tags