Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

iPOJO is an extensible, service-oriented component model implemented on the top of the OSGi™ OSGi? framework that aims to simplify the development of OSGi™ OSGi? applications. iPOJO follows a POJO-based component approach using external metadata to describe how POJO components should be managed by the iPOJO runtime. Some of the standard features of iPOJO include automatic service dependency management, service publication, and configuration property injection.

...

A composite can be thought of as a service registry or a scoping mechanism of the global OSGi™ OSGi? service registry. Composites can contain other composite, creating a hierarchy of service registries. The OSGi™ OSGi? service registry is the root composite.

...

Code Block
<composite name="composite.bar ">
    <service specification="org.apache.felix.ipojo.test.scenarios.service.Hello">
        <property name="language" value="en"/>
    </service>
</composite>

Architecture

Architecture allows a composite to publish its architecture. It allows knowing why a composite is not valid. For example, when an import cannot be fulfilled, the architecture indicates that the composite is not valid because one import is unsatisfied.

To display the architecture, use the "arch" command.iPOJO composites can expose their internal architecture for reflection. This can be useful, for example, when debugging to understand why a given composite is currently invalid, such as when a given import cannot be satisfied. For a composite to expose its internal architecture, it must set the architecture flag, such as:

Code Block
<composite name="composite.bar " architecture="true">
    <service specification="org.apache.felix.ipojo.test.scenarios.service.Hello">
        <property name="language" value="en"/>
    </service>
</composite>

Composition Model Extensibility

With this flag set, iPOJO publishes an architecture service for the composite. The architecture of the composite can be examined using the "arch" shell command for Felix.

Composition Model Extensibility

Like the rest of iPOJO, the As the rest of iPOJO, the composition model is extensible. Indeed, The composite container is composed by of a "composite handler". These handlers are , which is a special handler designed for composite. It is possible to create a composite handler as it is possible to create a (simple) handler without modifying the iPOJO runtime.More documentation on this feature comes soonto support composite components. More documentation to come on this feature.