1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 package org.nuiton.eugene.models.state.xml;
24
25 import org.apache.commons.digester3.Digester;
26 import org.apache.commons.digester3.RuleSetBase;
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 public class DigesterStateModelRuleSet extends RuleSetBase {
50
51 protected String prefix;
52
53 public DigesterStateModelRuleSet() {
54 this("");
55 }
56
57 public DigesterStateModelRuleSet(String prefix) {
58 super("http://www.codelutin.org/lutingenerator/stateModel");
59 this.prefix = prefix;
60 }
61
62 public void addRuleInstances(Digester digester) {
63
64
65
66
67 digester.addSetProperties("stateModel");
68
69 digester.addObjectCreate("stateModel/stateChart", StateModelStateChartImpl.class);
70 digester.addSetProperties("stateModel/stateChart");
71 digester.addSetNext("stateModel/stateChart", "addStateChart");
72
73 digester.addObjectCreate("*/state", StateModelSimpleStateImpl.class);
74 digester.addSetProperties("*/state");
75 digester.addSetNext("*/state", "addState");
76
77 digester.addObjectCreate("*/complexeState", StateModelComplexeStateImpl.class);
78 digester.addSetProperties("*/complexeState");
79 digester.addSetNext("*/complexeState", "addState");
80
81 digester
82 .addObjectCreate("*/transition", StateModelTransitionImpl.class);
83 digester.addSetProperties("*/transition");
84 digester.addSetNext("*/transition", "addTransition");
85 }
86 }