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/30 18:09:09 UTC
svn commit: r264802 [1/2] - in /jakarta/commons/sandbox/proxy/trunk: ./
src/java/org/apache/commons/proxy/
src/java/org/apache/commons/proxy/exception/
src/java/org/apache/commons/proxy/factory/
src/java/org/apache/commons/proxy/factory/cglib/ src/java...
Author: jcarman
Date: Tue Aug 30 09:08:46 2005
New Revision: 264802
URL: http://svn.apache.org/viewcvs?rev=264802&view=rev
Log:
- Removed type parameters from delegate providers.
- Renamed ObjectProvider to DelegateProvider.
- Renamed methods on ProxyFactory.
- Checkstyle
- Improvied project home page
Added:
jakarta/commons/sandbox/proxy/trunk/checkstyle.xml (with props)
jakarta/commons/sandbox/proxy/trunk/file-header.txt
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/DelegateProvider.java (contents, props changed)
- copied, changed from r240386, jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ObjectProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/DelegateProviderException.java (contents, props changed)
- copied, changed from r240386, jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ObjectProviderException.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/DelegateProviderInvocationHandler.java (contents, props changed)
- copied, changed from r240386, jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ObjectProviderInvocationHandler.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/AbstractDelegateProvider.java (contents, props changed)
- copied, changed from r240386, jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/AbstractObjectProvider.java
jakarta/commons/sandbox/proxy/trunk/xdocs/
jakarta/commons/sandbox/proxy/trunk/xdocs/index.xml (with props)
Removed:
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ObjectProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ObjectProviderException.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ObjectProviderInvocationHandler.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/AbstractObjectProvider.java
Modified:
jakarta/commons/sandbox/proxy/trunk/commons-proxy.ipr
jakarta/commons/sandbox/proxy/trunk/project.properties
jakarta/commons/sandbox/proxy/trunk/project.xml
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ProxyFactory.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ProxyFactoryException.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/AbstractProxyFactory.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/cglib/CglibProxyFactory.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/javassist/JavassistProxyFactory.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/AbstractInvocationHandler.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/DelegatingInvocationHandler.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/MethodInterceptorInvocationHandler.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ReflectionMethodInvocation.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ReflectionProxyFactory.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/FilteredMethodInterceptor.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/MethodFilter.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/MethodInterceptorChain.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/filter/PatternMethodFilter.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/filter/SimpleMethodFilter.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/BeanProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/BurlapProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/CachedProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/ConstantProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/HessianProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/JaxRpcProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/NullProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/PooledProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/ProviderDecorator.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/ProviderUtils.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/RmiProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/SingletonProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/SynchronizedProvider.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/cache/AbstractCache.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/cache/Cache.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/cache/CacheEvictionEvent.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/cache/CacheEvictionListener.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/cache/CachedObject.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/cache/SimpleCache.java
jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/cache/ThreadLocalCache.java
jakarta/commons/sandbox/proxy/trunk/src/test/org/apache/commons/proxy/factory/AbstractProxyFactoryTestCase.java
jakarta/commons/sandbox/proxy/trunk/src/test/org/apache/commons/proxy/interceptor/TestFilteredMethodInterceptor.java
jakarta/commons/sandbox/proxy/trunk/src/test/org/apache/commons/proxy/interceptor/TestMethodInterceptorChain.java
jakarta/commons/sandbox/proxy/trunk/src/test/org/apache/commons/proxy/provider/CountingProvider.java
jakarta/commons/sandbox/proxy/trunk/src/test/org/apache/commons/proxy/provider/TestBeanProvider.java
jakarta/commons/sandbox/proxy/trunk/src/test/org/apache/commons/proxy/provider/TestCachedProvider.java
jakarta/commons/sandbox/proxy/trunk/src/test/org/apache/commons/proxy/provider/TestConstantProvider.java
jakarta/commons/sandbox/proxy/trunk/src/test/org/apache/commons/proxy/provider/TestJaxRpcProvider.java
jakarta/commons/sandbox/proxy/trunk/src/test/org/apache/commons/proxy/provider/TestNullProvider.java
jakarta/commons/sandbox/proxy/trunk/src/test/org/apache/commons/proxy/provider/TestPooledProvider.java
jakarta/commons/sandbox/proxy/trunk/src/test/org/apache/commons/proxy/provider/TestRmiProvider.java
Added: jakarta/commons/sandbox/proxy/trunk/checkstyle.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/checkstyle.xml?rev=264802&view=auto
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/checkstyle.xml (added)
+++ jakarta/commons/sandbox/proxy/trunk/checkstyle.xml Tue Aug 30 09:08:46 2005
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+ Copyright 2005 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.
+-->
+
+<!DOCTYPE module PUBLIC
+ "-//Puppy Crawl//DTD Check Configuration 1.1//EN"
+ "http://www.puppycrawl.com/dtds/configuration_1_1.dtd">
+
+<!-- commons digester customization of default Checkstyle behavior -->
+<module name="Checker">
+ <property name="localeLanguage" value="en"/>
+
+ <module name="TreeWalker">
+ <!-- Verify that EVERY source file has the appropriate license -->
+ <module name="Header">
+ <property name="headerFile" value="file-header.txt"/>
+ <property name="ignoreLines" value="1,3"/>
+ </module>
+
+ <!-- no tabs allowed in files -->
+ <module name="TabCharacter"/>
+
+ <!-- check sane import statements -->
+ <module name="AvoidStarImport"/>
+ <module name="RedundantImport"/>
+ <module name="UnusedImports"/>
+
+ <module name="LineLength">
+ <property name="max" value="120"/>
+ </module>
+ </module>
+</module>
\ No newline at end of file
Propchange: jakarta/commons/sandbox/proxy/trunk/checkstyle.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: jakarta/commons/sandbox/proxy/trunk/checkstyle.xml
------------------------------------------------------------------------------
svn:keywords = Id
Modified: jakarta/commons/sandbox/proxy/trunk/commons-proxy.ipr
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/commons-proxy.ipr?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/commons-proxy.ipr (original)
+++ jakarta/commons/sandbox/proxy/trunk/commons-proxy.ipr Tue Aug 30 09:08:46 2005
@@ -200,7 +200,7 @@
<option name="ADDITIONAL_OPTIONS_STRING" value="" />
</component>
<component name="copyright">
- <option name="body" value="/* * Copyright $today.year 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. */" />
+ <option name="body" value="/* $Id$ * * Copyright $today.year 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. */" />
<option name="location" value="1" />
<option name="remove" value="true" />
<option name="replace" value="2" />
Added: jakarta/commons/sandbox/proxy/trunk/file-header.txt
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/file-header.txt?rev=264802&view=auto
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/file-header.txt (added)
+++ jakarta/commons/sandbox/proxy/trunk/file-header.txt Tue Aug 30 09:08:46 2005
@@ -0,0 +1,16 @@
+/* $Id$
+ *
+ * Copyright 2005 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.
+ */
\ No newline at end of file
Modified: jakarta/commons/sandbox/proxy/trunk/project.properties
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/project.properties?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/project.properties (original)
+++ jakarta/commons/sandbox/proxy/trunk/project.properties Tue Aug 30 09:08:46 2005
@@ -85,7 +85,7 @@
######################################################################
# Checkstyle
######################################################################
-#maven.checkstyle.properties=${basedir}/checkstyle.xml
+maven.checkstyle.properties=${basedir}/checkstyle.xml
Modified: jakarta/commons/sandbox/proxy/trunk/project.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/project.xml?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/project.xml (original)
+++ jakarta/commons/sandbox/proxy/trunk/project.xml Tue Aug 30 09:08:46 2005
@@ -1,4 +1,19 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+ Copyright 2005 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.
+-->
<!-- $Id: project.xml$ -->
<project>
<pomVersion>3</pomVersion>
@@ -19,29 +34,11 @@
<issueTrackingUrl>http://issues.apache.org/bugzilla</issueTrackingUrl>
<siteAddress>cvs.apache.org</siteAddress>
<siteDirectory>/www/jakarta.apache.org/commons/sandbox/proxy/</siteDirectory>
- <description><![CDATA[
- <p>
- Commons proxy is a java library for creating dynamic proxies.
- </p>
- <section name="Features">
- <p>
- Commons-proxy comes with the follwing features
- <ul>
- <li>simple and easy to use API</li>
- <li>based on AOP Alliance</li>
- <li>implementations using java.reflect.Proxy,cglib and javassist</li>
- <li>really fast</li>
- </ul>
- </p>
- </section>
- ]]></description>
-
<repository>
-
<connection>scm:svn:http://svn.apache.org:repos/asf/jakarta/commons/sandbox/proxy:trunk</connection>
-
- <developerConnection>scm:svn:https://svn.apache.org:repos/asf/jakarta/commons/sandbox/proxy:trunk</developerConnection>
-
+ <developerConnection>
+ scm:svn:https://svn.apache.org:repos/asf/jakarta/commons/sandbox/proxy:trunk
+ </developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/jakarta/commons/sandbox/proxy/trunk/</url>
</repository>
@@ -239,7 +236,7 @@
</dependencies>
<build>
- <nagEmailAddress>james@carmanconsulting.com</nagEmailAddress>
+ <nagEmailAddress>jcarman@apache.org</nagEmailAddress>
<sourceDirectory>${basedir}/src/java</sourceDirectory>
<unitTestSourceDirectory>${basedir}/src/test</unitTestSourceDirectory>
<integrationUnitTestSourceDirectory/>
Copied: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/DelegateProvider.java (from r240386, jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ObjectProvider.java)
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/DelegateProvider.java?p2=jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/DelegateProvider.java&p1=jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ObjectProvider.java&r1=240386&r2=264802&rev=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ObjectProvider.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/DelegateProvider.java Tue Aug 30 09:08:46 2005
@@ -1,32 +1,35 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy;
/**
- * Provides an object.
+ * Provides an object to a delegating proxy.
*
* @author James Carman
* @version 1.0
*/
-public interface ObjectProvider<T>
+public interface DelegateProvider
{
/**
- * Returns an object. Implementing classes should throw a {@link org.apache.commons.proxy.exception.ObjectProviderException ObjectProviderException} if
- * any problems arise while constructing/finding the object.
- * @return an object
+ * Returns an object. Implementing classes should throw a
+ * {@link org.apache.commons.proxy.exception.DelegateProviderException} if any problems arise while
+ * constructing/finding the object.
+ *
+ * @return the object on which the method should be called
*/
- public T getObject();
+ public Object getDelegate();
}
Propchange: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/DelegateProvider.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ProxyFactory.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ProxyFactory.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ProxyFactory.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ProxyFactory.java Tue Aug 30 09:08:46 2005
@@ -1,26 +1,27 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy;
import org.aopalliance.intercept.MethodInterceptor;
/**
- * A <code>ProxyFactory</code> essentially encapsulates a "proxying strategy." All <code>commons-proxy</code> proxies are created using
- * a <code>ProxyFactory</code>. So, to change the proxying strategy, simply provide a different <code>ProxyFactory</code>
- * implementation.
+ * A <code>ProxyFactory</code> essentially encapsulates a "proxying strategy." All <code>commons-proxy</code> proxies
+ * are created using a <code>ProxyFactory</code>. So, to change the proxying strategy, simply provide a different
+ * <code>ProxyFactory</code> implementation.
*
* @author James Carman
* @version 1.0
@@ -28,51 +29,49 @@
public interface ProxyFactory
{
/**
- * Creates a proxy which passes through a {@link org.aopalliance.intercept.MethodInterceptor method interceptor} before
- * eventually reaching the <code>target</code> object.
+ * Creates a proxy which passes through a {@link org.aopalliance.intercept.MethodInterceptor method interceptor}
+ * before eventually reaching the <code>target</code> object.
*
* @param classLoader the class loader to use when generating the proxy
* @param target the target object
* @param interceptor the method interceptor
* @param proxyInterfaces the interfaces that the proxy should implement.
- * @return a proxy which passes through a {@link org.aopalliance.intercept.MethodInterceptor method interceptor} before
- * eventually reaching the <code>target</code> object.
+ * @return a proxy which passes through a {@link org.aopalliance.intercept.MethodInterceptor method interceptor}
+ * before eventually reaching the <code>target</code> object.
*/
- public Object createInterceptorProxy( ClassLoader classLoader, Object target, MethodInterceptor interceptor, Class... proxyInterfaces );
+ public Object createInterceptingProxy( ClassLoader classLoader, Object target, MethodInterceptor interceptor,
+ Class... proxyInterfaces );
/**
- * Creates a proxy which passes through a {@link MethodInterceptor method interceptor} before
- * eventually reaching the <code>target</code> object. The proxy will be generated using the
- * current thread's "context class loader."
+ * Creates a proxy which passes through a {@link MethodInterceptor method interceptor} before eventually reaching
+ * the <code>target</code> object. The proxy will be generated using the current thread's "context class loader."
*
* @param target the target object
* @param interceptor the method interceptor
* @param proxyInterfaces the interfaces that the proxy should implement
- * @return a proxy which passes through a {@link MethodInterceptor method interceptor} before
- * eventually reaching the <code>target</code> object.
+ * @return a proxy which passes through a {@link MethodInterceptor method interceptor} before eventually reaching
+ * the <code>target</code> object.
*/
- public Object createInterceptorProxy( Object target, MethodInterceptor interceptor, Class... proxyInterfaces );
+ public Object createInterceptingProxy( Object target, MethodInterceptor interceptor, Class... proxyInterfaces );
/**
- * Creates a proxy which delegates to the object provided by the target
- * object provider. The proxy will be generated using the current thread's "context class loader."
+ * Creates a proxy which delegates to the object provided by the delegate provider. The proxy will be
+ * generated using the current thread's "context class loader."
*
- * @param targetProvider the target object provider
+ * @param delegateProvider the delegate provider
* @param proxyInterfaces the interfaces that the proxy should implement
- * @return a proxy which delegates to the object provided by the target
- * object provider
+ * @return a proxy which delegates to the object provided by the target object provider
*/
- public Object createProxy( ObjectProvider targetProvider, Class... proxyInterfaces );
+ public Object createDelegatingProxy( DelegateProvider delegateProvider, Class... proxyInterfaces );
/**
- * Creates a proxy which delegates to the object provided by the target
- * object provider.
+ * Creates a proxy which delegates to the object provided by <code>delegateProvider</code>.
*
* @param classLoader the class loader to use when generating the proxy
- * @param targetProvider the target object provider
+ * @param delegateProvider the delegate provider
* @param proxyInterfaces the interfaces that the proxy should implement
- * @return a proxy which delegates to the object provided by the target
- * object provider
+ * @return a proxy which delegates to the object provided by the target <code>delegateProvider>
*/
- public Object createProxy( ClassLoader classLoader, ObjectProvider targetProvider, Class... proxyInterfaces );
+ public Object createDelegatingProxy( ClassLoader classLoader, DelegateProvider delegateProvider,
+ Class... proxyInterfaces );
}
Copied: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/DelegateProviderException.java (from r240386, jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ObjectProviderException.java)
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/DelegateProviderException.java?p2=jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/DelegateProviderException.java&p1=jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ObjectProviderException.java&r1=240386&r2=264802&rev=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ObjectProviderException.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/DelegateProviderException.java Tue Aug 30 09:08:46 2005
@@ -1,44 +1,45 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.exception;
/**
- * <code>ObjectProvider</code> implementations should throw this exception type
- * to indicate that there was a problem creating/finding the object.
- *
+ * {@link org.apache.commons.proxy.DelegateProvider} implementations should throw this exception type to indicate that
+ * there was a problem creating/finding the object.
+ *
* @author James Carman
* @version 1.0
*/
-public class ObjectProviderException extends RuntimeException
+public class DelegateProviderException extends RuntimeException
{
- public ObjectProviderException()
+ public DelegateProviderException()
{
}
- public ObjectProviderException( String message )
+ public DelegateProviderException( String message )
{
super( message );
}
- public ObjectProviderException( String message, Throwable cause )
+ public DelegateProviderException( String message, Throwable cause )
{
super( message, cause );
}
- public ObjectProviderException( Throwable cause )
+ public DelegateProviderException( Throwable cause )
{
super( cause );
}
Propchange: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/DelegateProviderException.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ProxyFactoryException.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ProxyFactoryException.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ProxyFactoryException.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ProxyFactoryException.java Tue Aug 30 09:08:46 2005
@@ -1,24 +1,25 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.exception;
/**
- * A runtime exception type to be used by {@link org.apache.commons.proxy.ProxyFactory proxy factories} when a
- * problem occurs.
- *
+ * A runtime exception type to be used by {@link org.apache.commons.proxy.ProxyFactory proxy factories} when a problem
+ * occurs.
+ *
* @author James Carman
* @version 1.0
*/
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/AbstractProxyFactory.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/AbstractProxyFactory.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/AbstractProxyFactory.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/AbstractProxyFactory.java Tue Aug 30 09:08:46 2005
@@ -1,28 +1,30 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.factory;
import org.aopalliance.intercept.MethodInterceptor;
-import org.apache.commons.proxy.ProxyFactory;
-import org.apache.commons.proxy.ObjectProvider;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.apache.commons.proxy.DelegateProvider;
+import org.apache.commons.proxy.ProxyFactory;
/**
* A helpful superclass for {@link org.apache.commons.proxy.ProxyFactory} implementations.
+ *
* @author James Carman
* @version 1.0
*/
@@ -39,14 +41,15 @@
{
this.log = log;
}
-
- public Object createInterceptorProxy( Object target, MethodInterceptor interceptor, Class... proxyInterfaces )
+
+ public Object createInterceptingProxy( Object target, MethodInterceptor interceptor, Class... proxyInterfaces )
{
- return createInterceptorProxy( Thread.currentThread().getContextClassLoader(), target, interceptor, proxyInterfaces );
+ return createInterceptingProxy( Thread.currentThread().getContextClassLoader(), target, interceptor,
+ proxyInterfaces );
}
- public Object createProxy( ObjectProvider targetProvider, Class... proxyInterfaces )
+ public Object createDelegatingProxy( DelegateProvider targetProvider, Class... proxyInterfaces )
{
- return createProxy( Thread.currentThread().getContextClassLoader(), targetProvider, proxyInterfaces );
+ return createDelegatingProxy( Thread.currentThread().getContextClassLoader(), targetProvider, proxyInterfaces );
}
}
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/cglib/CglibProxyFactory.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/cglib/CglibProxyFactory.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/cglib/CglibProxyFactory.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/cglib/CglibProxyFactory.java Tue Aug 30 09:08:46 2005
@@ -1,17 +1,18 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.factory.cglib;
@@ -20,7 +21,7 @@
import net.sf.cglib.proxy.MethodProxy;
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
-import org.apache.commons.proxy.ObjectProvider;
+import org.apache.commons.proxy.DelegateProvider;
import org.apache.commons.proxy.factory.AbstractProxyFactory;
import java.lang.reflect.AccessibleObject;
@@ -29,13 +30,14 @@
/**
* A <a href="http://cglib.sourceforge.net/">CGLIB</a>-based {@link org.apache.commons.proxy.ProxyFactory}
* implementation.
- *
+ *
* @author James Carman
* @version 1.0
*/
public class CglibProxyFactory extends AbstractProxyFactory
{
- public Object createInterceptorProxy( ClassLoader classLoader, Object target, MethodInterceptor interceptor, Class... proxyInterfaces )
+ public Object createInterceptingProxy( ClassLoader classLoader, Object target, MethodInterceptor interceptor,
+ Class... proxyInterfaces )
{
final Enhancer enhancer = new Enhancer();
enhancer.setClassLoader( classLoader );
@@ -44,12 +46,13 @@
return enhancer.create();
}
- public Object createProxy( ClassLoader classLoader, ObjectProvider targetProvider, Class... proxyInterfaces )
+ public Object createDelegatingProxy( ClassLoader classLoader, DelegateProvider targetProvider,
+ Class... proxyInterfaces )
{
final Enhancer enhancer = new Enhancer();
enhancer.setClassLoader( classLoader );
enhancer.setInterfaces( proxyInterfaces );
- enhancer.setCallback( new ObjectProviderDispatcher( targetProvider ) );
+ enhancer.setCallback( new DelegateProviderDispatcher( targetProvider ) );
return enhancer.create();
}
@@ -111,18 +114,18 @@
}
}
- private class ObjectProviderDispatcher implements Dispatcher
+ private class DelegateProviderDispatcher implements Dispatcher
{
- private final ObjectProvider objectProvider;
+ private final DelegateProvider delegateProvider;
- public ObjectProviderDispatcher( ObjectProvider objectProvider )
+ public DelegateProviderDispatcher( DelegateProvider delegateProvider )
{
- this.objectProvider = objectProvider;
+ this.delegateProvider = delegateProvider;
}
public Object loadObject()
{
- return objectProvider.getObject();
+ return delegateProvider.getDelegate();
}
}
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/javassist/JavassistProxyFactory.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/javassist/JavassistProxyFactory.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/javassist/JavassistProxyFactory.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/javassist/JavassistProxyFactory.java Tue Aug 30 09:08:46 2005
@@ -1,17 +1,18 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.factory.javassist;
@@ -24,8 +25,8 @@
import javassist.NotFoundException;
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
-import org.apache.commons.proxy.ObjectProvider;
-import org.apache.commons.proxy.exception.ObjectProviderException;
+import org.apache.commons.proxy.DelegateProvider;
+import org.apache.commons.proxy.exception.DelegateProviderException;
import org.apache.commons.proxy.exception.ProxyFactoryException;
import org.apache.commons.proxy.factory.AbstractProxyFactory;
@@ -52,18 +53,21 @@
}
catch( CannotCompileException e )
{
- throw new ProxyFactoryException( "Unable to add field named " + fieldName + " of type " + fieldType.getName() + " to class " + enclosingClass.getName(), e );
+ throw new ProxyFactoryException( "Unable to add field named " + fieldName + " of type " +
+ fieldType.getName() + " to class " + enclosingClass.getName(), e );
}
}
- public Object createInterceptorProxy( ClassLoader classLoader, Object target, MethodInterceptor interceptor, Class... proxyInterfaces )
+ public Object createInterceptingProxy( ClassLoader classLoader, Object target, MethodInterceptor interceptor,
+ Class... proxyInterfaces )
{
try
{
final CtClass proxyClass = createClass();
addField( target.getClass(), "target", proxyClass );
addField( MethodInterceptor.class, "interceptor", proxyClass );
- final CtConstructor proxyConstructor = new CtConstructor( resolve( new Class[]{target.getClass(), MethodInterceptor.class} ), proxyClass );
+ final CtConstructor proxyConstructor = new CtConstructor(
+ resolve( new Class[]{target.getClass(), MethodInterceptor.class} ), proxyClass );
proxyConstructor.setBody( "{ this.target = $1;\nthis.interceptor = $2; }" );
proxyClass.addConstructor( proxyConstructor );
for( Class proxyInterface : proxyInterfaces )
@@ -72,16 +76,20 @@
final Method[] methods = proxyInterface.getMethods();
for( int i = 0; i < methods.length; ++i )
{
- final CtMethod method = new CtMethod( resolve( methods[i].getReturnType() ), methods[i].getName(), resolve( methods[i].getParameterTypes() ), proxyClass );
- final Class invocationClass = createMethodInvocationClass( methods[i], target.getClass(), classLoader );
- final String body = "{\n\t return ( $r ) interceptor.invoke( new " + invocationClass.getName() + "( target, $$ ) );\n }";
+ final CtMethod method = new CtMethod( resolve( methods[i].getReturnType() ), methods[i].getName(),
+ resolve( methods[i].getParameterTypes() ), proxyClass );
+ final Class invocationClass = createMethodInvocationClass( methods[i], target.getClass(),
+ classLoader );
+ final String body = "{\n\t return ( $r ) interceptor.invoke( new " + invocationClass.getName() +
+ "( target, $$ ) );\n }";
log.debug( method.getName() + "() method body:\n" + body );
method.setBody( body );
proxyClass.addMethod( method );
}
}
final Class clazz = proxyClass.toClass( classLoader );
- return clazz.getConstructor( target.getClass(), MethodInterceptor.class ).newInstance( target, interceptor );
+ return clazz.getConstructor( target.getClass(), MethodInterceptor.class )
+ .newInstance( target, interceptor );
}
catch( CannotCompileException e )
{
@@ -138,7 +146,8 @@
constructor.setBody( constructorBody.toString() );
invocationClass.addConstructor( constructor );
// proceed()...
- final CtMethod proceedMethod = new CtMethod( resolve( Object.class ), "proceed", new CtClass[0], invocationClass );
+ final CtMethod proceedMethod = new CtMethod( resolve( Object.class ), "proceed", new CtClass[0],
+ invocationClass );
final String proceedBody = generateProceedBody( method, argumentTypes );
log.debug( "Proceed method body:\n" + proceedBody );
proceedMethod.setBody( proceedBody.toString() );
@@ -158,7 +167,8 @@
private void addGetMethodMethod( CtClass invocationClass, Class[] argumentTypes, Method method )
throws CannotCompileException
{
- final CtMethod getMethodMethod = new CtMethod( resolve( Method.class ), "getMethod", resolve( new Class[0] ), invocationClass );
+ final CtMethod getMethodMethod = new CtMethod( resolve( Method.class ), "getMethod", resolve( new Class[0] ),
+ invocationClass );
final StringBuffer getMethodBody = new StringBuffer();
getMethodBody.append( "{\n\tfinal Class[] parameterTypes = new Class[" );
getMethodBody.append( argumentTypes.length );
@@ -175,7 +185,8 @@
getMethodBody.append( method.getDeclaringClass().getName() );
getMethodBody.append( ".class.getMethod(\"" );
getMethodBody.append( method.getName() );
- getMethodBody.append( "\", parameterTypes );\n\t}\n\tcatch( NoSuchMethodException e )\n\t{\n\t\treturn null;\n\t}" );
+ getMethodBody
+ .append( "\", parameterTypes );\n\t}\n\tcatch( NoSuchMethodException e )\n\t{\n\t\treturn null;\n\t}" );
getMethodBody.append( "}" );
log.debug( "getMethod() body:\n" + getMethodBody.toString() );
getMethodMethod.setBody( getMethodBody.toString() );
@@ -184,7 +195,8 @@
private void addGetStaticPartMethod( CtClass invocationClass ) throws CannotCompileException
{
- final CtMethod getStaticPartMethod = new CtMethod( resolve( AccessibleObject.class ), "getStaticPart", resolve( new Class[0] ), invocationClass );
+ final CtMethod getStaticPartMethod = new CtMethod( resolve( AccessibleObject.class ), "getStaticPart",
+ resolve( new Class[0] ), invocationClass );
final String getStaticPartBody = "{\n\treturn getMethod();\n}";
log.debug( "getStaticPart() body:\n" + getStaticPartBody );
getStaticPartMethod.setBody( getStaticPartBody );
@@ -193,7 +205,8 @@
private void addGetThisMethod( CtClass invocationClass ) throws CannotCompileException
{
- final CtMethod getThisMethod = new CtMethod( resolve( Object.class ), "getThis", resolve( new Class[0] ), invocationClass );
+ final CtMethod getThisMethod = new CtMethod( resolve( Object.class ), "getThis", resolve( new Class[0] ),
+ invocationClass );
final String getThisMethodBody = "{\n\treturn target;\n}";
log.debug( "getThis() body:\n" + getThisMethodBody );
getThisMethod.setBody( getThisMethodBody );
@@ -202,7 +215,8 @@
private void addGetArgumentsMethod( CtClass invocationClass ) throws CannotCompileException
{
- final CtMethod method = new CtMethod( resolve( Object[].class ), "getArguments", resolve( new Class[0] ), invocationClass );
+ final CtMethod method = new CtMethod( resolve( Object[].class ), "getArguments", resolve( new Class[0] ),
+ invocationClass );
final String body = "{\n\treturn arguments;\n}";
log.debug( "getArguments() body:\n" + body );
method.setBody( body );
@@ -244,14 +258,16 @@
return proceedBody.toString();
}
- public Object createProxy( ClassLoader classLoader, ObjectProvider targetProvider, Class... proxyInterfaces )
+ public Object createDelegatingProxy( ClassLoader classLoader, DelegateProvider targetProvider,
+ Class... proxyInterfaces )
{
try
{
final CtClass proxyClass = createClass();
final CtField providerField = new CtField( resolve( targetProvider.getClass() ), "provider", proxyClass );
proxyClass.addField( providerField );
- final CtConstructor proxyConstructor = new CtConstructor( resolve( new Class[]{targetProvider.getClass()} ), proxyClass );
+ final CtConstructor proxyConstructor = new CtConstructor( resolve( new Class[]{targetProvider.getClass()} ),
+ proxyClass );
proxyConstructor.setBody( "{ this.provider = $1; }" );
proxyClass.addConstructor( proxyConstructor );
for( Class proxyInterface : proxyInterfaces )
@@ -260,8 +276,10 @@
final Method[] methods = proxyInterface.getMethods();
for( int i = 0; i < methods.length; ++i )
{
- final CtMethod method = new CtMethod( resolve( methods[i].getReturnType() ), methods[i].getName(), resolve( methods[i].getParameterTypes() ), proxyClass );
- method.setBody( "{ return ( $r ) ( ( " + proxyInterface.getName() + " )provider.getObject() )." + methods[i].getName() + "($$); }" );
+ final CtMethod method = new CtMethod( resolve( methods[i].getReturnType() ), methods[i].getName(),
+ resolve( methods[i].getParameterTypes() ), proxyClass );
+ method.setBody( "{ return ( $r ) ( ( " + proxyInterface.getName() + " )provider.getDelegate() )." +
+ methods[i].getName() + "($$); }" );
proxyClass.addMethod( method );
}
}
@@ -290,7 +308,8 @@
}
catch( NotFoundException e )
{
- throw new ObjectProviderException( "Unable to find class " + clazz.getName() + " in default Javassist class pool.", e );
+ throw new DelegateProviderException(
+ "Unable to find class " + clazz.getName() + " in default Javassist class pool.", e );
}
}
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/AbstractInvocationHandler.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/AbstractInvocationHandler.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/AbstractInvocationHandler.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/AbstractInvocationHandler.java Tue Aug 30 09:08:46 2005
@@ -1,17 +1,18 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.factory.reflect;
@@ -28,6 +29,7 @@
{
/**
* Creates a proxy object which implements the specified proxy interfaces.
+ *
* @param proxyInterfaces the proxy interfaces
* @return a proxy object which implements the specified proxy interfaces
*/
@@ -37,12 +39,11 @@
}
/**
- * Creates a proxy object which implements the specified proxy interfaces, using the
- * specified class loader.
- * @param classLoader the class loader
+ * Creates a proxy object which implements the specified proxy interfaces, using the specified class loader.
+ *
+ * @param classLoader the class loader
* @param proxyInterfaces the proxy interfaces
- * @return a proxy object which implements the specified proxy interfaces, using the
- * specified class loader.
+ * @return a proxy object which implements the specified proxy interfaces, using the specified class loader.
*/
public Object createProxy( ClassLoader classLoader, Class... proxyInterfaces )
{
Copied: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/DelegateProviderInvocationHandler.java (from r240386, jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ObjectProviderInvocationHandler.java)
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/DelegateProviderInvocationHandler.java?p2=jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/DelegateProviderInvocationHandler.java&p1=jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ObjectProviderInvocationHandler.java&r1=240386&r2=264802&rev=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ObjectProviderInvocationHandler.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/DelegateProviderInvocationHandler.java Tue Aug 30 09:08:46 2005
@@ -1,38 +1,40 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.factory.reflect;
-import org.apache.commons.proxy.ObjectProvider;
+import org.apache.commons.proxy.DelegateProvider;
/**
- * An invocation handler which delegates to an object supplied by an {@link ObjectProvider}.
+ * An invocation handler which delegates to an object supplied by an {@link DelegateProvider}.
+ *
* @author James Carman
* @version 1.0
*/
-public class ObjectProviderInvocationHandler extends DelegatingInvocationHandler
+public class DelegateProviderInvocationHandler extends DelegatingInvocationHandler
{
- private final ObjectProvider objectProvider;
+ private final DelegateProvider delegateProvider;
- public ObjectProviderInvocationHandler( ObjectProvider objectProvider )
+ public DelegateProviderInvocationHandler( DelegateProvider delegateProvider )
{
- this.objectProvider = objectProvider;
+ this.delegateProvider = delegateProvider;
}
protected Object getDelegate()
{
- return objectProvider.getObject();
+ return delegateProvider.getDelegate();
}
}
Propchange: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/DelegateProviderInvocationHandler.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/DelegatingInvocationHandler.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/DelegatingInvocationHandler.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/DelegatingInvocationHandler.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/DelegatingInvocationHandler.java Tue Aug 30 09:08:46 2005
@@ -1,22 +1,23 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.factory.reflect;
-import java.lang.reflect.Method;
import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
/**
* An invocation handler which delegates to another object.
@@ -41,8 +42,8 @@
}
/**
- * A simplified proxy creation method which merely creates a proxy which supports
- * all the interfaces implemented by the delegate.
+ * A simplified proxy creation method which merely creates a proxy which supports all the interfaces implemented by
+ * the delegate.
*
* @return a proxy which supports all the interfaces implemented by the delegate
*/
@@ -52,11 +53,10 @@
}
/**
- * A simplified proxy creation method which merely creates a proxy which supports
- * all the interfaces implemented by the delegate, using the specified class loader.
+ * A simplified proxy creation method which merely creates a proxy which supports all the interfaces implemented by
+ * the delegate, using the specified class loader.
*
- * @return a proxy which supports all the interfaces implemented by the delegate,
- * using the specified class loader.
+ * @return a proxy which supports all the interfaces implemented by the delegate, using the specified class loader.
*/
public Object createProxy( ClassLoader classLoader )
{
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/MethodInterceptorInvocationHandler.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/MethodInterceptorInvocationHandler.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/MethodInterceptorInvocationHandler.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/MethodInterceptorInvocationHandler.java Tue Aug 30 09:08:46 2005
@@ -1,17 +1,18 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.factory.reflect;
@@ -21,7 +22,7 @@
/**
* An invocation handler that passes through a <code>MethodInterceptor</code>.
- *
+ *
* @author James Carman
* @version 1.0
*/
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ReflectionMethodInvocation.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ReflectionMethodInvocation.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ReflectionMethodInvocation.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ReflectionMethodInvocation.java Tue Aug 30 09:08:46 2005
@@ -1,17 +1,18 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.factory.reflect;
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ReflectionProxyFactory.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ReflectionProxyFactory.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ReflectionProxyFactory.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/reflect/ReflectionProxyFactory.java Tue Aug 30 09:08:46 2005
@@ -1,41 +1,47 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.factory.reflect;
import org.aopalliance.intercept.MethodInterceptor;
-import org.apache.commons.proxy.ObjectProvider;
+import org.apache.commons.proxy.DelegateProvider;
import org.apache.commons.proxy.factory.AbstractProxyFactory;
import java.lang.reflect.Proxy;
/**
* A JDK {@link java.lang.reflect.Proxy Proxy}-based {@link org.apache.commons.proxy.ProxyFactory} implementation.
+ *
* @author James Carman
* @version 1.0
*/
public class ReflectionProxyFactory extends AbstractProxyFactory
{
- public Object createInterceptorProxy( ClassLoader classLoader, Object target, MethodInterceptor interceptor, Class... proxyInterfaces )
+ public Object createInterceptingProxy( ClassLoader classLoader, Object target, MethodInterceptor interceptor,
+ Class... proxyInterfaces )
{
- return new MethodInterceptorInvocationHandler( target, interceptor ).createProxy( classLoader, proxyInterfaces );
+ return new MethodInterceptorInvocationHandler( target, interceptor )
+ .createProxy( classLoader, proxyInterfaces );
}
- public Object createProxy( ClassLoader classLoader, ObjectProvider targetProvider, Class... proxyInterfaces )
+ public Object createDelegatingProxy( ClassLoader classLoader, DelegateProvider targetProvider,
+ Class... proxyInterfaces )
{
- return Proxy.newProxyInstance( classLoader, proxyInterfaces, new ObjectProviderInvocationHandler( targetProvider ) );
+ return Proxy.newProxyInstance( classLoader, proxyInterfaces,
+ new DelegateProviderInvocationHandler( targetProvider ) );
}
}
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/FilteredMethodInterceptor.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/FilteredMethodInterceptor.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/FilteredMethodInterceptor.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/FilteredMethodInterceptor.java Tue Aug 30 09:08:46 2005
@@ -1,17 +1,18 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.interceptor;
@@ -19,8 +20,8 @@
import org.aopalliance.intercept.MethodInvocation;
/**
- * Decorates another <code>MethodInterceptor</code> by only calling it if the
- * method is accepted by the supplied <code>MethodFilter</code>.
+ * Decorates another <code>MethodInterceptor</code> by only calling it if the method is accepted by the supplied
+ * <code>MethodFilter</code>.
*
* @author James Carman
* @version 1.0
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/MethodFilter.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/MethodFilter.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/MethodFilter.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/MethodFilter.java Tue Aug 30 09:08:46 2005
@@ -1,17 +1,18 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.interceptor;
@@ -19,7 +20,7 @@
/**
* A <code>MethodFilter</code> determines whether or not a method is accepted.
- *
+ *
* @author James Carman
* @version 1.0
*/
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/MethodInterceptorChain.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/MethodInterceptorChain.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/MethodInterceptorChain.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/MethodInterceptorChain.java Tue Aug 30 09:08:46 2005
@@ -1,29 +1,30 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.interceptor;
import org.aopalliance.intercept.MethodInterceptor;
+import org.apache.commons.proxy.DelegateProvider;
import org.apache.commons.proxy.ProxyFactory;
-import org.apache.commons.proxy.ObjectProvider;
-import org.apache.commons.proxy.provider.AbstractObjectProvider;
+import org.apache.commons.proxy.provider.AbstractDelegateProvider;
/**
- * A <code>MethodInterceptorChain</code> assists with creating proxies which go through
- * a series of <code>MethodInterceptors</code>.
- *
+ * A <code>MethodInterceptorChain</code> assists with creating proxies which go through a series of
+ * <code>MethodInterceptors</code>.
+ *
* @author James Carman
* @version 1.0
*/
@@ -36,38 +37,43 @@
this.interceptors = interceptors;
}
- public ObjectProvider createProxyProvider( ProxyFactory proxyFactory, ClassLoader classLoader, Object terminus, Class... proxyInterfaces )
+ public DelegateProvider createProxyProvider( ProxyFactory proxyFactory, ClassLoader classLoader, Object terminus,
+ Class... proxyInterfaces )
{
if( proxyInterfaces.length == 0 )
{
proxyInterfaces = terminus.getClass().getInterfaces();
}
- return new ProxyObjectProvider( proxyFactory, classLoader, terminus, proxyInterfaces );
+ return new ProxyDelegateProvider( proxyFactory, classLoader, terminus, proxyInterfaces );
}
- public ObjectProvider createProxyProvider( ProxyFactory proxyFactory, Object terminus, Class... proxyInterfaces )
+ public DelegateProvider createProxyProvider( ProxyFactory proxyFactory, Object terminus, Class... proxyInterfaces )
{
- return createProxyProvider( proxyFactory, Thread.currentThread().getContextClassLoader(), terminus, proxyInterfaces );
+ return createProxyProvider( proxyFactory, Thread.currentThread().getContextClassLoader(), terminus,
+ proxyInterfaces );
}
- private Object createProxy( ProxyFactory proxyFactory, ClassLoader classLoader, Object terminus, Class... proxyInterfaces )
+ private Object createProxy( ProxyFactory proxyFactory, ClassLoader classLoader, Object terminus,
+ Class... proxyInterfaces )
{
Object currentTarget = terminus;
for( int i = interceptors.length - 1; i >= 0; --i )
{
- currentTarget = proxyFactory.createInterceptorProxy( classLoader, currentTarget, interceptors[i], proxyInterfaces );
+ currentTarget = proxyFactory
+ .createInterceptingProxy( classLoader, currentTarget, interceptors[i], proxyInterfaces );
}
return currentTarget;
}
- private class ProxyObjectProvider extends AbstractObjectProvider
+ private class ProxyDelegateProvider extends AbstractDelegateProvider
{
private final ClassLoader classLoader;
private final Class[] proxyInterfaces;
private final Object terminus;
private final ProxyFactory proxyFactory;
- public ProxyObjectProvider( ProxyFactory proxyFactory, ClassLoader classLoader, Object terminus, Class[] proxyInterfaces )
+ public ProxyDelegateProvider( ProxyFactory proxyFactory, ClassLoader classLoader, Object terminus,
+ Class[] proxyInterfaces )
{
this.classLoader = classLoader;
this.proxyInterfaces = proxyInterfaces;
@@ -75,7 +81,7 @@
this.proxyFactory = proxyFactory;
}
- public Object getObject()
+ public Object getDelegate()
{
return createProxy( proxyFactory, classLoader, terminus, proxyInterfaces );
}
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/filter/PatternMethodFilter.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/filter/PatternMethodFilter.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/filter/PatternMethodFilter.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/filter/PatternMethodFilter.java Tue Aug 30 09:08:46 2005
@@ -1,17 +1,18 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.interceptor.filter;
@@ -20,8 +21,8 @@
import java.lang.reflect.Method;
/**
- * A method filter implementation that returns true if the method's name
- * matches a supplied regular expression (JDK regex) pattern string.
+ * A method filter implementation that returns true if the method's name matches a supplied regular expression (JDK
+ * regex) pattern string.
*
* @author James Carman
* @version 1.0
Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/filter/SimpleMethodFilter.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/filter/SimpleMethodFilter.java?rev=264802&r1=264801&r2=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/filter/SimpleMethodFilter.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/interceptor/filter/SimpleMethodFilter.java Tue Aug 30 09:08:46 2005
@@ -1,17 +1,18 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.interceptor.filter;
@@ -23,9 +24,8 @@
import java.util.Set;
/**
- * A simple method filter implementation that merely returns true if the
- * method's name is in a set of accepted names.
- *
+ * A simple method filter implementation that merely returns true if the method's name is in a set of accepted names.
+ *
* @author James Carman
* @version 1.0
*/
Copied: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/AbstractDelegateProvider.java (from r240386, jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/AbstractObjectProvider.java)
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/AbstractDelegateProvider.java?p2=jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/AbstractDelegateProvider.java&p1=jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/AbstractObjectProvider.java&r1=240386&r2=264802&rev=264802&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/AbstractObjectProvider.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/AbstractDelegateProvider.java Tue Aug 30 09:08:46 2005
@@ -1,29 +1,30 @@
-/*
- * Copyright 2005 The Apache Software Foundation
+/* $Id$
*
- * 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
+ * Copyright 2005 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.
+ * 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.
*/
package org.apache.commons.proxy.provider;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.commons.proxy.ObjectProvider;
+import org.apache.commons.proxy.DelegateProvider;
/**
* @author James Carman
* @version 1.0
*/
-public abstract class AbstractObjectProvider<T> implements ObjectProvider<T>
+public abstract class AbstractDelegateProvider implements DelegateProvider
{
protected Log log = LogFactory.getLog( getClass() );
Propchange: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/provider/AbstractDelegateProvider.java
------------------------------------------------------------------------------
svn:eol-style = native
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org