commons-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jcar...@apache.org
Subject svn commit: r629952 - /commons/proper/proxy/branches/proxy-1.0-work/src/main/java/org/apache/commons/proxy/interceptor/InterceptorChain.java
Date Thu, 21 Feb 2008 19:43:01 GMT
Author: jcarman
Date: Thu Feb 21 11:43:01 2008
New Revision: 629952

URL: http://svn.apache.org/viewvc?rev=629952&view=rev
Log:
Added javadocs

Modified:
    commons/proper/proxy/branches/proxy-1.0-work/src/main/java/org/apache/commons/proxy/interceptor/InterceptorChain.java

Modified: commons/proper/proxy/branches/proxy-1.0-work/src/main/java/org/apache/commons/proxy/interceptor/InterceptorChain.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/branches/proxy-1.0-work/src/main/java/org/apache/commons/proxy/interceptor/InterceptorChain.java?rev=629952&r1=629951&r2=629952&view=diff
==============================================================================
--- commons/proper/proxy/branches/proxy-1.0-work/src/main/java/org/apache/commons/proxy/interceptor/InterceptorChain.java
(original)
+++ commons/proper/proxy/branches/proxy-1.0-work/src/main/java/org/apache/commons/proxy/interceptor/InterceptorChain.java
Thu Feb 21 11:43:01 2008
@@ -24,7 +24,17 @@
 
 /**
  * An <code>InterceptorChain</code> assists with creating proxies which go through
a series of
- * <code>Interceptors</code>.
+ * {@link Interceptor interceptors}.
+ *
+ * <pre>
+ *   MyServiceInterface serviceImpl = ...;
+ *   ProxyFactory factory = ...;
+ *   Interceptor[] interceptors = ...;
+ *   InterceptorChain chain = new InterceptorChain(interceptors);
+ *   ObjectProvider provider = chain.createProxyProvider(factory, serviceImpl);
+ *   MyServiceInterface serviceProxy = ( MyServiceInterface )provider.getObject();
+ *   serviceProxy.someServiceMethod(...); // This will go through the interceptors! 
+ * </pre>
  *
  * @author James Carman
  * @since 1.0
@@ -61,17 +71,53 @@
         return currentTarget;
     }
 
+    /**
+     * Creates an {@link ObjectProvider} which will return a proxy that sends method invocations
through this
+     * chain of interceptors and ultimately arrive at the supplied terminus object.  The
proxy will support all
+     * interfaces implemented by the terminus object.  The thread context classloader will
be used to generate the
+     * proxy class.
+     * 
+     * @param proxyFactory the {@link ProxyFactory} to use to create the proxy
+     * @param terminus the terminus
+     * @return an {@link ObjectProvider} which will return a proxy that sends method invocations
through this
+     * chain of interceptors and ultimately arrive at the supplied terminus object
+     */
     public ObjectProvider createProxyProvider( ProxyFactory proxyFactory, Object terminus
)
     {
         return createProxyProvider( proxyFactory, terminus, null );
     }
 
+    /**
+     * Creates an {@link ObjectProvider} which will return a proxy that sends method invocations
through this
+     * chain of interceptors and ultimately arrive at the supplied terminus object.  The
proxy will support only
+     * the specified interfaces/classes.  The thread context classloader will be used to
generate the
+     * proxy class.
+     *
+     * @param proxyFactory the {@link ProxyFactory} to use to create the proxy
+     * @param terminus the terminus
+     * @param proxyClasses the interfaces to support
+     * @return an {@link ObjectProvider} which will return a proxy that sends method invocations
through this
+     * chain of interceptors and ultimately arrive at the supplied terminus object
+     */
     public ObjectProvider createProxyProvider( ProxyFactory proxyFactory, Object terminus,
Class[] proxyClasses )
     {
         return createProxyProvider( proxyFactory, Thread.currentThread().getContextClassLoader(),
terminus,
                                     proxyClasses );
     }
 
+    /**
+     * Creates an {@link ObjectProvider} which will return a proxy that sends method invocations
through this
+     * chain of interceptors and ultimately arrive at the supplied terminus object.  The
proxy will support only
+     * the specified interfaces/classes.  The specified classloader will be used to generate
the
+     * proxy class.
+     *
+     * @param proxyFactory the {@link ProxyFactory} to use to create the proxy
+     * @param classLoader the classloader to be used to generate the proxy class
+     * @param terminus the terminus
+     * @param proxyClasses the interfaces to support
+     * @return an {@link ObjectProvider} which will return a proxy that sends method invocations
through this
+     * chain of interceptors and ultimately arrive at the supplied terminus object
+     */
     public ObjectProvider createProxyProvider( ProxyFactory proxyFactory, ClassLoader classLoader,
Object terminus,
                                                Class[] proxyClasses )
     {



Mime
View raw message