Update of /var/cvs/src/org/mmbase/framework
In directory james.mmbase.org:/tmp/cvs-serv5316
Modified Files:
Framework.java ComponentRepository.java
Log Message:
bugfix, after change of a component xml, the blocktype settings in
framework.xml were lost
See also: http://cvs.mmbase.org/viewcvs/src/org/mmbase/framework
Index: Framework.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/framework/Framework.java,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -b -r1.48 -r1.49
--- Framework.java 21 Mar 2008 16:08:16 -0000 1.48
+++ Framework.java 22 Mar 2008 09:12:59 -0000 1.49
@@ -27,7 +27,7 @@
*
* @author Johannes Verelst
* @author Pierre van Rooden
- * @version $Id: Framework.java,v 1.48 2008/03/21 16:08:16 michiel Exp $
+ * @version $Id: Framework.java,v 1.49 2008/03/22 09:12:59 michiel Exp $
* @since MMBase-1.9
*/
public abstract class Framework {
@@ -47,6 +47,8 @@
XMLEntityResolver.registerSystemID(NAMESPACE + ".xsd", XSD,
Framework.class);
}
+
+
/**
* Return the framework, or null if there is no framework defined in
mmbaseroot.xml
* @return the framework
@@ -68,16 +70,7 @@
framework = (Framework)
Instantiator.getInstance(el);
}
}
- org.w3c.dom.NodeList blockTypes =
fwConfiguration.getDocumentElement().getElementsByTagName("blocktype");
- for (int i = 0; i < blockTypes.getLength(); i++) {
- org.w3c.dom.Element element =
(org.w3c.dom.Element) blockTypes.item(i);
- String classification =
element.getAttribute("name");
- int weight =
Integer.parseInt(element.getAttribute("weight"));
- for (Block.Type t :
Block.Type.getClassification(classification, true)) {
- t.setWeight(weight);
- t.getTitle().fillFromXml("title", element);
- }
- }
+
} catch (Exception e) {
log.error(e.getMessage(), e);
framework = new
org.mmbase.framework.basic.BasicFramework();
Index: ComponentRepository.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/framework/ComponentRepository.java,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -b -r1.31 -r1.32
--- ComponentRepository.java 21 Mar 2008 09:26:33 -0000 1.31
+++ ComponentRepository.java 22 Mar 2008 09:12:59 -0000 1.32
@@ -23,7 +23,7 @@
* This (singleton) class maintains all compoments which are registered in the
current MMBase.
*
* @author Michiel Meeuwissen
- * @version $Id: ComponentRepository.java,v 1.31 2008/03/21 09:26:33 fpunt Exp
$
+ * @version $Id: ComponentRepository.java,v 1.32 2008/03/22 09:12:59 michiel
Exp $
* @since MMBase-1.9
*/
public class ComponentRepository {
@@ -131,19 +131,44 @@
clear();
}
protected void clear() {
+
Block.Type.ROOT.subs.clear();
Block.Type.ROOT.blocks.clear();
Block.Type.NO.subs.clear();
Block.Type.NO.blocks.clear();
+ readBlockTypes();
+
rep.clear();
failed.clear();
}
/**
+ * @todo Is it a bit odd that this uses the framework.xml?
+ */
+ private void readBlockTypes() {
+ try {
+ org.w3c.dom.Document fwConfiguration =
ResourceLoader.getConfigurationRoot().getDocument("framework.xml", true,
Framework.class);
+ org.w3c.dom.NodeList blockTypes =
fwConfiguration.getDocumentElement().getElementsByTagName("blocktype");
+ for (int i = 0; i < blockTypes.getLength(); i++) {
+ org.w3c.dom.Element element = (org.w3c.dom.Element)
blockTypes.item(i);
+ String classification = element.getAttribute("name");
+ int weight = Integer.parseInt(element.getAttribute("weight"));
+ for (Block.Type t :
Block.Type.getClassification(classification, true)) {
+ t.setWeight(weight);
+ t.getTitle().fillFromXml("title", element);
+ }
+ }
+ } catch (Exception e) {
+ log.error(e);
+ }
+ }
+
+ /**
* Reads all component xmls
*/
protected void readConfiguration(String child) {
clear();
+
ResourceLoader loader =
ResourceLoader.getConfigurationRoot().getChildResourceLoader(child);
Collection<String> components =
loader.getResourcePaths(ResourceLoader.XML_PATTERN, true /* recursive*/);
log.info("In " + loader + " the following components XML's were found
" + components);
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs