You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by jc...@apache.org on 2005/08/23 06:17:20 UTC
svn commit: r239334 - /jakarta/commons/sandbox/proxy/trunk/PROPOSAL.html
Author: jcarman
Date: Mon Aug 22 21:17:18 2005
New Revision: 239334
URL: http://svn.apache.org/viewcvs?rev=239334&view=rev
Log:
Adding proposal document
Added:
jakarta/commons/sandbox/proxy/trunk/PROPOSAL.html
Added: jakarta/commons/sandbox/proxy/trunk/PROPOSAL.html
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/PROPOSAL.html?rev=239334&view=auto
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/PROPOSAL.html (added)
+++ jakarta/commons/sandbox/proxy/trunk/PROPOSAL.html Mon Aug 22 21:17:18 2005
@@ -0,0 +1,96 @@
+<!--
+ Copyright 2001-2004 The Apache Software Foundation
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+<html>
+<head>
+ <title>Proposal for Proxy Package</title>
+</head>
+
+<body bgcolor="white">
+
+<div align="center">
+ <h1>Proposal for <em>Proxy</em> Package</h1>
+</div>
+
+<h3>(0) Rationale</h3>
+
+<p>
+ 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
+ daunting. This package seeks to abstract away the difficult code required to implement proxies effectively and
+ efficiently so that developers can concentrate on implementing the core implementations and method interceptors.
+</p>
+
+<h3>(1) Scope of the Package</h3>
+
+<p>
+ 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).
+</p>
+
+<h3>(1.5) Interaction With Other Packages</h3>
+
+<p>
+ <em>Proxy</em> 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.
+</p>
+
+<p>No external configuration files are utilized.</p>
+
+<h3>(2) Initial Source of the Package</h3>
+
+<p>
+ The initial codebase will be contributed by James Carman based on code in the Syringe (http://syringe.dev.java.net)
+ project and can be distributed under the Apache license.
+</p>
+
+<p>The proposed package name for the new component is
+ <code>org.apache.commons.proxy</code>.</p>
+
+
+<h3>(3) Required Jakarta-Commons Resources</h3>
+
+<ul>
+ <li>SVN Repository - New directory <code>proxy</code> in the
+ <code>jakarta-commons</code> SVN repository. All initial committers
+ are already committers on <code>jakarta-commons</code>, so no
+ additional user setups are required.</li>
+ <li>Mailing List - Discussions will take place on the general
+ <em>jakarta-commons@jakarta.apache.org</em> 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].</li>
+ <li>Bugzilla - New component "Proxy" under the "Commons" product
+ category, with appropriate version identifiers as needed.</li>
+ <li>Jyve FAQ - New category "commons-proxy" (when available). </li>
+</ul>
+
+
+<h3>(4) Initial Committers</h3>
+<ul>
+ <li>James Carman</li>
+</ul>
+</body>
+</html>
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org