geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kristian Köhler <Kristian.Koeh...@gmx.de>
Subject Re: [PATCH] XDoclet / JMXDoclet based MBean interface generation added to core module
Date Sat, 16 Aug 2003 07:56:29 GMT
Hi

Jeremy Boynes wrote:

>A couple of questions first...
>
>1) Do we want to introduce XDoclet into the build at this time?
>
I think it's never too early to introduce XDoclet ;-) .

OK. The introduction of XDoclet adds new complexity to the build process 
but in my opinion it's much better than do all the work twice.

Even in this early stage of the project there are many places where 
XDoclet is useful and i think there will be more and more in the future.

I think by including XDoclet later on you only delete work which you 
never had done if you included it earlier. ;-)

Kristian
<http://dict.leo.org/?p=lURE.&search=eliminated>

>
>2) Do we want to do this for these MBeans as they are likely to
>   change to ModelMBeans soon (Dain)?
>
>--
>Jeremy
>
>  
>
>>-----Original Message-----
>>From: Kristian Köhler [mailto:Kristian.Koehler@gmx.de]
>>Sent: Friday, August 15, 2003 2:26 PM
>>To: geronimo-dev@incubator.apache.org
>>Subject: [PATCH] XDoclet / JMXDoclet based MBean interface generation
>>added to core module
>>
>>
>>Hi,
>>
>>we extended the build process of the core module by including XDoclet /
>>JMXDoclet based MBean interface generation. Using JMXDoclet all MBean
>>interfaces can be created automatically based on meta information in the
>>implementing classes hence avoiding tedious copy/paste duplication.
>>
>>To do so we included the xdoclet plugin for maven as outlined in the
>>xdoclet documentation (see
>>http://xdoclet.sourceforge.net/maven-plugin.html), adjusted the build
>>files for the core module accordingly, added meta information to all
>>mbean implementors and removed the respective interfaces (which are now
>>created when building via maven).
>>
>>Here is how to make use of the functionality for a simple example (patch
>>includes all changes of course :-)):
>>
>>/**
>>  * @jmx.mbean
>> */
>>public class ClassSpace extends URLClassLoader implements
>>ClassSpaceMBean {
>>    public ClassSpace(URL[] urls) {
>>        super(urls);
>>    }
>>
>>    /**
>>     * @jmx.managed-operation
>>     * @jmx.managed-parameter type="List" name="urls"
>>     */
>>    public void addURLs(List urls) {
>>        for (Iterator i = urls.iterator(); i.hasNext();) {
>>            URL url = (URL) i.next();
>>            addURL(url);
>>        }
>>    }
>>}
>>
>>Besides applying the patch, the following classes have to be removed:
>>
>>org.apache.geronimo.deployment.DeploymentControllerMBean.java
>>org.apache.geronimo.deployment.DeploymentInfoMBean.java
>>org.apache.geronimo.deployment.loader.ClassSpaceMBean.java
>>org.apache.geronimo.deployment.repository.ComponentRepositoryMBean.java
>>org.apache.geronimo.deployment.scanner.DeploymentScannerMBean.java
>>org.apache.geronimo.deployment.service.ServiceDeploymentMBean.java
>>org.apache.geronimo.deployment.service.ServiceDeploymentPlannerMBean.java
>>org.apache.geronimo.jmx.RelationshipMBean.java
>>
>>We hope someone will apply this patch,
>>
>>cheers,
>>
>>Steffen Schluff and Kristian Köhler
>>
>>
>>    
>>
>
>
>  
>



Mime
View raw message