Hello all, First, some background info. The Lokahi project is a currently incubating project that is a management application currently for httpd and tomcat. Currently the data store is ~50 tables. I'd like to move this to a JCR model. There are 21 tables worth of objects that I am primerialy concerned about. The framework allows for expansion with other application servers than the two currently supported. A good overview of the data model is here: http://incubator.apache.org/lokahi/howitworks.html
Each module has a similar data structure, to use tomcat as an example: Entity - Pool - worker - server Context - tomcat pool - tomcatworker (jvm) - tomcat This allows templating of actual application servers, and manipulation of multiple application servers at the same time. The problem I am having is how to arrange the tree. Some basics of the core objects: Project - collection of module's entities. Environment - a user defined tag. Instance - A tag that the application uses to assign hardware to a controller. Hardware - only object that has both the instance and environment tags. Jobpool - an individual change of the system - for example if I add a new server - or manipulate a config a jobpool is created. The plan is to link a jobpool directly to a revision within JCR. Job - individual task that Lokahi needs to perform to accomplish the user requested change. Module Entity - individual configuration unit - tagged by environment, must be contained in at least one project. Module pool - collection of module workers - tagged by environment Module worker - individual application server can belong to multiple pools- tagged by environment Module server - template for application servers There's the typical user & permissions - however that's easier to bring into a defined tree model. Here's my thoughts so far: /lokahi /lokahi/projects /lokahi/users /lokahi/hardware /lokahi/tomcat/pools /lokahi/tomcat/workers /lokahi/tomcat/servers /lokahi/tomcat/entites Thoughts / Suggestions are greatly appreciated. Thanks, Steve
