Isn't the centralized configuration management simplified in the Xindice
world by using the system.xml file?  I mean, isn't that the place where new
or extended configuration information should go?

the system.xml file _is_ the place for the configuration of Xindice. No question about that.


The first problem is that the embed driver also needs this configuration and we had no clean way to pass the configuration file to the DatabaseImpl class. First a global variable was used (one of the ugliest thing I ever programmed) and now the setProperty method could be used. This is a much cleaner way, but now that we use the setProperty for the embed driver, couldn't we also use if for the xmlrpc driver (and pass some client-side configurations)? In that case, we wouldn't pass the system.xml file but another (optional) configuration file.

To understand how I go there, simply try to remove the System.setProperty(Xindice.PROP...) I used to pass the system.xml file to the embed driver. You'll see what I mean.

I am thinking about adding some more config information there regarding the
xmlrpc server (which I'll post when I have something ready).

Thank you for giving me arguments :-)

The additions you're about to do are only valid for the xmlrpc driver. So if we have more drivers (webdav, xmlrpc-ssl, jmx) chances are that they all will need additional configuration values.

Question is: how to organize them?

Every driver into one file:
  <root-database...
  <drivers>
     <driver name="xmlrpc">
        ...
     </driver>
     <driver name="xmlrpc-ssl">
        ...
     </driver>
  </drivers>

or one file per driver:

xmlrcp-system.xml

  <root-database...
  <prop1...
  <prop2...

What would you prefer?

-Vladimir

--
Vladimir R. Bossicard
Apache Xindice - http://xml.apache.org/xindice




Reply via email to