Hi Jens, It does work for me. Using your code: 1 Create a new bundle that contributes to the registry - say, using "Hello world" template for the new plug-in project wizard 2 Add "-console" argument to the Eclipse launch configuration that you are using 3 Start it 4 Use "ss" command in the console to make sure your tracking bundle is started and to find out the ID of the bundle from the step 1 5. Type "refresh <bundle_id_from_step_1> in the console - you'll see the events.
Thanks, Oleg Jens Dietrich <[EMAIL PROTECTED]> Sent by: [EMAIL PROTECTED] 10/01/2008 04:53 PM Please respond to Equinox development mailing list <[email protected]> To [email protected] cc Subject [equinox-dev] problems with registry change events Hi, I am working on a program that performs some additional integrity checks between bundles collaborating through extension points and extensions. I want to trigger verification whenever new extensions or extension points are registered. I have done a little spike: I wrote a plugin that starts early (by adding it to config.ini), and added the following code to the start method in the Activator class (the Activator also implements IRegistryChangeListener): private boolean initialized = false; public void registryChanged(IRegistryChangeEvent e) { System.out.println("registry changed"); } public void start(final BundleContext context) throws Exception { super.start(context); System.out.println("activating"); plugin = this; BundleListener l = new BundleListener() { public void bundleChanged(BundleEvent e) { System.out.println("bundle changed: "+e.getBundle().getSymbolicName()); if (!initialized && Platform.getExtensionRegistry()!=null) { Platform.getExtensionRegistry().addRegistryChangeListener(Activator.this); System.out.println("registry loaded"); initialized = true; } } }; context.addBundleListener(l); } The idea is to wait for the extension registry, and once it becomes available to start listening for registry change events. The output on the console is the following: activating bundle changed: nz.ac.massey.treaty.spikes.events.main registry loaded bundle changed: org.eclipse.jface bundle changed: org.eclipse.ui ... (more bundle changed: .. - ) It seems that registryChanged is never invoked. Even if I install a plugin later (once the eclipse instance is running) from a local update site, the method is never called (no print out, I have tried to debug as well). Why is this? Any help is appreciated! Jens _______________________________________________ equinox-dev mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/equinox-dev
_______________________________________________ equinox-dev mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/equinox-dev
