Author: vgritsenko Date: Wed Jun 27 20:26:43 2007 New Revision: 551435 URL: http://svn.apache.org/viewvc?view=rev&rev=551435 Log: tweak webadmin.xml syntax cleanup
Modified: xml/xindice/trunk/config/webadmin.xml xml/xindice/trunk/java/src/org/apache/xindice/webadmin/WebAdminManager.java xml/xindice/trunk/java/src/org/apache/xindice/webadmin/WebAdminServlet.java Modified: xml/xindice/trunk/config/webadmin.xml URL: http://svn.apache.org/viewvc/xml/xindice/trunk/config/webadmin.xml?view=diff&rev=551435&r1=551434&r2=551435 ============================================================================== --- xml/xindice/trunk/config/webadmin.xml (original) +++ xml/xindice/trunk/config/webadmin.xml Wed Jun 27 20:26:43 2007 @@ -20,8 +20,8 @@ --> <webadmin> - <methods> - <method id="GET" class="org.apache.xindice.webadmin.webdav.components.Get" default="true"/> + <methods default="GET"> + <method id="GET" class="org.apache.xindice.webadmin.webdav.components.Get"/> <method id="COPY" class="org.apache.xindice.webadmin.webdav.components.Copy"/> <method id="DELETE" class="org.apache.xindice.webadmin.webdav.components.Delete"/> <method id="HEAD" class="org.apache.xindice.webadmin.webdav.components.Head"/> @@ -35,12 +35,12 @@ <method id="SEARCH" class="org.apache.xindice.webadmin.webdav.components.Search"/> </methods> - <dbviewers> - <viewer id="list" class="org.apache.xindice.webadmin.viewer.components.ListDatabaseViewer" default="true"/> + <dbviewers default="list"> + <viewer id="list" class="org.apache.xindice.webadmin.viewer.components.ListDatabaseViewer"/> </dbviewers> - <colviewers> - <viewer id="list" class="org.apache.xindice.webadmin.viewer.components.ListCollectionViewer" default="true"/> + <colviewers default="list"> + <viewer id="list" class="org.apache.xindice.webadmin.viewer.components.ListCollectionViewer"/> <viewer id="config" class="org.apache.xindice.webadmin.viewer.components.CollectionConfigurationViewer"/> <viewer id="indexes" class="org.apache.xindice.webadmin.viewer.components.CollectionIndexesViewer"/> <viewer id="create" class="org.apache.xindice.webadmin.viewer.components.CreateCollectionViewer"/> @@ -51,8 +51,8 @@ <viewer id="xupdate" class="org.apache.xindice.webadmin.viewer.components.XUpdateCollectionViewer"/> </colviewers> - <resviewers> - <viewer id="content" class="org.apache.xindice.webadmin.viewer.components.ContentResourceViewer" default="true"/> + <resviewers default="content"> + <viewer id="content" class="org.apache.xindice.webadmin.viewer.components.ContentResourceViewer"/> <viewer id="delete" class="org.apache.xindice.webadmin.viewer.components.DeleteResourceViewer"/> <viewer id="meta" class="org.apache.xindice.webadmin.viewer.components.MetadataResourceViewer"/> </resviewers> Modified: xml/xindice/trunk/java/src/org/apache/xindice/webadmin/WebAdminManager.java URL: http://svn.apache.org/viewvc/xml/xindice/trunk/java/src/org/apache/xindice/webadmin/WebAdminManager.java?view=diff&rev=551435&r1=551434&r2=551435 ============================================================================== --- xml/xindice/trunk/java/src/org/apache/xindice/webadmin/WebAdminManager.java (original) +++ xml/xindice/trunk/java/src/org/apache/xindice/webadmin/WebAdminManager.java Wed Jun 27 20:26:43 2007 @@ -19,19 +19,21 @@ package org.apache.xindice.webadmin; -import org.w3c.dom.Document; -import org.w3c.dom.NodeList; -import org.w3c.dom.NamedNodeMap; -import org.w3c.dom.Node; -import org.apache.xindice.webadmin.webdav.components.DAVComponent; -import org.apache.xindice.webadmin.viewer.HtmlCollectionViewer; -import org.apache.xindice.webadmin.viewer.HtmlResourceViewer; -import org.apache.xindice.webadmin.viewer.HtmlDatabaseViewer; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.apache.xindice.webadmin.viewer.HtmlCollectionViewer; +import org.apache.xindice.webadmin.viewer.HtmlDatabaseViewer; +import org.apache.xindice.webadmin.viewer.HtmlResourceViewer; +import org.apache.xindice.webadmin.webdav.components.DAVComponent; + +import org.w3c.dom.Element; +import org.w3c.dom.NamedNodeMap; +import org.w3c.dom.Node; +import org.w3c.dom.NodeList; -import java.util.HashMap; import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; /** * Manager class that is responsible for reading configuration, initializing @@ -50,10 +52,10 @@ */ public class WebAdminManager { - private static final HashMap methods = new HashMap(); - private static final HashMap colViewers = new HashMap(); - private static final HashMap resViewers = new HashMap(); - private static final HashMap dbViewers = new HashMap(); + private final Map methods = new HashMap(); + private final Map colViewers = new HashMap(); + private final Map resViewers = new HashMap(); + private final Map dbViewers = new HashMap(); private static String[] methodsList; private static String[] colViewersList; @@ -62,7 +64,8 @@ private static final Log log = LogFactory.getLog(WebAdminManager.class); - public WebAdminManager(Document config) { + + public WebAdminManager(Element config) { Node node = config.getElementsByTagName("methods").item(0); try { methodsList = processSection(node, "method", methods); @@ -74,47 +77,45 @@ try { colViewersList = processSection(node, "viewer", colViewers); } catch (Exception e) { - log.error("Failed to load collection viewers", e); + log.error("Failed to load WebAdmin collection viewers", e); } node = config.getElementsByTagName("resviewers").item(0); try { resViewersList = processSection(node, "viewer", resViewers); } catch (Exception e) { - log.error("Failed to load resource viewers", e); + log.error("Failed to load WebAdmin resource viewers", e); } node = config.getElementsByTagName("dbviewers").item(0); try { dbViewersList = processSection(node, "viewer", dbViewers); } catch (Exception e) { - log.error("Failed to load DB viewers", e); + log.error("Failed to load WebAdmin DB viewers", e); } } - private String[] processSection(Node node, String name, HashMap storage) throws Exception { - NodeList nodes = node.getChildNodes(); + private String[] processSection(Node node, String name, Map storage) throws Exception { ArrayList list = new ArrayList(); - for (int i = 0; i < nodes.getLength(); i++) { + NodeList nodes = ((Element) node).getElementsByTagName(name); + for (int i = 0; i < nodes.getLength(); i++) { Node child = nodes.item(i); - if (child.getNodeType() == Node.ELEMENT_NODE && child.getNodeName().equals(name)) { - NamedNodeMap attrs = child.getAttributes(); + NamedNodeMap attrs = child.getAttributes(); - String className = attrs.getNamedItem("class").getNodeValue(); - Object object = Class.forName(className).newInstance(); + String className = attrs.getNamedItem("class").getNodeValue(); + Object object = Class.forName(className).newInstance(); - String id = attrs.getNamedItem("id").getNodeValue(); - if (id != null && id.length() > 0) { - storage.put(id, object); - list.add(id); - - Node attr = attrs.getNamedItem("default"); - if (attr != null && "true".equals(attr.getNodeValue())) { - storage.put("default", object); - } - } + String id = attrs.getNamedItem("id").getNodeValue(); + if (id != null && id.length() > 0) { + storage.put(id, object); + list.add(id); } + } + + Node attr = node.getAttributes().getNamedItem("default"); + if (attr != null) { + storage.put("default", storage.get(attr.getNodeValue())); } return (String[]) list.toArray(new String[0]); Modified: xml/xindice/trunk/java/src/org/apache/xindice/webadmin/WebAdminServlet.java URL: http://svn.apache.org/viewvc/xml/xindice/trunk/java/src/org/apache/xindice/webadmin/WebAdminServlet.java?view=diff&rev=551435&r1=551434&r2=551435 ============================================================================== --- xml/xindice/trunk/java/src/org/apache/xindice/webadmin/WebAdminServlet.java (original) +++ xml/xindice/trunk/java/src/org/apache/xindice/webadmin/WebAdminServlet.java Wed Jun 27 20:26:43 2007 @@ -66,7 +66,7 @@ try { String path = servletConfig.getInitParameter(WEBADMIN_CONFIGURATION); Document configuration = loadFile(path, servletConfig); - mgr = new WebAdminManager(configuration); + mgr = new WebAdminManager(configuration.getDocumentElement()); } catch(Exception e) { throw new ServletException("Could not process WebAdmin configuration", e); }