public interface

OsgiContainerManager

com.atlassian.plugin.osgi.container.OsgiContainerManager
Known Indirect Subclasses

Class Overview

Manages the OSGi container and handles any interactions with it

Summary

Public Methods
Bundle[] getBundles()
Gets a list of installed bundles
List<HostComponentRegistration> getHostComponentRegistrations()
Gets a list of host component registrations
ServiceReference[] getRegisteredServices()
Gets a list of service references
ServiceTracker getServiceTracker(String interfaceClassName)
Gets a service tracker to follow a service registered under a certain interface.
Bundle installBundle(File file)
Installs a bundle into a running OSGI container
boolean isRunning()
void start()
Starts the OSGi container
void stop()
Stops the OSGi container

Public Methods

public Bundle[] getBundles ()

Gets a list of installed bundles

Returns
  • An array of bundles

public List<HostComponentRegistration> getHostComponentRegistrations ()

Gets a list of host component registrations

Returns
  • A list of host component registrations

public ServiceReference[] getRegisteredServices ()

Gets a list of service references

Returns
  • An array of service references

public ServiceTracker getServiceTracker (String interfaceClassName)

Gets a service tracker to follow a service registered under a certain interface. Will return a new ServiceTracker instance for every call, so don't call more than necessary. Any provided ServiceTracker instances will be opened before returning and automatically closed on shutdown.

Parameters
interfaceClassName The interface class as a String
Returns
  • A service tracker to follow all instances of that interface
Throws
IllegalStateException If the OSGi container is not running

public Bundle installBundle (File file)

Installs a bundle into a running OSGI container

Parameters
file The bundle file to install
Returns
  • The created bundle
Throws
OsgiContainerException If the bundle cannot be loaded

public boolean isRunning ()

Returns
  • If the container is running or not

public void start ()

Starts the OSGi container

Throws
OsgiContainerException If the container cannot be started

public void stop ()

Stops the OSGi container

Throws
OsgiContainerException If the container cannot be stopped