"adrian(a)jboss.org" wrote :
| Alternatively, we could change MethodSIgnature to include the
"DeclaringClass"
| in its equals(). But then people who don't know the DeclaringClass,
| e.g. populating metadata from xml would have to do the
findMethod().getDeclaringClass()
| upfront to populate the MethodSignature, otherwise the equals() would no longer work.
|
If you're willing to put the analysis work into making sure that adding the
declaring class to the signature's equals() doesn't break existing use cases
then I would be to change my position.
e.g. the MC "knows" the declaring class when it populates the xml
since it matches the xml elements to ClassInfo/MethodInfo, etc.
| private void updateAnnotations(MutableMetaDataRepository repository, ClassLoader
classloader, ComponentMutableMetaData component, KernelControllerContext context,
MethodInfo methodInfo, Set<AnnotationMetaData> annotations, boolean add)
| {
| if (annotations == null || annotations.isEmpty())
| return;
|
| Signature signature = new MethodSignature(methodInfo);
| ScopeKey scope = new ScopeKey(CommonLevels.JOINPOINT_OVERRIDE,
methodInfo.getName());
| updateAnnotations(repository, classloader, component, context, signature, scope,
annotations, add);
| }
|
but that doesn't mean everywhere else knows.
If you are not willing to do the analysis, then I'm not prepared to spend
weeks fixing things broken by this change. :-)
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4170740#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...