01: /*
02: * Copyright 2005-2006 The Kuali Foundation.
03: *
04: *
05: * Licensed under the Educational Community License, Version 1.0 (the "License");
06: * you may not use this file except in compliance with the License.
07: * You may obtain a copy of the License at
08: *
09: * http://www.opensource.org/licenses/ecl1.php
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */
17: package edu.iu.uis.eden.engine.node;
18:
19: import java.util.ArrayList;
20: import java.util.Iterator;
21: import java.util.List;
22:
23: import edu.iu.uis.eden.engine.RouteContext;
24: import edu.iu.uis.eden.engine.RouteHelper;
25:
26: /**
27: * A simple {@link SplitNode} implementation which always splits to all branches that are defined for the split.
28: *
29: * @author ewestfal
30: */
31: public class SimpleSplitNode implements SplitNode {
32:
33: public SplitResult process(RouteContext routeContext,
34: RouteHelper routeHelper) throws Exception {
35: List branchNames = new ArrayList();
36: for (Iterator iterator = routeContext.getNodeInstance()
37: .getRouteNode().getNextNodes().iterator(); iterator
38: .hasNext();) {
39: RouteNode routeNode = (RouteNode) iterator.next();
40: branchNames.add(routeNode.getBranch().getName());
41: }
42: return new SplitResult(branchNames);
43: }
44:
45: }
|