@SuppressWarnings("unchecked")
private I createAdapterProxy(Object annotatedHandler, final T adapter, final Class<I> adapterInterface,
boolean proxyTargetClass, ClassLoader classLoader) {
ProxyFactory pf = new ProxyFactory(annotatedHandler);
pf.addAdvice(new AdapterIntroductionInterceptor(adapter, adapterInterface));
pf.addInterface(adapterInterface);
pf.addInterface(Subscribable.class);
pf.setProxyTargetClass(proxyTargetClass);
pf.setExposeProxy(true);
return (I) pf.getProxy(classLoader);
}