| ClientTCLInterceptor.java |
/*
* JBoss, the OpenSource J2EE webOS
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package org.jboss.ha.httpsession.beanimpl.ejb;
import java.io.Serializable;
import org.jboss.invocation.Invocation;
import org.jboss.invocation.PayloadKey;
import org.jboss.proxy.Interceptor;
/** An InvokerInterceptor that places the client thread context ClassLoader
* into the invocation for use by the s ServerTCLInterceptor.
*
* @see org.jboss.ha.httpsession.beanimpl.ejb.ServerTCLInterceptor
*
* @author Scott.Stark@jboss.org
* @version $Revision: 1.2 $
*/
public class ClientTCLInterceptor
extends Interceptor
implements Serializable
{
/** The serialVersionUID
* @since 1.1.2.1
*/
private static final long serialVersionUID = 1092404482795617680L;
public ClientTCLInterceptor()
{
}
// Public --------------------------------------------------------
/** Add the current thread context ClassLoader to the invocation as a
* transient value under the key "org.jboss.invocation.TCL"
*/
public Object invoke(Invocation invocation)
throws Throwable
{
ClassLoader tcl = Thread.currentThread().getContextClassLoader();
invocation.setValue("org.jboss.invocation.TCL", tcl, PayloadKey.TRANSIENT);
return getNext().invoke(invocation);
}
}
| ClientTCLInterceptor.java |