org.apache.camel.component.bean
Class AbstractCamelInvocationHandler

java.lang.Object
  extended by org.apache.camel.component.bean.AbstractCamelInvocationHandler
All Implemented Interfaces:
InvocationHandler
Direct Known Subclasses:
CamelInvocationHandler, PojoMessageInvocationHandler

public abstract class AbstractCamelInvocationHandler
extends Object
implements InvocationHandler


Field Summary
protected  Endpoint endpoint
           
protected  Producer producer
           
 
Constructor Summary
AbstractCamelInvocationHandler(Endpoint endpoint, Producer producer)
           
 
Method Summary
protected  Object afterInvoke(Method method, Exchange exchange, ExchangePattern pattern, boolean isFuture)
           
abstract  Object doInvokeProxy(Object proxy, Method method, Object[] args)
           
protected  Throwable findSuitableException(Throwable cause, Method method)
          Tries to find the best suited exception to throw.
protected static ExecutorService getExecutorService(CamelContext context)
           
protected static Class<?> getGenericType(CamelContext context, Type type)
           
 Object invoke(Object proxy, Method method, Object[] args)
           
protected  Object invokeWithBody(Method method, Object body, ExchangePattern pattern)
           
protected  boolean isValidMethod(Method method)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

endpoint

protected final Endpoint endpoint

producer

protected final Producer producer
Constructor Detail

AbstractCamelInvocationHandler

public AbstractCamelInvocationHandler(Endpoint endpoint,
                                      Producer producer)
Method Detail

invoke

public final Object invoke(Object proxy,
                           Method method,
                           Object[] args)
                    throws Throwable
Specified by:
invoke in interface InvocationHandler
Throws:
Throwable

doInvokeProxy

public abstract Object doInvokeProxy(Object proxy,
                                     Method method,
                                     Object[] args)
                              throws Throwable
Throws:
Throwable

invokeWithBody

protected Object invokeWithBody(Method method,
                                Object body,
                                ExchangePattern pattern)
                         throws Throwable
Throws:
Throwable

afterInvoke

protected Object afterInvoke(Method method,
                             Exchange exchange,
                             ExchangePattern pattern,
                             boolean isFuture)
                      throws Exception
Throws:
Exception

getGenericType

protected static Class<?> getGenericType(CamelContext context,
                                         Type type)
                                  throws ClassNotFoundException
Throws:
ClassNotFoundException

getExecutorService

protected static ExecutorService getExecutorService(CamelContext context)

findSuitableException

protected Throwable findSuitableException(Throwable cause,
                                          Method method)
Tries to find the best suited exception to throw.

It looks in the exception hierarchy from the caused exception and matches this against the declared exceptions being thrown on the method.

Parameters:
cause - the caused exception
method - the method
Returns:
the exception to throw, or null if not possible to find a suitable exception

isValidMethod

protected boolean isValidMethod(Method method)


Apache CAMEL