author | timkelly |
Fri, 27 Aug 2010 16:34:38 -0500 | |
changeset 1906 | 6f11f5393a5c |
parent 1871 | 4d38e1ac1cff |
child 2010 | 2da3246ba2e6 |
permissions | -rw-r--r-- |
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
1 |
package com.nokia.carbide.cpp.internal.api.sdk.sbsv2; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
2 |
|
1906
6f11f5393a5c
for gcce and armv5 based targets for sbsv2, if the compiler prefix does not exist on disk for a particular configuraiton, attempt to perform
timkelly
parents:
1871
diff
changeset
|
3 |
import java.io.File; |
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
4 |
import java.io.StringReader; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
5 |
import java.util.ArrayList; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
6 |
import java.util.HashMap; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
7 |
import java.util.List; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
8 |
import java.util.Map; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
9 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
10 |
import javax.xml.parsers.DocumentBuilder; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
11 |
import javax.xml.parsers.DocumentBuilderFactory; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
12 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
13 |
import org.w3c.dom.Element; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
14 |
import org.w3c.dom.NamedNodeMap; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
15 |
import org.w3c.dom.Node; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
16 |
import org.w3c.dom.NodeList; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
17 |
import org.xml.sax.InputSource; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
18 |
import org.xml.sax.helpers.DefaultHandler; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
19 |
|
1739
5f659a59d04a
refactoring ISBSv2BuildContext, ISBSv1BuildContext, ISBSv2ConfigQueryData from public to internal package.
timkelly
parents:
1736
diff
changeset
|
20 |
import com.nokia.carbide.cpp.internal.api.sdk.ISBSv2ConfigQueryData; |
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
21 |
import com.nokia.carbide.cpp.sdk.core.SDKCorePlugin; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
22 |
import com.nokia.cpp.internal.api.utils.core.Logging; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
23 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
24 |
public class SBSv2ConfigQueryData implements ISBSv2ConfigQueryData { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
25 |
|
1621
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
26 |
private static final long serialVersionUID = 3358697901364441158L; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
27 |
|
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
28 |
private String alias = ""; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
29 |
private String meaning = ""; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
30 |
|
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
31 |
// Raptor config query data |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
32 |
private Map<String, String> buildMacros = new HashMap<String, String>(); // cpp preprocessor macros |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
33 |
private Map<String, String> metaDataMacros = new HashMap<String, String>(); // macros to parse the INF/MMPs files (these do not contain values) |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
34 |
private List<String> metaDataIncludes = new ArrayList<String>(); |
1736
ba74c19c6de3
fix bug 11762. Fix targettypes for MMP editor to retrieve properly depending on whether build config is SBsv1 or SBSv2.
timkelly
parents:
1681
diff
changeset
|
35 |
private List<String> targettypes = new ArrayList<String>(); |
1621
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
36 |
private String buildPrefix = ""; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
37 |
private String metaDataVariantHRH = ""; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
38 |
private String outputPathString = ""; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
39 |
private String configurationErrorMessage = ""; |
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
40 |
|
1621
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
41 |
public SBSv2ConfigQueryData() { |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
42 |
this.alias = ""; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
43 |
this.meaning = ""; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
44 |
} |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
45 |
|
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
46 |
public SBSv2ConfigQueryData(String alias, String meaning, String queryResult) { |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
47 |
this.alias = alias; |
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
48 |
this.meaning = meaning; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
49 |
parseQueryConfigResults(queryResult); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
50 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
51 |
|
1621
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
52 |
public String getAlias() { |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
53 |
return alias; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
54 |
} |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
55 |
|
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
56 |
public String getBuildPrefix() { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
57 |
return buildPrefix; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
58 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
59 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
60 |
public Map<String, String> getBuildMacros() { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
61 |
return buildMacros; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
62 |
} |
1736
ba74c19c6de3
fix bug 11762. Fix targettypes for MMP editor to retrieve properly depending on whether build config is SBsv1 or SBSv2.
timkelly
parents:
1681
diff
changeset
|
63 |
|
ba74c19c6de3
fix bug 11762. Fix targettypes for MMP editor to retrieve properly depending on whether build config is SBsv1 or SBSv2.
timkelly
parents:
1681
diff
changeset
|
64 |
public List<String> getTargettypes() { |
ba74c19c6de3
fix bug 11762. Fix targettypes for MMP editor to retrieve properly depending on whether build config is SBsv1 or SBSv2.
timkelly
parents:
1681
diff
changeset
|
65 |
return targettypes; |
ba74c19c6de3
fix bug 11762. Fix targettypes for MMP editor to retrieve properly depending on whether build config is SBsv1 or SBSv2.
timkelly
parents:
1681
diff
changeset
|
66 |
} |
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
67 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
68 |
public String getConfigurationErrorMessage() { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
69 |
return configurationErrorMessage; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
70 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
71 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
72 |
public Map<String, String> getMetaDataMacros() { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
73 |
return metaDataMacros; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
74 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
75 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
76 |
public List<String> getMetaDataIncludes() { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
77 |
return metaDataIncludes; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
78 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
79 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
80 |
public String getMetaDataVariantHRH() { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
81 |
return metaDataVariantHRH; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
82 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
83 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
84 |
public String getOutputPathString() { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
85 |
return outputPathString; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
86 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
87 |
|
1621
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
88 |
@Override |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
89 |
public int hashCode() { |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
90 |
final int prime = 31; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
91 |
int result = 1; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
92 |
result = prime * result + ((alias == null) ? 0 : alias.hashCode()); |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
93 |
return result; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
94 |
} |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
95 |
|
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
96 |
@Override |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
97 |
public boolean equals(Object obj) { |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
98 |
if (this == obj) |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
99 |
return true; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
100 |
if (obj == null) |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
101 |
return false; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
102 |
if (getClass() != obj.getClass()) |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
103 |
return false; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
104 |
SBSv2ConfigQueryData other = (SBSv2ConfigQueryData) obj; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
105 |
if (alias == null) { |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
106 |
if (other.alias != null) |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
107 |
return false; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
108 |
} else if (!alias.equals(other.alias)) |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
109 |
return false; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
110 |
return true; |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
111 |
} |
393b985a50f3
Raptor scanner discovery on top of new Raptor Query API.
stechong
parents:
1568
diff
changeset
|
112 |
|
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
113 |
private void parseQueryConfigResults(String queryResult) { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
114 |
try { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
115 |
Element root = null; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
116 |
DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
117 |
parser.setErrorHandler(new DefaultHandler()); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
118 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
119 |
StringReader reader = new StringReader( queryResult ); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
120 |
InputSource inputSource = new InputSource( reader ); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
121 |
root = parser.parse(inputSource).getDocumentElement(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
122 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
123 |
NodeList children = root.getChildNodes(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
124 |
for (int i=0; i< children.getLength(); i++) { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
125 |
Node configNode = children.item(i); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
126 |
if (configNode.getNodeName().equals("config")){ |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
127 |
NamedNodeMap aliasAttribs = configNode.getAttributes(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
128 |
String dottedName = aliasAttribs.getNamedItem("meaning").getNodeValue(); |
1681
6636e8c75e66
Fix problem with sbs config xml parsing. Make sure to trim error message to avoid erroneously adding an error when there is none. Fix problem with adding system includes for variants.
timkelly
parents:
1621
diff
changeset
|
129 |
if (!dottedName.equalsIgnoreCase(meaning) && meaning != null){ |
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
130 |
continue; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
131 |
} |
1681
6636e8c75e66
Fix problem with sbs config xml parsing. Make sure to trim error message to avoid erroneously adding an error when there is none. Fix problem with adding system includes for variants.
timkelly
parents:
1621
diff
changeset
|
132 |
if (configNode.getTextContent() != null && configNode.getTextContent().trim().length() > 0){ |
6636e8c75e66
Fix problem with sbs config xml parsing. Make sure to trim error message to avoid erroneously adding an error when there is none. Fix problem with adding system includes for variants.
timkelly
parents:
1621
diff
changeset
|
133 |
configurationErrorMessage = configNode.getTextContent().trim(); |
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
134 |
break; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
135 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
136 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
137 |
String outputpath = aliasAttribs.getNamedItem("outputpath").getNodeValue(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
138 |
if (outputpath != null){ |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
139 |
outputPathString = outputpath; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
140 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
141 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
142 |
NodeList configChillens = configNode.getChildNodes(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
143 |
for (int ii = 0; ii < configChillens.getLength(); ii++){ |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
144 |
Node dataNode = configChillens.item(ii); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
145 |
if (dataNode.getNodeName().equals("metadata")){ |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
146 |
// get <metadata> |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
147 |
NodeList metaDataChillens = dataNode.getChildNodes(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
148 |
for (int iii = 0; iii < metaDataChillens.getLength(); iii++){ |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
149 |
Node metaChild = metaDataChillens.item(iii); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
150 |
NamedNodeMap attribs = metaChild.getAttributes(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
151 |
try { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
152 |
if (metaChild.getNodeName().equals("macro")){ |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
153 |
String name = attribs.getNamedItem("name").getNodeValue(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
154 |
String value = ""; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
155 |
Node valueNode = attribs.getNamedItem("value"); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
156 |
if (valueNode != null) { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
157 |
value = valueNode.getNodeValue(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
158 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
159 |
metaDataMacros.put(name, value); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
160 |
} else if (metaChild.getNodeName().equals("include")){ |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
161 |
String path = attribs.getNamedItem("path").getNodeValue(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
162 |
metaDataIncludes.add(path); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
163 |
} else if (metaChild.getNodeName().equals("preinclude")){ |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
164 |
metaDataVariantHRH = attribs.getNamedItem("file").getNodeValue(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
165 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
166 |
} catch (Exception e) { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
167 |
// skip it |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
168 |
e.printStackTrace(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
169 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
170 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
171 |
} else if (dataNode.getNodeName().equals("build")){ |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
172 |
// get <build> |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
173 |
NodeList buildChillens = dataNode.getChildNodes(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
174 |
for (int iii = 0; iii < buildChillens.getLength(); iii++){ |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
175 |
Node buildChild = buildChillens.item(iii); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
176 |
NamedNodeMap attribs = buildChild.getAttributes(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
177 |
try { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
178 |
if (buildChild.getNodeName().equals("macro")){ |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
179 |
String name = attribs.getNamedItem("name").getNodeValue(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
180 |
String value = ""; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
181 |
Node valueNode = attribs.getNamedItem("value"); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
182 |
if (valueNode != null) { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
183 |
value = valueNode.getNodeValue(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
184 |
} |
1906
6f11f5393a5c
for gcce and armv5 based targets for sbsv2, if the compiler prefix does not exist on disk for a particular configuraiton, attempt to perform
timkelly
parents:
1871
diff
changeset
|
185 |
if (name.equals("__PRODUCT_INCLUDE__")){ |
6f11f5393a5c
for gcce and armv5 based targets for sbsv2, if the compiler prefix does not exist on disk for a particular configuraiton, attempt to perform
timkelly
parents:
1871
diff
changeset
|
186 |
File f = new File(value.replaceAll("\"", "")); |
6f11f5393a5c
for gcce and armv5 based targets for sbsv2, if the compiler prefix does not exist on disk for a particular configuraiton, attempt to perform
timkelly
parents:
1871
diff
changeset
|
187 |
if (!f.exists()) |
6f11f5393a5c
for gcce and armv5 based targets for sbsv2, if the compiler prefix does not exist on disk for a particular configuraiton, attempt to perform
timkelly
parents:
1871
diff
changeset
|
188 |
continue; // Don't add a product include for non-existent HRH |
6f11f5393a5c
for gcce and armv5 based targets for sbsv2, if the compiler prefix does not exist on disk for a particular configuraiton, attempt to perform
timkelly
parents:
1871
diff
changeset
|
189 |
} |
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
190 |
buildMacros.put(name, value); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
191 |
} else if (buildChild.getNodeName().equals("preinclude")){ |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
192 |
buildPrefix = attribs.getNamedItem("file").getNodeValue(); |
1736
ba74c19c6de3
fix bug 11762. Fix targettypes for MMP editor to retrieve properly depending on whether build config is SBsv1 or SBSv2.
timkelly
parents:
1681
diff
changeset
|
193 |
} else if (buildChild.getNodeName().equals("targettype")){ |
ba74c19c6de3
fix bug 11762. Fix targettypes for MMP editor to retrieve properly depending on whether build config is SBsv1 or SBSv2.
timkelly
parents:
1681
diff
changeset
|
194 |
String targettype = attribs.getNamedItem("name").getNodeValue(); |
ba74c19c6de3
fix bug 11762. Fix targettypes for MMP editor to retrieve properly depending on whether build config is SBsv1 or SBSv2.
timkelly
parents:
1681
diff
changeset
|
195 |
if (targettype != null && targettype.length() > 0){ |
ba74c19c6de3
fix bug 11762. Fix targettypes for MMP editor to retrieve properly depending on whether build config is SBsv1 or SBSv2.
timkelly
parents:
1681
diff
changeset
|
196 |
targettypes.add(targettype); |
ba74c19c6de3
fix bug 11762. Fix targettypes for MMP editor to retrieve properly depending on whether build config is SBsv1 or SBSv2.
timkelly
parents:
1681
diff
changeset
|
197 |
} |
1568
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
198 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
199 |
} catch (Exception e) { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
200 |
// skip it |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
201 |
e.printStackTrace(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
202 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
203 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
204 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
205 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
206 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
207 |
break; |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
208 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
209 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
210 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
211 |
} catch (Exception e) { |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
212 |
e.printStackTrace(); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
213 |
Logging.log(SDKCorePlugin.getDefault(), Logging.newStatus(SDKCorePlugin.getDefault(), e)); |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
214 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
215 |
} |
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
216 |
|
508bfdb3a934
Added caching of Raptor query data for aliases, products and configs.
stechong
parents:
diff
changeset
|
217 |
} |