Object returnWrappedResultMayBeCached(final String beanName, final Object o, final Method m, final Object[] args,
final MethodProxy mp) throws Throwable {
synchronized (o) {
return beanMethodProcessor.createNewOrGetCachedSingletonBean(beanName, new EnhancerMethodInvoker() {
public Method getMethod() {
return m;
}
public Object invokeOriginalClass() throws Throwable {