Interface MethodEnhancer


public interface MethodEnhancer
Implementations of this interface will be used to enhance methods with profiling information/ callbacks. TODO This can be moved, I think it's also useful outside the profile package.
Author:
Andre Kullmann
  • Method Summary

    Modifier and Type
    Method
    Description
    enhance(String id, DynamicMethod delegate)
    Will be called with a method which should be enhanced.
  • Method Details

    • enhance

      DynamicMethod enhance(String id, DynamicMethod delegate)
      Will be called with a method which should be enhanced. e.g. with information or callback invocations required by the profiling. In most cases you don't want to profile all methods, just the methods of your own code. So you can add a simple filter here
       if( isMyCode( delegate ) ) {
           return new ProfilingDynamicMethod( delegate );
       } else {
           return delegate;
       }
       
      Parameters:
      id - the name of the given delegate
      delegate - the method to enhance
      Returns:
      the enhanced method. if nothing is to be done, the delegate itself can be returned