Class PluginParser

java.lang.Object
org.datanucleus.plugin.PluginParser

class PluginParser extends Object
Parser for "manifest.mf" and "plugin.xml" files.
  • Field Details

  • Constructor Details

    • PluginParser

      PluginParser()
  • Method Details

    • parseManifest

      public static Bundle parseManifest(Manifest mf, URL fileUrl)
    • getRequireBundle

      private static List<Bundle.BundleDescription> getRequireBundle(Manifest mf)
      Accessor for the Bundle-Name from the manifest.mf file
      Parameters:
      mf - the manifest
      Returns:
      the Set with BundleDescription
    • parseExtensionPoints

      private static List<ExtensionPoint> parseExtensionPoints(Element rootElement, Bundle plugin, ClassLoaderResolver clr)
      Method to parse ExtensionPoints from plug-in file
      Parameters:
      rootElement - the root element of the plugin xml
      plugin - the plugin bundle
      clr - the ClassLoaderResolver
      Returns:
      a List of extensionPoints, if any
      Throws:
      NucleusException - if an error occurs during parsing
    • parseExtensions

      private static List<Extension> parseExtensions(Element rootElement, Bundle plugin, ClassLoaderResolver clr)
      Method to parse Extensions from plug-in file
      Parameters:
      rootElement - the root element of the plugin xml
      plugin - the plugin bundle
      clr - the ClassLoaderResolver
      Returns:
      a List of extensions, if any
      Throws:
      NucleusException - if an error occurs during parsing
    • getBundleSymbolicName

      private static String getBundleSymbolicName(Manifest mf, String defaultValue)
      Accessor for the Bundle-SymbolicName from the manifest.mf file
      Parameters:
      mf - the manifest
      defaultValue - a default value, in case no symbolic name found in manifest
      Returns:
      the bundle symbolic name
    • getBundleName

      private static String getBundleName(Manifest mf, String defaultValue)
      Accessor for the Bundle-Name from the manifest.mf file
      Parameters:
      mf - the manifest
      defaultValue - a default value, in case no name found in manifest
      Returns:
      the bundle name
    • getBundleVendor

      private static String getBundleVendor(Manifest mf, String defaultValue)
      Accessor for the Bundle-Vendor from the manifest.mf file
      Parameters:
      mf - the manifest
      defaultValue - a default value, in case no vendor found in manifest
      Returns:
      the bundle vendor
    • getBundleVersion

      private static String getBundleVersion(Manifest mf, String defaultValue)
      Accessor for the Bundle-Version from the manifest.mf file
      Parameters:
      mf - the manifest
      defaultValue - a default value, in case no version found in manifest
      Returns:
      the bundle version
    • parsePluginElements

      public static List[] parsePluginElements(DocumentBuilder db, PluginRegistry mgr, URL fileUrl, Bundle plugin, ClassLoaderResolver clr)
      Method to parse Extensions in plug-in file.
      Parameters:
      db - DocumentBuilder to use for parsing
      mgr - the PluginManager
      fileUrl - URL of the plugin.xml file
      clr - the ClassLoaderResolver
      Returns:
      array of 2 elements. first element is a List of extensionPoints, and 2nd element is a List of Extension
      Throws:
      NucleusException - if an error occurs during parsing
    • getDocumentBuilder

      public static DocumentBuilder getDocumentBuilder()
      Convenience method to create a document builder for parsing.
      Returns:
      The document builder
      Throws:
      NucleusException - if an error occurs creating the instance
    • parseConfigurationElement

      public static ConfigurationElement parseConfigurationElement(Extension ex, Element element, ConfigurationElement parent)
      Parses the current element and children, creating a ConfigurationElement object
      Parameters:
      ex - the Extension
      element - the current element
      parent - the parent. null if the parent is Extension
      Returns:
      the ConfigurationElement for the element
    • parseVersionRange

      public static Bundle.BundleVersionRange parseVersionRange(String interval)
      Parse a Version Range as per OSGi spec 3.0 $3.2.5
      Parameters:
      interval - the interval string
      Returns: