net.sf.gwtspringrpc.http
Class SingletonServletConfigFactoryBean

java.lang.Object
  extended by net.sf.gwtspringrpc.http.SingletonServletConfigFactoryBean
All Implemented Interfaces:
InvocationHandler, FactoryBean

public class SingletonServletConfigFactoryBean
extends Object
implements FactoryBean, InvocationHandler

This class is a factory bean for creating a singleton ServletConfig dynamic proxy instance. This allows the ServletConfig to be injected into singleton beans but still manage a separate instance per thread.

Since:
1.0
Author:
Mike Clemens

Field Summary
private  Log log
           
 
Constructor Summary
SingletonServletConfigFactoryBean()
           
 
Method Summary
 Object getObject()
          Returns a dynamic ServletConfig proxy delegating method requests to the instance stored in HTTPObjectHolder.
 Class getObjectType()
          Retrieves the object type of ServletConfig.
 Object invoke(Object proxy, Method method, Object[] args)
          Invokes a method on the dynamic ServletConfig proxy.
 boolean isSingleton()
          Returns true since this factory bean creates a singleton.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

private final Log log
Constructor Detail

SingletonServletConfigFactoryBean

public SingletonServletConfigFactoryBean()
Method Detail

getObjectType

public Class getObjectType()
Retrieves the object type of ServletConfig.

Specified by:
getObjectType in interface FactoryBean
Returns:
The ServletConfig class

isSingleton

public boolean isSingleton()
Returns true since this factory bean creates a singleton.

Specified by:
isSingleton in interface FactoryBean
Returns:
True

getObject

public Object getObject()
                 throws Exception
Returns a dynamic ServletConfig proxy delegating method requests to the instance stored in HTTPObjectHolder.

Specified by:
getObject in interface FactoryBean
Returns:
The dynamic ServletConfig proxy
Throws:
Exception - Any uncaught exceptions will cause the Spring application context initialization to fail

invoke

public Object invoke(Object proxy,
                     Method method,
                     Object[] args)
              throws Throwable
Invokes a method on the dynamic ServletConfig proxy.

Specified by:
invoke in interface InvocationHandler
Parameters:
proxy - This instance
method - The method being invoked
args - The method arguments
Throws:
Throwable - If an exception occurs invoking the method