src/main/java/de/unixwork/uwproj/TargetData.java

changeset 40
b42bfc9e9983
parent 0
38775db5fdf5
child 41
75ee588d5d9e
equal deleted inserted replaced
39:3ca85da78515 40:b42bfc9e9983
1 /*
2 * To change this license header, choose License Headers in Project Properties.
3 * To change this template file, choose Tools | Templates
4 * and open the template in the editor.
5 */
6 package de.unixwork.uwproj; 1 package de.unixwork.uwproj;
7 2
8 import java.util.LinkedList;
9 import java.util.List;
10 import org.w3c.dom.Element; 3 import org.w3c.dom.Element;
11 import org.w3c.dom.Node; 4 import org.w3c.dom.Node;
12 import org.w3c.dom.NodeList; 5 import org.w3c.dom.NodeList;
13 6
14 /** 7 import java.util.LinkedList;
15 * 8 import java.util.List;
16 * @author olaf 9
17 */
18 public class TargetData { 10 public class TargetData {
19 private List<Define> defines = new LinkedList<>(); 11 private final List<Define> defines = new LinkedList<>();
20 private List<String> dependencies = new LinkedList<>(); 12 private final List<String> dependencies = new LinkedList<>();
21 private StringBuilder make = new StringBuilder(); 13 private final StringBuilder make = new StringBuilder();
22 14
23 public static TargetData parse(Element element) throws Exception { 15 public static TargetData parse(Element element) throws Exception {
24 TargetData data = new TargetData(); 16 TargetData data = new TargetData();
25 17
26 NodeList nodes = element.getChildNodes(); 18 NodeList nodes = element.getChildNodes();
30 Element elm = (Element)node; 22 Element elm = (Element)node;
31 String n = elm.getNodeName(); 23 String n = elm.getNodeName();
32 if(n.equals("define")) { 24 if(n.equals("define")) {
33 String def = elm.getAttribute("name"); 25 String def = elm.getAttribute("name");
34 String defval = elm.getAttribute("value"); 26 String defval = elm.getAttribute("value");
35 if(def == null) { 27 if (def.isBlank()) {
36 throw new Exception("define element requires name attribute"); 28 throw new Exception("define element requires name attribute");
37 } 29 }
38 data.addDefine(new Define(def, defval)); 30 data.addDefine(new Define(def, defval));
39 } else if(n.equals("dependencies")) { 31 } else if(n.equals("dependencies")) {
40 String deps = Xml.getContent(elm); 32 String deps = Util.getContent(elm);
41 String[] dependencies = deps.split(","); 33 String[] dependencies = deps.split(",");
42 for(String dependency : dependencies) { 34 for(String dependency : dependencies) {
43 dependency = dependency.trim(); 35 dependency = dependency.trim();
44 data.addDependency(dependency); 36 data.addDependency(dependency);
45 } 37 }
46 } else if(n.equals("make")) { 38 } else if(n.equals("make")) {
47 String m = Xml.getContent(elm); 39 String m = Util.getContent(elm);
48 data.addMake(m); 40 data.addMake(m);
49 } 41 }
50 } 42 }
51 } 43 }
52 44

mercurial