|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectcom.atlassian.util.profiling.object.ObjectProfiler
| Constructor Summary | |
ObjectProfiler()
|
|
| Method Summary | |
static java.lang.Object |
getProfiledObject(java.lang.Class interfaceClazz,
java.lang.Object o)
Given a class, and an interface that it implements, return a proxied version of the class that implements the interface. |
static java.lang.String |
getTrimmedClassName(java.lang.reflect.Method method)
Given a method, get the Method name, with no package information. |
static java.lang.Object |
profiledInvoke(java.lang.reflect.Method target,
java.lang.Object value,
java.lang.Object[] args)
A profiled call {@link Method#invoke(java.lang.Object, java.lang.Object[]). |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public ObjectProfiler()
| Method Detail |
public static java.lang.Object getProfiledObject(java.lang.Class interfaceClazz,
java.lang.Object o)
The usual use of this is to profile methods from Factory objects:
public PersistenceManager getPersistenceManager()
{
return new DefaultPersistenceManager();
}
instead write:
public PersistenceManager getPersistenceManager()
{
return ObjectProfiler.getProfiledObject(PersistenceManager.class, new DefaultPersistenceManager());
}
A side effect of this is that you will no longer be able to downcast to DefaultPersistenceManager. This is probably a *good* thing.
interfaceClazz - The interface to implement.o - The object to proxy
public static java.lang.Object profiledInvoke(java.lang.reflect.Method target,
java.lang.Object value,
java.lang.Object[] args)
throws java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetExceptionpublic static java.lang.String getTrimmedClassName(java.lang.reflect.Method method)
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||