1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.rundeck.api.parser;
17
18 import org.apache.commons.lang.StringUtils;
19 import org.dom4j.Node;
20 import org.rundeck.api.domain.RundeckProject;
21
22
23
24
25
26
27 public class ProjectParser implements XmlNodeParser<RundeckProject> {
28
29 private String xpath;
30
31 public ProjectParser() {
32 super();
33 }
34
35
36
37
38 public ProjectParser(String xpath) {
39 super();
40 this.xpath = xpath;
41 }
42
43 @Override
44 public RundeckProject parseXmlNode(Node node) {
45 Node projectNode = xpath != null ? node.selectSingleNode(xpath) : node;
46
47 RundeckProject project = new RundeckProject();
48
49 project.setName(StringUtils.trimToNull(projectNode.valueOf("name")));
50 project.setDescription(StringUtils.trimToNull(projectNode.valueOf("description")));
51 project.setResourceModelProviderUrl(StringUtils.trimToNull(projectNode.valueOf("resources/providerURL")));
52
53 return project;
54 }
55
56 }