Class Subsystem

  • All Implemented Interfaces:
    org.osgi.resource.Resource

    public class Subsystem
    extends org.apache.felix.utils.resource.ResourceImpl
    A Resource representing ...
    • Constructor Detail

      • Subsystem

        public Subsystem​(String name)
        Constructs root subsystem Resource for FeaturesService.ROOT_REGION that imports/exports only caps/reqs with (type=karaf.subsystem). Root subsystem by default accepts dependencies - will gather dependant features of child feature subsystems, effectively _flattening_ the set of features within single region's subsystem.
        Parameters:
        name - The name of the subsystem.
      • Subsystem

        public Subsystem​(String name,
                         Feature feature,
                         Subsystem parent,
                         boolean mandatory)
        Constructs subsystem for a feature that either imports/exports all caps or (see Feature.getScoping()) has configurable import/export policy + (|(type=karaf.subsystem)(type=karaf.feature)) filter in IdentityNamespace.IDENTITY_NAMESPACE. Such subsystem requires type=karaf.feature; osgi.identity=feature-name[; version=feature-version].
        Parameters:
        name - The subsystem name.
        feature - The feature.
        parent - The parent subsystem.
        mandatory - True if mandatory, false else.
      • Subsystem

        public Subsystem​(String name,
                         Subsystem parent,
                         boolean acceptDependencies,
                         boolean mandatory)
        Constructs child subsystem Resource for FeaturesService.ROOT_REGION's child that imports all caps and exports only caps with (type=karaf.subsystem).
        Parameters:
        name - The subsystem name.
        parent - The parent subsystem.
        acceptDependencies - True to accept dependencies, false else.
        mandatory - True to mandatory, false else.
    • Method Detail

      • getInstallable

        public List<org.osgi.resource.Resource> getInstallable()
      • getName

        public String getName()
      • isAcceptDependencies

        public boolean isAcceptDependencies()
      • getFeature

        public Feature getFeature()
      • createSubsystem

        public Subsystem createSubsystem​(String name,
                                         boolean acceptDependencies)
        Create child subsystem for this subsystem. Child will become parent's mandatory requirement to force its resolution.
        Parameters:
        name - The subsystem name.
        acceptDependencies - True to accept dependencies, false else.
      • addSystemResource

        public void addSystemResource​(org.osgi.resource.Resource resource)
      • requireFeature

        public void requireFeature​(String name,
                                   String range,
                                   boolean mandatory)
      • require

        public void require​(String requirement)
                     throws org.osgi.framework.BundleException
        Throws:
        org.osgi.framework.BundleException
      • addRequirement

        protected void addRequirement​(String requirement)
                               throws org.osgi.framework.BundleException
        Throws:
        org.osgi.framework.BundleException
      • collectPrerequisites

        public Set<String> collectPrerequisites()
      • toString

        public String toString()
        Overrides:
        toString in class org.apache.felix.utils.resource.ResourceImpl