The Blueprint Container
The Blueprint Container specification defines a dependency injection framework for OSGi and is an OSGi Alliance standard. It provides a simple programming model to create dynamic applications in the OSGi environment.
The Blueprint Container specification deals with the dynamic nature of OSGi, where services can become available and unavailable at any time. The specification also works with plain old Java™ objects (POJOs), so that the same objects can be used inside and outside the OSGi framework. For example, you can write and unit test simple components in a Java Platform, Standard Edition (JSE) environment without needing to know how they are assembled.
Key factors in the Blueprint programming model are the Blueprint XML files that define and describe the assembly of various components. The specification describes how the components are instantiated and wired together to form a module that runs.
This information describes frequently-used aspects of the Blueprint Container. For more detail, see the OSGi Service Platform Release 4 Version 4.2 Enterprise Specification.