public class

OsgiHeaderUtil

extends Object
java.lang.Object
   ↳ com.atlassian.plugin.osgi.util.OsgiHeaderUtil

Class Overview

Utilities to help create OSGi headers

Summary

Public Constructors
OsgiHeaderUtil()
Public Methods
static String buildHeader(String key, Map<StringString> attrs)
Builds the header string from a map
static String findReferredPackages(List<HostComponentRegistration> registrations, Map<StringString> packageVersions)
Finds all referred packages for host component registrations by scanning their declared interfaces' bytecode.
static String findReferredPackages(List<HostComponentRegistration> registrations)
Finds all referred packages for host component registrations by scanning their declared interfaces' bytecode.
static String getPluginKey(Manifest mf)
Gets the plugin key from the jar manifest
static String getPluginKey(Bundle bundle)
Gets the plugin key from the bundle WARNING: shamelessly copied at com.atlassian.plugin.osgi.bridge.PluginBundleUtils, which can't use this class due to creating a cyclic build dependency.
static Map<StringMap<StringString>> parseHeader(String header)
Parses an OSGi header line into a map structure
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public OsgiHeaderUtil ()

Public Methods

public static String buildHeader (String key, Map<StringString> attrs)

Builds the header string from a map

Parameters
key The header value
attrs The map of attributes
Returns
  • A string, suitable for inclusion into an OSGI header string

public static String findReferredPackages (List<HostComponentRegistration> registrations, Map<StringString> packageVersions)

Finds all referred packages for host component registrations by scanning their declared interfaces' bytecode.

Parameters
registrations A list of host component registrations
Returns
  • The referred packages in a format compatible with an OSGi header
Throws
IOException If there are any problems scanning bytecode

public static String findReferredPackages (List<HostComponentRegistration> registrations)

Finds all referred packages for host component registrations by scanning their declared interfaces' bytecode.

Parameters
registrations A list of host component registrations
Returns
  • The referred packages in a format compatible with an OSGi header
Throws
IOException If there are any problems scanning bytecode

public static String getPluginKey (Manifest mf)

Gets the plugin key from the jar manifest

Parameters
mf The plugin jar manifest
Returns
  • The plugin key, cannot be null

public static String getPluginKey (Bundle bundle)

Gets the plugin key from the bundle WARNING: shamelessly copied at com.atlassian.plugin.osgi.bridge.PluginBundleUtils, which can't use this class due to creating a cyclic build dependency. Ensure these two implementations are in sync.

Parameters
bundle The plugin bundle
Returns
  • The plugin key, cannot be null

public static Map<StringMap<StringString>> parseHeader (String header)

Parses an OSGi header line into a map structure

Parameters
header The header line
Returns
  • A map with the key the entry value and the value a map of attributes