[ https://issues.apache.org/jira/browse/FELIX-82?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Richard S. Hall closed FELIX-82. -------------------------------- > Dep Manager does not handle inherited callback methods right > ------------------------------------------------------------ > > Key: FELIX-82 > URL: https://issues.apache.org/jira/browse/FELIX-82 > Project: Felix > Issue Type: Bug > Components: Dependency Manager > Reporter: Peter Neubauer > Assigned To: Marcel Offermans > Fix For: 0.8.0 > > > This does not work for inherited classes as the reflection jsut works for the > current type. In order to be abelt o define callback even in e.g. Abstract > classes, one needs to go up the hirarchy in order to find these methods. > /peter > ServiceDependency > ... > invokeCallbackMethod > private void invokeCallbackMethod( Object instance, String methodName, > ServiceReference reference, Object service ) > throws NoSuchMethodException > { > Method method = null; > Class clazz = instance.getClass(); > AccessibleObject.setAccessible( clazz.getDeclaredMethods(), true ); > try > { > try > { > method = clazz.getDeclaredMethod( methodName, new Class[] { > ServiceReference.class, Object.class } ); > method.invoke( instance, new Object[] { reference, service } > ); > } > catch ( NoSuchMethodException e ) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.