commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Carman" <>
Subject RE: [PROPOSAL] Commons Proxy
Date Wed, 24 Aug 2005 22:47:32 GMT
So, what's the procedure here?  I haven't heard anything back on this
proposal from anyone?  Do I have to in order for this code to remain in the

-----Original Message-----
From: James Carman [] 
Sent: Sunday, August 21, 2005 10:30 PM
To: 'Jakarta Commons Developers List'
Subject: [PROPOSAL] Commons Proxy

Proposal for Commons Proxy


(0) rationale


Many projects require the use of proxies in order to support such features
as method interception/decoration, lazy

loading, dependency injection, etc.  There are many different techniques for
creating proxy objects which delegate to

other objects (JDK proxies, CGLIB, and Javassist to name a few).  Using
these technologies can prove to be quite



(1) scope of the package


The package shall create and maintain a suite of utility classes for
creating proxy objects written in the Java language

to be distributed under the ASF license.  The package will include many
different "object provider" implementations.

The package will also serve as a repository for many useful
MethodInterceptor (AOP Alliance API) implementations.  The

package will provide multiple "proxy factory" implementations, supporting
different proxying technologies (JDK proxies,

CGLIB, Javassist).


(1.5) interaction with other packages


The package relies on some JDK5-specific features, such as generics and
read/write locks (java.util.concurrent.locks

package).  It utilizes the JUnit unit testing framework for developing and
executing unit tests, but this is of interest

only to developers of the component.  The original will include support for
the Hessian and Burlap remoting protocols.

The original codebase will also include support for CGLIB and Javassist-base
proxies.  Method interception will be done

using the AOP Alliance API.


(2) identify the initial source for the package


The initial codebase will be contributed by James Carman based on code in
the Syringe (

project and can be distributed under the Apache license.


(2.1) identify the base name for the package




(2.2) identify the coding conventions for this package


The code uses the conventions from the Jakarta Turbine package.


(3) identify any Jakarta-Commons resources to be created


(3.1) mailing list


Discussions will take place on the general
mailing list.  To

help list subscribers identify messages of interest, it is suggested that
the message subject

of messages about this component be prefixed with "[proxy]".


(3.2) SVN repositories


A new directory "proxy" will be needed in the jakarta-commons SVN


(3.3) Bugzilla


A new component "proxy" under the "Commons" product category, with
appropriate version

identifiers as needed.


(4) identify the initial set of committers to be listed in the Status File.


James Carman

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message