Equinox Weaving: Working around problems when using other people's plugins - in a non-intrusive way.
The Eclipse eco-system provides a great platform to build new development and engineering tools based on the existing projects and plugins. While integration is often straightforward, you are sometimes blocked by unexpected bugs and missing features in those plugins.
Although you can always check out and modify those projects and patch them to your needs, that introduces some overhead of keeping your own build of the patched project until everything is reintegrated into a new release.
Equinox Weaving and AspectJ provide powerful functionality to work around these cases. You can override the behavior of classes and methods by "intercepting" calls to methods.
In this talk we will introduce the technology and show how we used it to
* Make Eclipse DAMOS (eclipse.org/damos) more tolerant to incorrect input
* Introduce CDO support to Eclipse RMF (eclipse.org/rmf) with just 7 lines of code without even touching the Eclipse RMF source code.
We hope to raise some awareness for how AspectJ can be a help in the daily work of a RCP developer.