geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dain Sundstrom <d...@iq80.com>
Subject Re: Sample plan bits for configId branch, please review!
Date Wed, 15 Feb 2006 01:08:56 GMT
Note version number elements will be optional.  I will post a  
description of the resolution strategy for version numbers after I  
get  a bit of the code working. You just never know until you code  
something :)

-dain

On Feb 14, 2006, at 5:03 PM, David Jencks wrote:

> We need some widespread thought about the new xml schema we're  
> getting in 1.1.   Dain and I are not particularly thrilled with the  
> element names but haven't thought of improvements.  We also thought  
> of an alternate way of presenting the info and would like opinions  
> on which is better.
>
> The schema currently in svn in the configid branch results in plans  
> that start like this:
>
> <configuration xmlns="http://geronimo.apache.org/xml/ns/ 
> deployment-1.1">
>   <environment>
>     <configId>
>       <groupId>geronimo</groupId>
>       <type>car</type>
>       <artifactId>geronimo-gbean-deployer</artifactId>
>       <version>1.0.1-SNAPSHOT</version>
>     </configId>
> <!-- name-key elements are very unlikely to be used by anything  
> except "root" system plans
> such as j2ee-system.  Included here only to show what they look  
> like -->
>     <name-key>
>       <key>domain</key>
>       <value>geronimo.maven</value>
>     </name-key>
>     <name-key>
>       <key>J2EEServer</key>
>       <value>geronimo</value>
>     </name-key>
>     <classloader>
>       <import>
>         <groupId>geronimo</groupId>
>         <type>car</type>
>         <artifactId>geronimo-system</artifactId>
>         <version>1.0.1-SNAPSHOT</version>
>       </import>
>       <dependency>
>         <groupId>geronimo</groupId>
>         <artifactId>geronimo-common</artifactId>
>         <version>1.0.1-SNAPSHOT</version>
>       </dependency>
>       <include>
>         <groupId>geronimo</groupId>
>         <artifactId>geronimo-deployment</artifactId>
>         <version>1.0.1-SNAPSHOT</version>
>       </include>
>     </classloader>
> <!--reference is a new element, the meaning is that the  
> configuration must be loaded and started before this one, but the  
> classloader of the config is not a parent -->
>     <reference>
>       <groupId>geronimo</groupId>
>       <type>car</type>
>       <artifactId>geronimo-j2ee</artifactId>
>       <version>1.0.1-SNAPSHOT</version>
>     </reference>
>   </environment>
>   <!--Deployer used to process modules and plans-->
>   <gbean name="Deployer"  
> class="org.apache.geronimo.deployment.Deployer">
>
>
> An alternate layout is more similar to m2 with the idea of  
> different functions for a dependency shown by a "scope" element.   
> Scope doesn't seem like the right element name for us. (sorry about  
> the lousy indenting)
>
> <configuration xmlns="http://geronimo.apache.org/xml/ns/ 
> deployment-1.1">
>   <environment>
>     <configId>
>       <groupId>geronimo</groupId>
>       <type>car</type>
>       <artifactId>geronimo-gbean-deployer</artifactId>
>       <version>1.0.1-SNAPSHOT</version>
>     </configId>
> <!-- name-key elements are very unlikely to be used by anything  
> except "root" system plans
> such as j2ee-system.  Included here only to show what they look  
> like -->
>     <name-key>
>       <key>domain</key>
>       <value>geronimo.maven</value>
>     </name-key>
>     <name-key>
>       <key>J2EEServer</key>
>       <value>geronimo</value>
>     </name-key>
>       < dependency>
>         <groupId>geronimo</groupId>
>         <type>car</type>
>         <artifactId>geronimo-system</artifactId>
>         <version>1.0.1-SNAPSHOT</version>
>         <scope>full</scope>
>       </dependency>
>       <dependency>
>         <groupId>geronimo</groupId>
>         <artifactId>geronimo-common</artifactId>
>         <version>1.0.1-SNAPSHOT</version>
>         <scope>class</scope>
>       </dependency>
>       < dependency>
>         <groupId>geronimo</groupId>
>         <artifactId>geronimo-deployment</artifactId>
>         <version>1.0.1-SNAPSHOT</version>
>         <scope>include</scope>
>       </dependency>
>     < dependency>
>       <groupId>geronimo</groupId>
>       <type>car</type>
>       <artifactId>geronimo-j2ee</artifactId>
>       <version>1.0.1-SNAPSHOT</version>
>       <scope>service</scope>
>    </dependency>
>   </environment>
>   <!--Deployer used to process modules and plans-->
>   <gbean name="Deployer"  
> class="org.apache.geronimo.deployment.Deployer">
>
> Here, the scopes have meaning as follows:
>
> both -- both classes and services (gbeans), like import
> classes -- only classes, if a car don't start the gbeans for us,  
> like dependency
> services -- only gbeans, don't add classes to our classpath, like  
> reference (new element shown in first example)
> include -- copy the artifact into the current configuration.  This  
> seems like a separate dimension not related to the previous scopes.
>
> Again, please study these and comment.
>
> Many thanks
> david jencks
>


Mime
View raw message