Class BundlePermission
- java.lang.Object
-
- java.security.Permission
-
- java.security.BasicPermission
-
- org.osgi.framework.BundlePermission
-
- All Implemented Interfaces:
java.io.Serializable,java.security.Guard
public final class BundlePermission extends java.security.BasicPermissionA bundle's authority to require or provide a bundle or to receive or attach fragments.A bundle symbolic name defines a unique fully qualified name. Wildcards may be used.
name ::= <symbolic name> | <symbolic name ending in ".*"> | *
Examples:org.osgi.example.bundle org.osgi.example.* *
BundlePermissionhas four actions:provide,require,host, andfragment. Theprovideaction implies therequireaction.- Since:
- 1.3
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description BundlePermission(java.lang.String symbolicName, java.lang.String actions)Defines the authority to provide and/or require and or specify a host fragment symbolic name within the OSGi environment.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object obj)Determines the equality of twoBundlePermissionobjects.java.lang.StringgetActions()Returns the canonical string representation of theBundlePermissionactions.inthashCode()Returns the hash code value for this object.booleanimplies(java.security.Permission p)Determines if the specified permission is implied by this object.java.security.PermissionCollectionnewPermissionCollection()Returns a newPermissionCollectionobject suitable for storingBundlePermissionobjects.
-
-
-
Field Detail
-
PROVIDE
public static final java.lang.String PROVIDE
The action stringprovide. Theprovideaction implies therequireaction.- See Also:
- Constant Field Values
-
REQUIRE
public static final java.lang.String REQUIRE
The action stringrequire. Therequireaction is implied by theprovideaction.- See Also:
- Constant Field Values
-
HOST
public static final java.lang.String HOST
The action stringhost.- See Also:
- Constant Field Values
-
FRAGMENT
public static final java.lang.String FRAGMENT
The action stringfragment.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
BundlePermission
public BundlePermission(java.lang.String symbolicName, java.lang.String actions)Defines the authority to provide and/or require and or specify a host fragment symbolic name within the OSGi environment.Bundle Permissions are granted over all possible versions of a bundle. A bundle that needs to provide a bundle must have the appropriate
BundlePermissionfor the symbolic name; a bundle that requires a bundle must have the appropriateBundlePermssionfor that symbolic name; a bundle that specifies a fragment host must have the appropriateBundlePermissionfor that symbolic name.- Parameters:
symbolicName- The bundle symbolic name.actions-provide,require,host,fragment(canonical order).
-
-
Method Detail
-
implies
public boolean implies(java.security.Permission p)
Determines if the specified permission is implied by this object.This method checks that the symbolic name of the target is implied by the symbolic name of this object. The list of
BundlePermissionactions must either match or allow for the list of the target object to imply the targetBundlePermissionaction.The permission to provide a bundle implies the permission to require the named symbolic name.
x.y.*,"provide" -> x.y.z,"provide" is true *,"require" -> x.y, "require" is true *,"provide" -> x.y, "require" is true x.y,"provide" -> x.y.z, "provide" is false- Overrides:
impliesin classjava.security.BasicPermission- Parameters:
p- The requested permission.- Returns:
trueif the specifiedBundlePermissionaction is implied by this object;falseotherwise.
-
getActions
public java.lang.String getActions()
Returns the canonical string representation of theBundlePermissionactions.Always returns present
BundlePermissionactions in the following order:provide,require,host,fragment.- Overrides:
getActionsin classjava.security.BasicPermission- Returns:
- Canonical string representation of the
BundlePermissionactions.
-
newPermissionCollection
public java.security.PermissionCollection newPermissionCollection()
Returns a newPermissionCollectionobject suitable for storingBundlePermissionobjects.- Overrides:
newPermissionCollectionin classjava.security.BasicPermission- Returns:
- A new
PermissionCollectionobject.
-
equals
public boolean equals(java.lang.Object obj)
Determines the equality of twoBundlePermissionobjects. This method checks that specified bundle has the same bundle symbolic name andBundlePermissionactions as thisBundlePermissionobject.- Overrides:
equalsin classjava.security.BasicPermission- Parameters:
obj- The object to test for equality with thisBundlePermissionobject.- Returns:
trueifobjis aBundlePermission, and has the same bundle symbolic name and actions as thisBundlePermissionobject;falseotherwise.
-
hashCode
public int hashCode()
Returns the hash code value for this object.- Overrides:
hashCodein classjava.security.BasicPermission- Returns:
- A hash code value for this object.
-
-