For the majority of this book we have used OSGi services to facilitate the interaction between bundles. Services are reasonably lightweight and, with the advent of the Declarative Services mechanism, relatively easy to work with. As mentioned in Chapter 2, “Concepts,” services are not the only collaboration game in town. The Equinox Extension Registry can also be used to hook bundles together.
In this chapter we look at how the Extension Registry works and compare and contrast it with the service registry. In particular we will talk about
• Extensions and extension points
• The dynamic behavior of the Extension Registry
• Providing data in extensions
• Scalability and startup performance (event storm, caching)
• Extension ...