org.apache.qpid.server.util
Class LoggingProxy

java.lang.Object
  extended by org.apache.qpid.server.util.LoggingProxy
All Implemented Interfaces:
java.lang.reflect.InvocationHandler

public class LoggingProxy
extends java.lang.Object
implements java.lang.reflect.InvocationHandler

Dynamic proxy that records invocations in a fixed size circular buffer, dumping details on hitting an exception.

Useful in debugging.


Constructor Summary
LoggingProxy(java.lang.Object target, int size)
           
 
Method Summary
 int getBufferSize()
           
 java.lang.Object getProxy(java.lang.Class... c)
           
 java.lang.Object invoke(java.lang.Object proxy, java.lang.reflect.Method method, java.lang.Object[] args)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LoggingProxy

public LoggingProxy(java.lang.Object target,
                    int size)
Method Detail

invoke

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

getProxy

public java.lang.Object getProxy(java.lang.Class... c)

getBufferSize

public int getBufferSize()