final ClassMetaData classMetaData,
final ClassGen cg,
final ConstantPoolGen cpg,
final InstructionFactory factory,
final AddImplementationTransformer transformer) {
AspectWerkzDefinitionImpl def = (AspectWerkzDefinitionImpl)definition;
List introductionDefs = def.getIntroductionDefinitions(classMetaData);
boolean isClassAdvised = false;
for (Iterator it = introductionDefs.iterator(); it.hasNext();) {
IntroductionDefinition introDef = (IntroductionDefinition) it.next();
int methodIndex = 0;
for (Iterator mit = introDef.getMethodIntroductions().iterator(); mit.hasNext(); methodIndex++) {
int mixinIndex = def.getMixinIndexByName(introDef.getName());
isClassAdvised = true;
//TODO any use case for a method already implemented ?
transformer.createProxyMethod(
cg,
cpg,
factory,
(MethodMetaData)mit.next(),
mixinIndex,
methodIndex,
def.getUuid()
);
}
}
if (isClassAdvised) {