I have OSGI bundles implementing API specified in another bundle (addded as dependency). Is there any way to specify that whenever API bundle is restarted, restart the implenting bundles (dependents)?
You can call refresh and all bundles will be restarted that had package wirings to the old API bundle. You can call refresh on the console or programmatically FrameworkWiring.refreshBundles(...) For more information you can check the javadoc of the mentioned function.