cf.addField("_delegate", AnnotatedService.class);
cf.addConstructor(new Class[] { AnnotatedService.class }, null, "_delegate = $1;");
cf.proxyMethodsToDelegate(AnnotatedService.class, "_delegate", "Bla bla");
cf.copyClassAnnotationsFromDelegate(AnnotatedServiceImpl.class);
cf.copyMethodAnnotationsFromDelegate(AnnotatedService.class, AnnotatedServiceImpl.class);
final Class targetClass = cf.createClass();
final TestAnnotation a = (TestAnnotation) targetClass.getAnnotation(TestAnnotation.class);