A Bundle
object is the access point to define the lifecycle of an installed bundle. Each bundle installed in the OSGi environment must have an associated Bundle
object.
A bundle must have a unique identity, a long
, chosen by the Framework. This identity must not change during the lifecycle of a bundle, even when the bundle is updated. Uninstalling and then reinstalling the bundle must create a new unique identity.
A bundle can be in one of six states:
Values assigned to these states have no specified ordering; they represent bit values that may be ORed together to determine if a bundle is in one of the valid states.
A bundle should only execute code when its state is one of STARTING
,ACTIVE
, or STOPPING
. An UNINSTALLED
bundle can not be set to another state; it is a zombie and can only be reached because references are kept somewhere.
The Framework is the only entity that is allowed to create Bundle
objects, and these objects are only valid within the Framework that created them.
Definition at line 69 of file Bundle.java.
Public Member Functions | |
int | getState () |
Returns this bundle's current state. | |
void | start () throws BundleException |
Starts this bundle. | |
void | stop () throws BundleException |
Stops this bundle. | |
void | update () throws BundleException |
Updates this bundle. | |
void | update (InputStream in) throws BundleException |
Updates this bundle from an InputStream . | |
void | uninstall () throws BundleException |
Uninstalls this bundle. | |
Dictionary | getHeaders () |
Returns this bundle's Manifest headers and values. | |
long | getBundleId () |
Returns this bundle's identifier. | |
String | getLocation () |
Returns this bundle's location identifier. | |
ServiceReference[] | getRegisteredServices () |
Returns this bundle's ServiceReference list for all services it has registered or null if this bundle has no registered services. | |
ServiceReference[] | getServicesInUse () |
Returns this bundle's ServiceReference list for all services it is using or returns null if this bundle is not using any services. | |
boolean | hasPermission (Object permission) |
Determines if this bundle has the specified permissions. | |
URL | getResource (String name) |
Find the specified resource from this bundle. | |
Dictionary | getHeaders (String locale) |
Returns this bundle's Manifest headers and values localized to the specified locale. | |
String | getSymbolicName () |
Returns the symbolic name of this bundle as specified by its Bundle-SymbolicName manifest header. | |
Class | loadClass (String name) throws ClassNotFoundException |
Loads the specified class using this bundle's classloader. | |
Enumeration | getResources (String name) throws IOException |
Find the specified resources from this bundle. | |
Enumeration | getEntryPaths (String path) |
Returns an Enumeration of all the paths (String objects) to entries within the bundle whose longest sub-path matches the supplied path argument. | |
URL | getEntry (String name) |
Returns a URL to the specified entry in this bundle. | |
long | getLastModified () |
Returns the time when this bundle was last modified. | |
Enumeration | findEntries (String path, String filePattern, boolean recurse) |
Returns entries in this bundle and its attached fragments. | |
Static Public Attributes | |
static final int | UNINSTALLED = 0x00000001 |
This bundle is uninstalled and may not be used. | |
static final int | INSTALLED = 0x00000002 |
This bundle is installed but not yet resolved. | |
static final int | RESOLVED = 0x00000004 |
This bundle is resolved and is able to be started. | |
static final int | STARTING = 0x00000008 |
This bundle is in the process of starting. | |
static final int | STOPPING = 0x00000010 |
This bundle is in the process of stopping. | |
static final int | ACTIVE = 0x00000020 |
This bundle is now running. |
int org.osgi.framework.Bundle.getState | ( | ) |
Returns this bundle's current state.
A bundle can be in only one state at any time.
UNINSTALLED
,INSTALLED
, RESOLVED
,STARTING
, STOPPING
,ACTIVE
. Implemented in org.knopflerfish.framework.BundleImpl.
Referenced by org.knopflerfish.framework.Framework.shutdown().
void org.osgi.framework.Bundle.start | ( | ) | throws BundleException |
Starts this bundle.
If the Framework implements the optional Start Level service and the current start level is less than this bundle's start level, then the Framework must persistently mark this bundle as started and delay the starting of this bundle until the Framework's current start level becomes equal or more than the bundle's start level.
Otherwise, the following steps are required to start a bundle:
UNINSTALLED
then an IllegalStateException
is thrown.
STARTING
or STOPPING
then this method must wait for this bundle to change state before continuing. If this does not occur in a reasonable time, a BundleException
is thrown to indicate this bundle was unable to be started.
ACTIVE
then this method returns immediately.
RESOLVED
, an attempt is made to resolve this bundle's package dependencies. If the Framework cannot resolve this bundle, a BundleException
is thrown.
STARTING
.
SynchronousBundleListener
s. It is not delivered to BundleListener
s.
BundleActivator
, if one is specified, is called. If the BundleActivator
is invalid or throws an exception, this bundle's state is set back to RESOLVED
.BundleException
is then thrown.
UNINSTALLED
, because the bundle was uninstalled while the BundleActivator.start
method was running, a BundleException
is thrown.
ACTIVE
.
Preconditions
getState()
in {INSTALLED
}, { RESOLVED
}. getState()
in {ACTIVE
}. BundleActivator.start()
has been called and did not throw an exception. getState()
not in {STARTING
}, { ACTIVE
}.
BundleException | If this bundle could not be started. This could be because a code dependency could not be resolved or the specified BundleActivator could not be loaded or threw an exception. | |
java.lang.IllegalStateException | If this bundle has been uninstalled or this bundle tries to change its own state. | |
java.lang.SecurityException | If the caller does not have the appropriate AdminPermission[this,EXECUTE] , and the Java Runtime Environment supports permissions. |
Implemented in org.knopflerfish.framework.BundleImpl, and org.knopflerfish.framework.SystemBundle.
Referenced by org.knopflerfish.framework.Framework.launch(), org.openmobileis.bundle.osgi.synchro.BaseBundleLoaderActivator.start(), and org.knopflerfish.framework.Framework.startBundle().
void org.osgi.framework.Bundle.stop | ( | ) | throws BundleException |
Stops this bundle.
The following steps are required to stop a bundle:
UNINSTALLED
then an IllegalStateException
is thrown.
STARTING
or STOPPING
then this method must wait for this bundle to change state before continuing. If this does not occur in a reasonable time, a BundleException
is thrown to indicate this bundle was unable to be stopped.
ACTIVE
then this method returns immediately.
STOPPING
.
SynchronousBundleListener
s. It is not delivered to BundleListener
s.
BundleActivator
, if one is specified, is called. If that method throws an exception, this method must continue to stop this bundle. A BundleException
must be thrown after completion of the remaining steps.
UNINSTALLED
, because the bundle was uninstalled while the BundleActivator.stop
method was running, a BundleException
must be thrown.
RESOLVED
.
Preconditions
getState()
in {ACTIVE
}. getState()
not in {ACTIVE
, STOPPING
}. BundleActivator.stop
has been called and did not throw an exception.
BundleException | If this bundle's BundleActivator could not be loaded or threw an exception. | |
java.lang.IllegalStateException | If this bundle has been uninstalled or this bundle tries to change its own state. | |
java.lang.SecurityException | If the caller does not have the appropriate AdminPermission[this,EXECUTE] , and the Java Runtime Environment supports permissions. |
Implemented in org.knopflerfish.framework.BundleImpl, and org.knopflerfish.framework.SystemBundle.
Referenced by org.knopflerfish.framework.Framework.shutdown(), and org.knopflerfish.framework.Framework.stopBundle().
void org.osgi.framework.Bundle.update | ( | ) | throws BundleException |
Updates this bundle.
If this bundle's state is ACTIVE
, it must be stopped before the update and started after the update successfully completes.
If the bundle being updated has exported any packages, these packages must not be updated. Instead, the previous package version must remain exported until the PackageAdmin.refreshPackages
method has been has been called or the Framework is relaunched.
The following steps are required to update a bundle:
UNINSTALLED
then an IllegalStateException
is thrown.
ACTIVE
, STARTING
or STOPPING
, the bundle is stopped as described in the Bundle.stop
method. If Bundle.stop
throws an exception, the exception is rethrown terminating the update.
BundleException
must be thrown after completion of the remaining steps.
BundleException
must be thrown after completion of the remaining steps.
INSTALLED
.
ACTIVE
, the updated bundle is started as described in the Bundle.start
method. If Bundle.start
throws an exception, a Framework event of type FrameworkEvent#ERROR is fired containing the exception. Preconditions
getState()
not in {UNINSTALLED
}. getState()
in {INSTALLED
, RESOLVED
,ACTIVE
}. getState()
in {INSTALLED
, RESOLVED
,ACTIVE
}.
BundleException | If the update fails. | |
java.lang.IllegalStateException | If this bundle has been uninstalled or this bundle tries to change its own state. | |
java.lang.SecurityException | If the caller does not have the appropriate AdminPermission[this,LIFECYCLE] for both the current bundle and the updated bundle, and the Java Runtime Environment supports permissions. |
Implemented in org.knopflerfish.framework.BundleImpl.
Referenced by org.knopflerfish.framework.Framework.updateBundle().
void org.osgi.framework.Bundle.update | ( | InputStream | in | ) | throws BundleException |
Updates this bundle from an InputStream
.
This method performs all the steps listed in Bundle.update()
, except the bundle must be read from the supplied InputStream
, rather than a URL
.
This method must always close the InputStream
when it is done, even if an exception is thrown.
in | The InputStream from which to read the new bundle. |
BundleException | If the provided stream cannot be read or the update fails. | |
java.lang.IllegalStateException | If this bundle has been uninstalled or this bundle tries to change its own state. | |
java.lang.SecurityException | If the caller does not have the appropriate AdminPermission[this,LIFECYCLE] for both the current bundle and the updated bundle, and the Java Runtime Environment supports permissions. |
Implemented in org.knopflerfish.framework.SystemBundle.
void org.osgi.framework.Bundle.uninstall | ( | ) | throws BundleException |
Uninstalls this bundle.
This method causes the Framework to notify other bundles that this bundle is being uninstalled, and then puts this bundle into the UNINSTALLED
state. The Framework must remove any resources related to this bundle that it is able to remove.
If this bundle has exported any packages, the Framework must continue to make these packages available to their importing bundles until the PackageAdmin.refreshPackages
method has been called or the Framework is relaunched.
The following steps are required to uninstall a bundle:
UNINSTALLED
then an IllegalStateException
is thrown.
ACTIVE
, STARTING
or STOPPING
, this bundle is stopped as described in the Bundle.stop
method. If Bundle.stop
throws an exception, a Framework event of type FrameworkEvent#ERROR is fired containing the exception.
UNINSTALLED
.
Preconditions
getState()
not in {UNINSTALLED
}. getState()
in {UNINSTALLED
}. getState()
not in {UNINSTALLED
}.
BundleException | If the uninstall failed. This can occur if another thread is attempting to change the bundle's state and does not complete in a timely manner. | |
java.lang.IllegalStateException | If this bundle has been uninstalled or this bundle tries to change its own state. | |
java.lang.SecurityException | If the caller does not have the appropriate AdminPermission[this,LIFECYCLE] , and the Java Runtime Environment supports permissions. |
Implemented in org.knopflerfish.framework.BundleImpl, and org.knopflerfish.framework.SystemBundle.
Referenced by org.knopflerfish.framework.Framework.uninstallBundle().
Dictionary org.osgi.framework.Bundle.getHeaders | ( | ) |
Returns this bundle's Manifest headers and values.
This method returns all the Manifest headers and values from the main section of the bundle's Manifest file; that is, all lines prior to the first blank line.
Manifest header names are case-insensitive. The methods of the returned Dictionary
object must operate on header names in a case-insensitive manner.
If a Manifest header value starts with "%", it must be localized according to the default locale.
For example, the following Manifest headers and values are included if they are present in the Manifest file:
Bundle-Name Bundle-Vendor Bundle-Version Bundle-Description Bundle-DocURL Bundle-ContactAddress
This method must continue to return Manifest header information while this bundle is in the UNINSTALLED
state.
Dictionary
object containing this bundle's Manifest headers and values.java.lang.SecurityException | If the caller does not have the appropriate AdminPermission[this,METADATA] , and the Java Runtime Environment supports permissions. |
Implemented in org.knopflerfish.framework.BundleImpl, and org.knopflerfish.framework.SystemBundle.
long org.osgi.framework.Bundle.getBundleId | ( | ) |
Returns this bundle's identifier.
The bundle is assigned a unique identifier by the Framework when it is installed in the OSGi environment.
A bundle's unique identifier has the following attributes:
long
.
This method must continue to return this bundle's unique identifier while this bundle is in the UNINSTALLED
state.
Implemented in org.knopflerfish.framework.BundleImpl.
Referenced by org.osgi.framework.AdminPermission.AdminPermission(), org.knopflerfish.framework.Listeners.frameworkEvent(), org.knopflerfish.framework.Framework.getBundleId(), and org.knopflerfish.framework.StartLevelImpl.getBundleStartLevel().
String org.osgi.framework.Bundle.getLocation | ( | ) |
Returns this bundle's location identifier.
The bundle location identifier is the location passed to BundleContext.installBundle
when a bundle is installed. The bundle location identifier does not change while the bundle remains installed, even if the bundle is updated.
This method must continue to return this bundle's location identifier while this bundle is in the UNINSTALLED
state.
java.lang.SecurityException | If the caller does not have the appropriate AdminPermission[this,METADATA] , and the Java Runtime Environment supports permissions. |
Implemented in org.knopflerfish.framework.BundleImpl.
Referenced by org.knopflerfish.framework.Framework.getBundleLocation(), org.osgi.service.condpermadmin.BundleLocationCondition.getCondition(), and org.openmobileis.bundle.osgi.synchro.BaseBundleLoaderActivator.start().
ServiceReference [] org.osgi.framework.Bundle.getRegisteredServices | ( | ) |
Returns this bundle's ServiceReference
list for all services it has registered or null
if this bundle has no registered services.
If the Java runtime supports permissions, a ServiceReference
object to a service is included in the returned list only if the caller has the ServicePermission
to get the service using at least one of the named classes the service was registered under.
The list is valid at the time of the call to this method, however, as the Framework is a very dynamic environment, services can be modified or unregistered at anytime.
ServiceReference
objects or null
. java.lang.IllegalStateException | If this bundle has been uninstalled. |
Implemented in org.knopflerfish.framework.BundleImpl.
ServiceReference [] org.osgi.framework.Bundle.getServicesInUse | ( | ) |
Returns this bundle's ServiceReference
list for all services it is using or returns null
if this bundle is not using any services.
A bundle is considered to be using a service if its use count for that service is greater than zero.
If the Java Runtime Environment supports permissions, a ServiceReference
object to a service is included in the returned list only if the caller has the ServicePermission
to get the service using at least one of the named classes the service was registered under.
The list is valid at the time of the call to this method, however, as the Framework is a very dynamic environment, services can be modified or unregistered at anytime.
ServiceReference
objects or null
. java.lang.IllegalStateException | If this bundle has been uninstalled. |
Implemented in org.knopflerfish.framework.BundleImpl.
boolean org.osgi.framework.Bundle.hasPermission | ( | Object | permission | ) |
Determines if this bundle has the specified permissions.
If the Java Runtime Environment does not support permissions, this method always returns true
.
permission
is of type Object
to avoid referencing the java.security.Permission
class directly. This is to allow the Framework to be implemented in Java environments which do not support permissions.
If the Java Runtime Environment does support permissions, this bundle and all its resources including embedded JAR files, belong to the same java.security.ProtectionDomain
; that is, they must share the same set of permissions.
permission | The permission to verify. |
true
if this bundle has the specified permission or the permissions possessed by this bundle imply the specified permission; false
if this bundle does not have the specified permission or permission
is not an instanceof
java.security.Permission
.java.lang.IllegalStateException | If this bundle has been uninstalled. |
Implemented in org.knopflerfish.framework.BundleImpl, and org.knopflerfish.framework.SystemBundle.
Referenced by org.knopflerfish.framework.Listeners.serviceChanged().
URL org.osgi.framework.Bundle.getResource | ( | String | name | ) |
Find the specified resource from this bundle.
This bundle's class loader is called to search for the specified resource. If this bundle's state is INSTALLED
, this method must attempt to resolve the bundle before attempting to get the specified resource. If this bundle cannot be resolved, then only this bundle must be searched for the specified resource. Imported packages cannot be searched when a bundle has not been resolved. If this bundle is a fragment bundle then null
is returned.
name | The name of the resource. See java.lang.ClassLoader.getResource for a description of the format of a resource name. |
null
if the resource could not be found or if this bundle is a fragment bundle or if the caller does not have the appropriate AdminPermission[this,RESOURCE]
, and the Java Runtime Environment supports permissions.java.lang.IllegalStateException | If this bundle has been uninstalled. |
Implemented in org.knopflerfish.framework.BundleImpl.
Dictionary org.osgi.framework.Bundle.getHeaders | ( | String | locale | ) |
Returns this bundle's Manifest headers and values localized to the specified locale.
This method performs the same function as Bundle.getHeaders()
except the manifest header values are localized to the specified locale.
If a Manifest header value starts with "%", it must be localized according to the specified locale. If a locale is specified and cannot be found, then the header values must be returned using the default locale. Localizations are searched for in the following order:
bn + "_" + Ls + "_" + Cs + "_" + Vs bn + "_" + Ls + "_" + Cs bn + "_" + Ls bn + "_" + Ld + "_" + Cd + "_" + Vd bn + "_" + Ld + "_" + Cd bn + "_" + Ld bnWhere
bn
is the bundle localization basename, Ls
, Cs
and Vs
are the specified locale (language, country, variant) and Ld
, Cd
and Vd
are the default locale (language, country, variant).
If null
is specified as the locale string, the header values must be localized using the default locale. If the empty string ("") is specified as the locale string, the header values must not be localized and the raw (unlocalized) header values, including any leading "%", must be returned.
This method must continue to return Manifest header information while this bundle is in the UNINSTALLED
state, however the header values must only be available in the raw and default locale values.
locale | The locale name into which the header values are to be localized. If the specified locale is null then the locale returned by java.util.Locale.getDefault is used. If the specified locale is the empty string, this method will return the raw (unlocalized) manifest headers including any leading "%". |
Dictionary
object containing this bundle's Manifest headers and values.java.lang.SecurityException | If the caller does not have the appropriate AdminPermission[this,METADATA] , and the Java Runtime Environment supports permissions. |
Implemented in org.knopflerfish.framework.BundleImpl, and org.knopflerfish.framework.SystemBundle.
String org.osgi.framework.Bundle.getSymbolicName | ( | ) |
Returns the symbolic name of this bundle as specified by its Bundle-SymbolicName
manifest header.
The name must be unique, it is recommended to use a reverse domain name naming convention like that used for java packages. If the bundle does not have a specified symbolic name then null
is returned.
This method must continue to return this bundle's symbolic name while this bundle is in the UNINSTALLED
state.
Implemented in org.knopflerfish.framework.BundleImpl.
Class org.osgi.framework.Bundle.loadClass | ( | String | name | ) | throws ClassNotFoundException |
Loads the specified class using this bundle's classloader.
If the bundle is a fragment bundle then this method must throw a ClassNotFoundException
.
If this bundle's state is INSTALLED
, this method must attempt to resolve the bundle before attempting to load the class.
If the bundle cannot be resolved, a Framework event of type FrameworkEvent#ERROR is fired containing a BundleException
with details of the reason the bundle could not be resolved. This method must then throw a ClassNotFoundException
.
If this bundle's state is UNINSTALLED
, then an IllegalStateException
is thrown.
name | The name of the class to load. |
java.lang.ClassNotFoundException | If no such class can be found or if this bundle is a fragment bundle or if the caller does not have the appropriate AdminPermission[this,CLASS] , and the Java Runtime Environment supports permissions. | |
java.lang.IllegalStateException | If this bundle has been uninstalled. |
Enumeration org.osgi.framework.Bundle.getResources | ( | String | name | ) | throws IOException |
Find the specified resources from this bundle.
This bundle's class loader is called to search for the specified resources. If this bundle's state is INSTALLED
, this method must attempt to resolve the bundle before attempting to get the specified resources. If this bundle cannot be resolved, then only this bundle must be searched for the specified resources. Imported packages cannot be searched when a bundle has not been resolved. If this bundle is a fragment bundle then null
is returned.
name | The name of the resource. See java.lang.ClassLoader.getResources for a description of the format of a resource name. |
null
if the resource could not be found or if this bundle is a fragment bundle or if the caller does not have the appropriate AdminPermission[this,RESOURCE]
, and the Java Runtime Environment supports permissions.java.lang.IllegalStateException | If this bundle has been uninstalled. | |
java.io.IOException | If there is an I/O error. |
Implemented in org.knopflerfish.framework.BundleImpl.
Enumeration org.osgi.framework.Bundle.getEntryPaths | ( | String | path | ) |
Returns an Enumeration of all the paths (String
objects) to entries within the bundle whose longest sub-path matches the supplied path argument.
The bundle's classloader is not used to search for entries. Only the contents of the bundle is searched. A specified path of "/" indicates the root of the bundle.
Returned paths indicating subdirectory paths end with a "/". The returned paths are all relative to the root of the bundle.
path | The path name for which to return entry paths. |
String
objects) or null
if no entry could be found or if the caller does not have the appropriate AdminPermission[this,RESOURCE]
and the Java Runtime Environment supports permissions. java.lang.IllegalStateException | If this bundle has been uninstalled. |
Implemented in org.knopflerfish.framework.BundleImpl, and org.knopflerfish.framework.SystemBundle.
URL org.osgi.framework.Bundle.getEntry | ( | String | name | ) |
Returns a URL to the specified entry in this bundle.
The bundle's classloader is not used to search for the specified entry. Only the contents of the bundle is searched for the specified entry. A specified path of "/" indicates the root of the bundle.
name | The name of the entry. See java.lang.ClassLoader.getResource for a description of the format of a resource name. |
null
if no entry could be found or if the caller does not have the appropriate AdminPermission[this,RESOURCE]
and the Java Runtime Environment supports permissions.java.lang.IllegalStateException | If this bundle has been uninstalled. |
Implemented in org.knopflerfish.framework.BundleImpl, and org.knopflerfish.framework.SystemBundle.
Referenced by org.openmobileis.bundle.osgi.terminal.ModuleBundleActivator.start().
long org.osgi.framework.Bundle.getLastModified | ( | ) |
Returns the time when this bundle was last modified.
A bundle is considered to be modified when it is installed, updated or uninstalled.
The time value is the number of milliseconds since January 1, 1970, 00:00:00 GMT.
Implemented in org.knopflerfish.framework.BundleImpl.
Enumeration org.osgi.framework.Bundle.findEntries | ( | String | path, | |
String | filePattern, | |||
boolean | recurse | |||
) |
Returns entries in this bundle and its attached fragments.
The bundle's classloader is not used to search for entries. Only the contents of the bundle and its attached fragments are searched for the specified entries.
If this bundle's state is INSTALLED
, this method must attempt to resolve the bundle before attempting to find entries.
This method is intended to be used to obtain configuration, setup, localization and other information from this bundle. This method takes into account that the "contents" of this bundle can be extended with fragments. This "bundle space" is not a namespace with unique members; the same entry name can be present multiple times. This method therefore returns an enumeration of URL objects. These URLs can come from different JARs but have the same path name. This method can either return only entries in the specified path or recurse into subdirectories returning entries in the directory tree beginning at the specified path. Fragments can be attached after this bundle is resolved, possibly changing the set of URLs returned by this method. If this bundle is not resolved, only the entries in the JAR file of this bundle are returned.
Examples:
// List all XML files in the OSGI-INF directory and below Enumeration e = b.findEntries("OSGI-INF", "*.xml", true);
// Find a specific localization file Enumeration e = b.findEntries("OSGI-INF/l10n", "bundle_nl_DU.properties", false); if (e.hasMoreElements()) return (URL) e.nextElement();
path | The path name in which to look. A specified path of "/" indicates the root of the bundle. Path is relative to the root of the bundle and must not be null. | |
filePattern | The file name pattern for selecting entries in the specified path. The pattern is only matched against the last element of the entry path and it supports substring matching, as specified in the Filter specification, using the wildcard character ("*"). If null is specified, this is equivalent to "*" and matches all files. | |
recurse | If true , recurse into subdirectories. Otherwise only return entries from the given directory. |
null
if an entry could not be found or if the caller does not have the appropriate AdminPermission[this,RESOURCE]
, and the Java Runtime Environment supports permissions. The URLs are sorted such that entries from this bundle are returned first followed by the entries from attached fragments in ascending bundle id order. If this bundle is a fragment, then only matching entries in this fragment are returned. Implemented in org.knopflerfish.framework.BundleImpl, and org.knopflerfish.framework.SystemBundle.
final int org.osgi.framework.Bundle.UNINSTALLED = 0x00000001 [static] |
This bundle is uninstalled and may not be used.
The UNINSTALLED
state is only visible after a bundle is uninstalled; the bundle is in an unusable state but references to the Bundle
object may still be available and used for introspection.
The value of UNINSTALLED
is 0x00000001.
Definition at line 81 of file Bundle.java.
Referenced by org.knopflerfish.framework.BundleImpl.extensionNeedsRestart(), org.knopflerfish.framework.BundleImpl.purge(), org.knopflerfish.framework.BundleImpl.start(), org.knopflerfish.framework.BundleImpl.stop(), and org.knopflerfish.framework.BundleImpl.update().
final int org.osgi.framework.Bundle.INSTALLED = 0x00000002 [static] |
This bundle is installed but not yet resolved.
A bundle is in the INSTALLED
state when it has been installed in the Framework but cannot run.
This state is visible if the bundle's code dependencies are not resolved. The Framework may attempt to resolve an INSTALLED
bundle's code dependencies and move the bundle to the RESOLVED
state.
The value of INSTALLED
is 0x00000002.
Definition at line 97 of file Bundle.java.
Referenced by org.knopflerfish.framework.BundleImpl.attachFragments(), org.knopflerfish.framework.BundleImpl.BundleImpl(), org.knopflerfish.framework.BundleImpl.extensionNeedsRestart(), org.knopflerfish.framework.BundleImpl.findEntries(), org.knopflerfish.framework.BundleImpl.getResource(), org.knopflerfish.framework.BundleImpl.getResources(), org.knopflerfish.framework.BundleImpl.getUpdatedState(), org.knopflerfish.framework.BundleImpl.loadClass(), org.knopflerfish.framework.BundleImpl.setStateInstalled(), org.knopflerfish.framework.BundleImpl.start(), org.knopflerfish.framework.BundleImpl.stop(), and org.knopflerfish.framework.BundleImpl.update().
final int org.osgi.framework.Bundle.RESOLVED = 0x00000004 [static] |
This bundle is resolved and is able to be started.
A bundle is in the RESOLVED
state when the Framework has successfully resolved the bundle's dependencies. These dependencies include:
Note that the bundle is not active yet. A bundle must be put in the RESOLVED
state before it can be started. The Framework may attempt to resolve a bundle at any time.
The value of RESOLVED
is 0x00000004.
Definition at line 124 of file Bundle.java.
Referenced by org.knopflerfish.framework.BundleImpl.BundleImpl(), org.knopflerfish.framework.BundleImpl.getUpdatedState(), org.knopflerfish.framework.BundleImpl.start(), org.knopflerfish.framework.BundleImpl.stop(), and org.knopflerfish.framework.BundleImpl.update().
final int org.osgi.framework.Bundle.STARTING = 0x00000008 [static] |
This bundle is in the process of starting.
A bundle is in the STARTING
state when the start method is active. A bundle must be in this state when the bundle's BundleActivator#start is called. If this method completes without exception, then the bundle has successfully started and must move to the ACTIVE
state.
The value of STARTING
is 0x00000008.
Definition at line 138 of file Bundle.java.
Referenced by org.knopflerfish.framework.BundleImpl.start(), org.knopflerfish.framework.BundleImpl.stop(), org.knopflerfish.framework.SystemBundle.SystemBundle(), and org.knopflerfish.framework.BundleImpl.update().
final int org.osgi.framework.Bundle.STOPPING = 0x00000010 [static] |
This bundle is in the process of stopping.
A bundle is in the STOPPING
state when the stop method is active. A bundle must be in this state when the bundle's BundleActivator#stop method is called. When this method completes the bundle is stopped and must move to the RESOLVED
state.
The value of STOPPING
is 0x00000010.
Definition at line 151 of file Bundle.java.
Referenced by org.knopflerfish.framework.BundleImpl.start(), org.knopflerfish.framework.BundleImpl.stop(), org.knopflerfish.framework.SystemBundle.systemShuttingdown(), and org.knopflerfish.framework.BundleImpl.update().
final int org.osgi.framework.Bundle.ACTIVE = 0x00000020 [static] |
This bundle is now running.
A bundle is in the ACTIVE
state when it has been successfully started.
The value of ACTIVE
is 0x00000020.
Definition at line 162 of file Bundle.java.
Referenced by org.knopflerfish.framework.BundleImpl.start(), org.knopflerfish.framework.BundleImpl.stop(), org.knopflerfish.framework.SystemBundle.systemActive(), and org.knopflerfish.framework.BundleImpl.update().