@ProviderType public interface BundleStartLevel extends BundleReference
bundle.adapt(BundleStartLevel.class)
on the bundle.
The bundle associated with this BundleStartLevel object can be obtained by
calling BundleReference.getBundle()
.
Modifier and Type | Method and Description |
---|---|
int |
getStartLevel()
Return the assigned start level value for the bundle.
|
boolean |
isActivationPolicyUsed()
Returns whether the bundle's autostart setting indicates that the
activation policy declared in the bundle manifest must be used.
|
boolean |
isPersistentlyStarted()
Returns whether the bundle's autostart setting indicates it must be
started.
|
void |
setStartLevel(int startlevel)
Assign a start level value to the bundle.
|
getBundle
int getStartLevel()
java.lang.IllegalStateException
- If the bundle has been uninstalled.setStartLevel(int)
void setStartLevel(int startlevel)
The bundle will be assigned the specified start level. The start level value assigned to the bundle will be persistently recorded by the Framework.
If the new start level for the bundle is lower than or equal to the
active start level of the Framework and the bundle's autostart setting
indicates this bundle must be started, the Framework will start the
bundle as described in the Bundle.start(int)
method using the
Bundle.START_TRANSIENT
option. The
Bundle.START_ACTIVATION_POLICY
option must also be used if
isActivationPolicyUsed()
returns true
. The actual
starting of the bundle must occur asynchronously.
If the new start level for the bundle is higher than the active start
level of the Framework, the Framework will stop the bundle as described
in the Bundle.stop(int)
method using the
Bundle.STOP_TRANSIENT
option. The actual stopping of the bundle
must occur asynchronously.
startlevel
- The new start level for the bundle.java.lang.IllegalArgumentException
- If the specified start level is less
than or equal to zero, or if the bundle is the system bundle.java.lang.IllegalStateException
- If the bundle has been uninstalled.java.lang.SecurityException
- If the caller does not have
AdminPermission[bundle,EXECUTE]
and the Java runtime
environment supports permissions.boolean isPersistentlyStarted()
The autostart setting of a bundle indicates whether the bundle is to be started when its start level is reached.
true
if the autostart setting of the bundle indicates it
is to be started. false
otherwise.java.lang.IllegalStateException
- If this bundle has been uninstalled.Bundle.START_TRANSIENT
boolean isActivationPolicyUsed()
The autostart setting of a bundle indicates whether the bundle's declared activation policy is to be used when the bundle is started.
true
if the bundle's autostart setting indicates the
activation policy declared in the manifest must be used.
false
if the bundle must be eagerly activated.java.lang.IllegalStateException
- If the bundle has been uninstalled.Bundle.START_ACTIVATION_POLICY
Copyright © OSGi Alliance (2000, 2020). All Rights Reserved. Licensed under the OSGi Specification License, Version 2.0