Update of /var/cvs/src/org/mmbase/util/xml
In directory james.mmbase.org:/tmp/cvs-serv25464
Modified Files:
UtilReader.java
Log Message:
for MMB-1739 made it possible to 'merge maps'
See also: http://cvs.mmbase.org/viewcvs/src/org/mmbase/util/xml
See also: http://www.mmbase.org/jira/browse/MMB-1739
Index: UtilReader.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/util/xml/UtilReader.java,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -b -r1.39 -r1.40
--- UtilReader.java 14 Nov 2008 10:06:11 -0000 1.39
+++ UtilReader.java 24 Nov 2008 11:07:12 -0000 1.40
@@ -37,7 +37,7 @@
* @since MMBase-1.6.4
* @author Rob Vermeulen
* @author Michiel Meeuwissen
- * @version $Id: UtilReader.java,v 1.39 2008/11/14 10:06:11 michiel Exp $
+ * @version $Id: UtilReader.java,v 1.40 2008/11/24 11:07:12 michiel Exp $
*/
public class UtilReader {
@@ -220,8 +220,16 @@
for (Element p : reader.getChildElements(e, "property")) {
String name = reader.getElementAttributeValue(p,
"name");
String type = reader.getElementAttributeValue(p,
"type");
- if (type.equals("map")) {
- Collection<Map.Entry<String,String>> entryList =
new ArrayList<Map.Entry<String,String>>();
+ if (type.equals("mergingmap") ||
+ type.equals("map")) {
+ Collection<Map.Entry<String,String>> entryList =
null;
+ if (type.equals("mergingmap")) {
+ entryList = maps.get(name);
+ }
+
+ if (entryList == null) {
+ entryList = new
ArrayList<Map.Entry<String,String>>();
+ }
for (Element entry : reader.getChildElements(p,
"entry")) {
String key = null;
@@ -238,7 +246,7 @@
entryList.add(getEntry(reader, key,
value));
}
}
- if (maps.containsKey(name)) {
+ if (maps.containsKey(name) && !
type.equals("mergingmap")) {
log.debug("Property '" + name + "' (" +
entryList + ") of " + url + " is shadowed");
} else {
maps.put(name, entryList);
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs