Class BundleNamespace


  • public final class BundleNamespace
    extends AbstractWiringNamespace
    Bundle Capability and Requirement Namespace.

    This class defines the names for the attributes and directives for this namespace. All unspecified capability attributes are of type String and are used as arbitrary matching attributes for the capability. The values associated with the specified directive and attribute keys are of type String, unless otherwise indicated.

    Unless otherwise noted, all directives specified on the Bundle-SymbolicName header are visible in the capability and all directives specified on the Require-Bundle header are visible in the requirement.

    • The uses directive must be ignored. A uses directive specified on the Bundle-SymbolicName header must be ignored. A uses directive must not be present in the capability.
    • The effective directives must be ignored. This namespace is only effective at resolve time. An effective directive specified on the Bundle-SymbolicName or Require-Bundle headers must be ignored. An effective directive must not be present in a capability or requirement.
    • The cardinality directive must be ignored. A cardinality directive specified on the Require-Bundle header must be ignored. A cardinality directive must not be present in a requirement.

    A non-fragment resource with the osgi.bundle type identity provides exactly one bundle capability (that is, the bundle can be required by another bundle). A fragment resource with the osgi.fragment type identity must not declare a bundle capability. A resource requires zero or more bundle requirements (that is, required bundles).

    † A resource with no symbolic name must not provide a bundle capability.

    • Field Detail

      • BUNDLE_NAMESPACE

        public static final java.lang.String BUNDLE_NAMESPACE
        Namespace name for bundle capabilities and requirements.

        Also, the capability attribute used to specify the symbolic name of the bundle.

        See Also:
        Constant Field Values
      • CAPABILITY_SINGLETON_DIRECTIVE

        public static final java.lang.String CAPABILITY_SINGLETON_DIRECTIVE
        The capability directive identifying if the resource is a singleton. A String value of "true" indicates the resource is a singleton; any other value or null indicates the resource is not a singleton.

        This directive should be examined using the identity namespace.

        See Also:
        IdentityNamespace.CAPABILITY_SINGLETON_DIRECTIVE, Constant Field Values
      • REQUIREMENT_VISIBILITY_DIRECTIVE

        public static final java.lang.String REQUIREMENT_VISIBILITY_DIRECTIVE
        The requirement directive used to specify the visibility type for a requirement. The default value is private.
        See Also:
        private, reexport, Constant Field Values
      • VISIBILITY_PRIVATE

        public static final java.lang.String VISIBILITY_PRIVATE
        The directive value identifying a private visibility type. A private visibility type indicates that any packages that are exported by the required bundle are not made visible on the export signature of the requiring bundle. .
        See Also:
        REQUIREMENT_VISIBILITY_DIRECTIVE, Constant Field Values