org.apache.felix.framework.util.manifestparser

## Class ManifestParser

- java.lang.Object
- - org.apache.felix.framework.util.manifestparser.ManifestParser

    public class ManifestParser
    extends Object

### Constructor Summary

Constructors
Constructor and Description
`ManifestParser(Logger logger, Map<String,Object> configMap, BundleRevision owner, Map<String,Object> headerMap)`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static List<BundleCapability>` `aliasSymbolicName(List<BundleCapability> caps, BundleRevision owner)`
`String` `getActivationExcludeDirective()`
`String` `getActivationIncludeDirective()`
`int` `getActivationPolicy()`
`Version` `getBundleVersion()`
`List<BundleCapability>` `getCapabilities()`
`List<NativeLibrary>` `getLibraries()` This method returns the selected native library metadata from the manifest.
`String` `getManifestVersion()`
`List<BundleRequirement>` `getRequirements()`
`String` `getSymbolicName()`
`boolean` `isExtension()`
`static void` `main(String[] headers)`
`static List<String>` `parseDelimitedString(String value, String delim)`
`static List<String>` `parseDelimitedString(String value, String delim, boolean trim)` Parses delimited string and returns an array containing the tokens.
`static List<BundleRequirement>` `parseDynamicImportHeader(Logger logger, BundleRevision owner, String header)`
`static String` `parseExtensionBundleHeader(String header)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### ManifestParser

    public ManifestParser(Logger logger,
                          Map<String,Object> configMap,
                          BundleRevision owner,
                          Map<String,Object> headerMap)
                   throws BundleException

Throws:
  `BundleException`

### Method Detail

#### parseDynamicImportHeader

    public static List<BundleRequirement> parseDynamicImportHeader(Logger logger,
                                                                   BundleRevision owner,
                                                                   String header)
                                                            throws BundleException

Throws:
  `BundleException`

#### getManifestVersion

    public String getManifestVersion()

#### getActivationPolicy

    public int getActivationPolicy()

#### getActivationIncludeDirective

    public String getActivationIncludeDirective()

#### getActivationExcludeDirective

    public String getActivationExcludeDirective()

#### isExtension

    public boolean isExtension()

#### getSymbolicName

    public String getSymbolicName()

#### getBundleVersion

    public Version getBundleVersion()

#### getCapabilities

    public List<BundleCapability> getCapabilities()

#### getRequirements

    public List<BundleRequirement> getRequirements()

#### getLibraries

    public List<NativeLibrary> getLibraries()

This method returns the selected native library metadata from the manifest. The information is not the raw metadata from the manifest, but is the native library clause selected according to the OSGi native library clause selection policy. The metadata returned by this method will be attached directly to a module and used for finding its native libraries at run time. To inspect the raw native library metadata refer to `getLibraryClauses()`.

This method returns one of three values:

- `null` - if the are no native libraries for this module; this may also indicate the native libraries are optional and did not match the current platform.
- Zero-length `NativeLibrary` array - if no matching native library clause was found; this bundle should not resolve.
- Nonzero-length `NativeLibrary` array - the native libraries associated with the matching native library clause.

Returns:
  `null` if there are no native libraries, a zero-length array if no libraries matched, or an array of selected libraries.

#### parseExtensionBundleHeader

    public static String parseExtensionBundleHeader(String header)
                                             throws BundleException

Throws:
  `BundleException`

#### main

    public static void main(String[] headers)

#### parseDelimitedString

    public static List<String> parseDelimitedString(String value,
                                                    String delim)

#### parseDelimitedString

    public static List<String> parseDelimitedString(String value,
                                                    String delim,
                                                    boolean trim)

Parses delimited string and returns an array containing the tokens. This parser obeys quotes, so the delimiter character will be ignored if it is inside of a quote. This method assumes that the quote character is not included in the set of delimiter characters.

Parameters:
  `value` - the delimited string to parse.
  `delim` - the characters delimiting the tokens.
Returns:
  a list of string or an empty list if there are none.

#### aliasSymbolicName

    public static List<BundleCapability> aliasSymbolicName(List<BundleCapability> caps,
                                                           BundleRevision owner)