| java.lang.Object org.netbeans.lib.profiler.instrumentation.ClassManager org.netbeans.lib.profiler.instrumentation.RecursiveMethodInstrumentor org.netbeans.lib.profiler.instrumentation.RecursiveMethodInstrumentor2
RecursiveMethodInstrumentor2 | public class RecursiveMethodInstrumentor2 extends RecursiveMethodInstrumentor (Code) | | Recursive method scaner that implements the eager instrumentation scheme ("Scheme A" in the JFluid paper).
author: Misha Dmitriev author: Adrian Mos |
Inner Class :protected class ReachableMethodPlaceholder2 extends ReachableMethodPlaceholder | |
Method Summary | |
protected void | findAndMarkOverridingMethodsReachable(DynamicClassInfo superClass, DynamicClassInfo subClass) | Object[] | getInitialMethodsToInstrument(String[] loadedClasses, int[] loadedClassLoaderIds, byte[][] cachedClassFileBytes, RootMethods roots) | public Object[] | getMethodsToInstrumentUponClassLoad(String className, int classLoaderId, boolean threadInCallGraph) | public Object[] | getMethodsToInstrumentUponMethodInvocation(String className, int classLoaderId, String methodName, String methodSignature) | public Object[] | getMethodsToInstrumentUponReflectInvoke(String className, int classLoaderId, String methodName, String methodSignature) | protected void | processInvoke(DynamicClassInfo clazz, boolean virtualCall, int index) | protected boolean | tryInstrumentSpawnedThreads(DynamicClassInfo clazz) |
getInitialMethodsToInstrument | Object[] getInitialMethodsToInstrument(String[] loadedClasses, int[] loadedClassLoaderIds, byte[][] cachedClassFileBytes, RootMethods roots)(Code) | | |
getMethodsToInstrumentUponClassLoad | public Object[] getMethodsToInstrumentUponClassLoad(String className, int classLoaderId, boolean threadInCallGraph)(Code) | | |
getMethodsToInstrumentUponMethodInvocation | public Object[] getMethodsToInstrumentUponMethodInvocation(String className, int classLoaderId, String methodName, String methodSignature)(Code) | | |
getMethodsToInstrumentUponReflectInvoke | public Object[] getMethodsToInstrumentUponReflectInvoke(String className, int classLoaderId, String methodName, String methodSignature)(Code) | | |
Methods inherited from org.netbeans.lib.profiler.instrumentation.RecursiveMethodInstrumentor | protected void addToSubclassList(DynamicClassInfo clazz, DynamicClassInfo addedClassInfo)(Code)(Java Doc) final protected int at(int index)(Code)(Java Doc) protected Object[] createInstrumentedMethodPack()(Code)(Java Doc) protected Object[] createInstrumentedMethodPack(DynamicClassInfo clazz)(Code)(Java Doc) abstract protected void findAndMarkOverridingMethodsReachable(DynamicClassInfo superClass, DynamicClassInfo subClass)(Code)(Java Doc) abstract Object[] getInitialMethodsToInstrument(String[] loadedClasses, int[] loadedClassLoaderIds, byte[][] cachedClassFileBytes, RootMethods rootMethods)(Code)(Java Doc) abstract public Object[] getMethodsToInstrumentUponClassLoad(String className, int classLoaderId, boolean threadInCallGraph)(Code)(Java Doc) abstract public Object[] getMethodsToInstrumentUponMethodInvocation(String className, int classLoaderId, String methodName, String methodSignature)(Code)(Java Doc) abstract public Object[] getMethodsToInstrumentUponReflectInvoke(String className, int classLoaderId, String methodName, String methodSignature)(Code)(Java Doc) protected void initInstrMethodData()(Code)(Java Doc) final protected long intAt(int tbl, int entry)(Code)(Java Doc) protected static boolean isEmptyMethod(byte[] code)(Code)(Java Doc) protected static boolean isGetterSetterMethod(byte[] code)(Code)(Java Doc) protected boolean isLeafMethod(byte[] code)(Code)(Java Doc) protected void markAllMethodsMarker(DynamicClassInfo clazz)(Code)(Java Doc) protected void markAllMethodsRoot(DynamicClassInfo clazz)(Code)(Java Doc) protected void markClassAndMethodForInstrumentation(DynamicClassInfo clazz, int methodIdx)(Code)(Java Doc) protected boolean markMethod(DynamicClassInfo clazz, int rootMethod)(Code)(Java Doc) protected boolean markMethodMarker(DynamicClassInfo clazz, String rootMethodName, String rootMethodSignature)(Code)(Java Doc) protected boolean markMethodRoot(DynamicClassInfo clazz, String rootMethodName, String rootMethodSignature)(Code)(Java Doc) protected boolean matchesWildcard(String wildcard, String loadedClassName)(Code)(Java Doc) abstract protected void processInvoke(DynamicClassInfo clazz, boolean virtualCall, int index)(Code)(Java Doc) protected static boolean rootClassNameIsReal(String rootClassName)(Code)(Java Doc) protected boolean scanBytecode(DynamicClassInfo clazz, byte[] code)(Code)(Java Doc) protected void scanMethod(DynamicClassInfo clazz, int index)(Code)(Java Doc) final protected int shortAt(int index)(Code)(Java Doc) abstract protected boolean tryInstrumentSpawnedThreads(DynamicClassInfo clazz)(Code)(Java Doc)
|
|
|