Je suis en train de coder un aspect en utilisant le style d'annotation. Je crée un "conseil autour", mais je ne semble pas trouver un moyen d'accéder à thisEnclosingJoinPointStaticPart depuis la méthode du conseil. Chaque fois que j'essaie de définir un argument pour cela, je reçois une erreur du compilateur ajc.
Voici la déclaration de mon point de coupe et du conseil :
@Pointcut("call(@xxx.api.annotation.InvokeOnEDT * gov.raptor..*.*(..))")
void invokeOnEDTPointCut()
{/*vide*/}
@Around("invokeOnEDTPointCut(thisEnclosingJoinPointStaticPart)")
public Object invokeOnEDT(final ProceedingJoinPoint thisJoinPoint, thisEnclosingJoinPointStaticPart) throws Throwable
{...}
Je sais que cela ne compile pas, je le fournis pour montrer ce que je "veux" faire, mais je ne trouve pas de moyen de le faire. J'ai passé des heures à chercher sur le web et les seuls exemples que je trouve sont pour les conseils Before ou After, et ils semblent permettre cette syntaxe. Le conseil Around se comporte clairement différemment, mais rien de ce que j'ai trouvé ne le discute.
L'erreur que je reçois lors de la compilation est la suivante :
[ERREUR] ...\aspects\DispatchEDTAspects.java:42:0::0 nombre d'arguments incompatibles pour le point de coupe, 0 attendu 1 trouvé
Des idées sur la façon d'accéder à thisEnclosingJoinPointStaticPart depuis la méthode du conseil ?