Interface BundleReader

  • All Known Implementing Classes:
    DefaultBundleReader

    public interface BundleReader
    Cache for OSGi manifest files and bundle classpath entries.
    • Method Detail

      • loadManifest

        OsgiManifest loadManifest​(File bundleLocation)
                           throws OsgiManifestParserException,
                                  InvalidOSGiManifestException
        Load and cache OSGi manifest from path META-INF/MANIFEST.MF under the given location. If no META-INF/MANIFEST.MF is found but plugin.xml or fragment.xml is found, an attempt is made to convert it into an OSGi MANIFEST.
        Parameters:
        bundleLocation - can be either a directory or a jar file
        Returns:
        the OSGi MANIFEST, never null
        Throws:
        OsgiManifestParserException - if no valid MANIFEST is found in bundleLocation or it cannot be converted from plugin.xml/fragment.xml.
        InvalidOSGiManifestException - if valid MANIFEST is found but it does not have valid mandatory OSGi headers
      • getEntry

        File getEntry​(File bundleLocation,
                      String path)
        Returns bundle entry with given path or null if no such entry exists. If bundle is a jar, the entry will be extracted into a cached location.
        Parameters:
        bundleLocation - can be either a directory or a jar file
        path - path relative to the bundle root. Paths starting with "external:" are ignored