Package org.springframework.cglib.proxy

# Interface CallbackFilter

All Known Implementing Classes:
  `CallbackHelper`

public interface CallbackFilter
Map methods of subclasses generated by `Enhancer` to a particular callback. The type of the callbacks chosen for each method affects the bytecode generated for that method in the subclass, and cannot change for the life of the class.

Note: `CallbackFilter` implementations are supposed to be lightweight as cglib might keep `CallbackFilter` objects alive to enable caching of generated classes. Prefer using `static` classes for implementation of `CallbackFilter`.

## Method Summary

Modifier and Type
Method
Description
`int`
`accept(Method method)`
Map a method to a callback.
`boolean`
`equals(Object o)`
The `CallbackFilter` in use affects which cached class the `Enhancer` will use, so this is a reminder that you should correctly implement `equals` and `hashCode` for custom `CallbackFilter` implementations in order to improve performance.

## Method Details

### accept

int accept(Method method)
Map a method to a callback.

Parameters:
  `method` - the intercepted method
Returns:
  the index into the array of callbacks (as specified by `Enhancer.setCallbacks(org.springframework.cglib.proxy.Callback[])`) to use for the method,

### equals

boolean equals(Object o)
The `CallbackFilter` in use affects which cached class the `Enhancer` will use, so this is a reminder that you should correctly implement `equals` and `hashCode` for custom `CallbackFilter` implementations in order to improve performance.

Overrides:
  `equals` in class `Object`