Tuomas Kiviaho created FELIX-4064: ------------------------------------- Summary: Potential clash with callback naming on adapter/aspect services Key: FELIX-4064 URL: https://issues.apache.org/jira/browse/FELIX-4064 Project: Felix Issue Type: Bug Components: Dependency Manager Affects Versions: dependencymanager-3.1.0 Reporter: Tuomas Kiviaho Priority: Minor
Adapter/Aspect services base themselves over AbstractDecorator which has substantial amount of template callbacks that might clash with user defined callbacks such as added(ServiceReference, Object) which will always precede added(Foobar). This can be quite puzzling with annotations that in other frameworks are also available at runtime and thus can participate to method resolving. I suggest to look whether or not AbstractDecorator could be split so that there would be only those methods available that make sense (bundle adapter doesn't need url callbacks for instance) and rename the remaining callbacks to begin with reserved word ('dm_' or something similar). User is able to create such a mess even without using adapter/aspect services just by parameterizing one callback method similarly so I think it would be wise if DM would break at runtime (hopefully at already at component declaration time) in case of ambiguous method match or at least best-match method algorithm would be altered so that it would favor the type of service instead of processing different parameter combinations sequentially as it does now. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira