I have begun doing some prerequisite work that gets us closer to being able to do CiDIT however I am noticing that there are some serious worries about CiDIT in general. I will not begin work on the CiDIT but will continue to remove functional objects from configuration beans which is good in general. Then I will stop and try to consolidate all these concerns and all the new emerging ideas to evaluate better how to best manage this.
However let me describe what I am doing and all the reasons why. First of all the Configuration beans like InterceptorConfiguration and PartitionConfiguration have handles on core module classes like Interceptor and Partition. These dependencies make it hard to separate the configuration classes into their own module which we would like to do to begin breaking apart the massive core into discrete modules with their own packages. This is the first step we need to take before we separate out the JNDI implementation from the core as well. The coupling is high and it is resulting in rather nasty workarounds. So my initial refactoring goal is to break apart the configuration from the core into it's own module if at all possible and remove dependencies it has on core packages outside of the configuration package. This is not really required to do CiDIT but it helps keep things simpler without adding more meaning to the configuration stored in the DIT than just what is there while reading it. Basically there is no need for post processing; all that needs to happen is the data is read from the DIT into these beans and that's all. But this we can figure out later when trying to understand just how best to do CiDIT. For now these refactoring changes will just change the structure of the server.xml file and they will clean up some things in the server making it possible for us to continue refactoring the server to reduce coupling and increase coherence in the maven module breakdown of the server. Once this is done I'd like to take a step back and really confront all the CiDIT concerns and look into the ideas proposed by Chris and Ersin as well as the advice we've gotten from various users. Alex
