code
docs
tests
OSGi Library allows you to import OSGi services as Polygene™ Services and to export Polygene™ Services as OSGi Services both leveraging the Polygene™ Availability and OSGi FallbackStrategy mechanisms.
Table 32. Artifact
| Group ID | Artifact ID | Version |
|---|---|---|
org.apache.polygene.libraries | org.apache.polygene.library.osgi | 3.0.0 |
interface MyPolygeneService
extends OSGiEnabledService
{
// ...
}
[...snip...]
public void assemble( ModuleAssembly module )
throws AssemblyException
{
BundleContext bundleContext = // ...
[...snip...]
module.services( OSGiServiceExporter.class ).
setMetaInfo( bundleContext );
module.services( MyPolygeneService.class );
}
public void assemble( ModuleAssembly module )
throws AssemblyException
{
[...snip...]
module.services( OSGiServiceImporter.class ).
setMetaInfo( new OSGiImportInfo( bundleContext,
MyOSGiService.class,
MyOtherOSGiService.class ) ).
setMetaInfo( new MyFallbackStrategy() );
}
The fallback strategy is invoked when the OSGi service is not available and a method call is invoked.