1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 package org.ximtec.igesture.core.jdom;
28
29 import java.util.List;
30
31 import org.jdom.Element;
32 import org.ximtec.igesture.core.TestClass;
33 import org.ximtec.igesture.core.TestSet;
34
35
36
37
38
39
40
41
42
43 public class JdomTestSet extends Element {
44
45 public static final String ROOT_TAG = "testSet";
46
47 public static final String NAME_ATTRIBUTE = "name";
48
49 public static final String UUID_ATTRIBUTE = "id";
50
51 public static final String REFID_ATTRIBUTE = "idref";
52
53
54 public JdomTestSet(TestSet testSet) {
55 super(ROOT_TAG);
56 setAttribute(NAME_ATTRIBUTE, testSet.getName());
57 setAttribute(UUID_ATTRIBUTE, testSet.getId());
58
59 for (TestClass testClass : testSet.getTestClasses()) {
60 addContent(new JdomTestClass(testClass));
61 }
62
63 }
64
65
66 @SuppressWarnings("unchecked")
67 public static TestSet unmarshal(Element setElement) {
68 final String name = setElement.getAttributeValue(NAME_ATTRIBUTE);
69 final String uuid = setElement.getAttributeValue(UUID_ATTRIBUTE);
70 final TestSet testSet = new TestSet(name);
71 testSet.setId(uuid);
72
73 for (final Element testClassElement : (List<Element>)setElement
74 .getChildren(JdomTestClass.ROOT_TAG)) {
75 testSet.addTestClass(JdomTestClass.unmarshal(testClassElement));
76 }
77
78
79 for (Element sampleElement : (List<Element>)setElement.getChildren(JdomGestureSample.ROOT_TAG)) {
80 testSet.add(JdomGestureSample.unmarshal(sampleElement));
81 }
82
83
84
85 return testSet;
86 }
87
88 }