Hello,
I'm writing an Eclipse plug-in that uses handle identifiers to work with crosscutting relationship information. I *think* I'm seeing a slight variation in handle identifiers within AspectJ compilation units, depending on whether you're looking at an IJavaElement or a relationship that involves the IJavaElement.
If you get the handle from IJavaElement.getHandleIdentifier(), the AspectJ compilation unit's name is preceded by "{":
=handle-demo-aspects/src<handledemoaspects{HandleDemoAspect.aj}HandleDemoAspect&before
However, if that IJavaElement is in a crosscutting relationship, and you get the handle from IRelationship.getSourceHandle(), the AspectJ compilation unit's name is preceded by "*":
=handle-demo-aspects/src<handledemoaspects*HandleDemoAspect.aj}HandleDemoAspect&before
From what I can tell, this only seems to happen within AspectJ compilation units. getHandleIdentifier() and getSourceHandler() both use "{" before Java compilation unit names: =handle-demo-aspects/src<handledemoaspects{HandleDemoClass.java[HandleDemoClass
Am I doing something wrong, or should getHandleIdentifier() and getSourceHandler() both return the same thing?
I've written a small plug-in that demonstrates the behavior, if you're interested.
Thanks! Jeff |