Package org.apache.felix.utils.resource
Class ResourceBuilder
- java.lang.Object
-
- org.apache.felix.utils.resource.ResourceBuilder
-
public final class ResourceBuilder extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
ResourceBuilder.ParsedHeaderClause
-
Field Summary
Fields Modifier and Type Field Description private static int
ARGUMENT
private static int
CHAR
private static int
CLAUSE_START
private static java.util.Map<java.lang.String,java.lang.String>
DEFAULT_DIRECTIVES
private static int
DELIMITER
private static int
DIRECTIVE_OR_TYPEDATTRIBUTE
private static int
ENDQUOTE
private static char
EOF
private static int
KEY
private static int
PARAMETER_START
static java.lang.String
RESOLUTION_DYNAMIC
private static int
STARTQUOTE
private static int
VALUE
-
Constructor Summary
Constructors Modifier Constructor Description private
ResourceBuilder()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static ResourceImpl
build(java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap)
static ResourceImpl
build(java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap, boolean removeServiceRequirements)
static ResourceImpl
build(ResourceImpl resource, java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap)
static ResourceImpl
build(ResourceImpl resource, java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap, boolean removeServiceRequirements)
private static char
charAt(int pos, java.lang.String headers, int length)
private static java.util.List<org.osgi.resource.Capability>
convertExports(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource)
private static java.util.List<org.osgi.resource.Capability>
convertExportService(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource)
private static java.util.List<org.osgi.resource.Requirement>
convertImports(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource)
private static java.util.List<org.osgi.resource.Requirement>
convertImportService(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource)
private static java.util.List<org.osgi.resource.Capability>
convertProvideCapabilities(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource)
private static java.util.List<org.osgi.resource.Requirement>
convertRequireCapabilities(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource)
private static java.util.List<org.osgi.resource.Requirement>
convertRequires(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource)
private static ResourceImpl
doBuild(ResourceImpl resource, java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap, boolean removeServiceRequirements)
private static java.lang.String
getBreeVersionClause(org.osgi.framework.Version ver)
private static java.lang.String
getManifestVersion(java.util.Map<java.lang.String,java.lang.String> headerMap)
private static java.util.List<ResourceBuilder.ParsedHeaderClause>
normalizeDynamicImportClauses(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses)
private static java.util.List<ResourceBuilder.ParsedHeaderClause>
normalizeExportClauses(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, java.lang.String bsn, org.osgi.framework.Version bv)
private static java.util.List<ResourceBuilder.ParsedHeaderClause>
normalizeImportClauses(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses)
private static java.util.List<ResourceBuilder.ParsedHeaderClause>
normalizeProvideCapabilityClauses(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses)
private static java.util.List<ResourceBuilder.ParsedHeaderClause>
normalizeRequireCapabilityClauses(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses)
private static java.util.List<ResourceBuilder.ParsedHeaderClause>
normalizeRequireClauses(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses)
private static java.util.List<org.osgi.resource.Requirement>
parseBreeHeader(java.lang.String header, org.osgi.resource.Resource resource)
private static ResourceBuilder.ParsedHeaderClause
parseBundleSymbolicName(java.util.Map<java.lang.String,java.lang.String> headerMap)
static java.util.List<org.osgi.resource.Capability>
parseCapability(org.osgi.resource.Resource resource, java.lang.String capability)
static java.util.List<java.lang.String>
parseDelimitedString(java.lang.String value, java.lang.String delim)
static java.util.List<java.lang.String>
parseDelimitedString(java.lang.String value, java.lang.String delim, boolean trim)
Parses delimited string and returns an array containing the tokens.private static java.util.List<RequirementImpl>
parseFragmentHost(org.osgi.resource.Resource resource, java.util.Map<java.lang.String,java.lang.String> headerMap)
static java.util.List<org.osgi.resource.Requirement>
parseRequirement(org.osgi.resource.Resource resource, java.lang.String requirement)
private static java.util.List<ResourceBuilder.ParsedHeaderClause>
parseStandardHeader(java.lang.String header)
-
-
-
Field Detail
-
RESOLUTION_DYNAMIC
public static final java.lang.String RESOLUTION_DYNAMIC
- See Also:
- Constant Field Values
-
EOF
private static final char EOF
- See Also:
- Constant Field Values
-
CLAUSE_START
private static final int CLAUSE_START
- See Also:
- Constant Field Values
-
PARAMETER_START
private static final int PARAMETER_START
- See Also:
- Constant Field Values
-
KEY
private static final int KEY
- See Also:
- Constant Field Values
-
DIRECTIVE_OR_TYPEDATTRIBUTE
private static final int DIRECTIVE_OR_TYPEDATTRIBUTE
- See Also:
- Constant Field Values
-
ARGUMENT
private static final int ARGUMENT
- See Also:
- Constant Field Values
-
VALUE
private static final int VALUE
- See Also:
- Constant Field Values
-
CHAR
private static final int CHAR
- See Also:
- Constant Field Values
-
DELIMITER
private static final int DELIMITER
- See Also:
- Constant Field Values
-
STARTQUOTE
private static final int STARTQUOTE
- See Also:
- Constant Field Values
-
ENDQUOTE
private static final int ENDQUOTE
- See Also:
- Constant Field Values
-
DEFAULT_DIRECTIVES
private static final java.util.Map<java.lang.String,java.lang.String> DEFAULT_DIRECTIVES
-
-
Method Detail
-
build
public static ResourceImpl build(java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
build
public static ResourceImpl build(java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap, boolean removeServiceRequirements) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
build
public static ResourceImpl build(ResourceImpl resource, java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
build
public static ResourceImpl build(ResourceImpl resource, java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap, boolean removeServiceRequirements) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
doBuild
private static ResourceImpl doBuild(ResourceImpl resource, java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap, boolean removeServiceRequirements) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
parseRequirement
public static java.util.List<org.osgi.resource.Requirement> parseRequirement(org.osgi.resource.Resource resource, java.lang.String requirement) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
parseCapability
public static java.util.List<org.osgi.resource.Capability> parseCapability(org.osgi.resource.Resource resource, java.lang.String capability) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
normalizeImportClauses
private static java.util.List<ResourceBuilder.ParsedHeaderClause> normalizeImportClauses(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
convertExportService
private static java.util.List<org.osgi.resource.Capability> convertExportService(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource)
-
convertImportService
private static java.util.List<org.osgi.resource.Requirement> convertImportService(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
convertImports
private static java.util.List<org.osgi.resource.Requirement> convertImports(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource)
-
normalizeDynamicImportClauses
private static java.util.List<ResourceBuilder.ParsedHeaderClause> normalizeDynamicImportClauses(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
normalizeRequireCapabilityClauses
private static java.util.List<ResourceBuilder.ParsedHeaderClause> normalizeRequireCapabilityClauses(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
normalizeProvideCapabilityClauses
private static java.util.List<ResourceBuilder.ParsedHeaderClause> normalizeProvideCapabilityClauses(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
convertRequireCapabilities
private static java.util.List<org.osgi.resource.Requirement> convertRequireCapabilities(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
convertProvideCapabilities
private static java.util.List<org.osgi.resource.Capability> convertProvideCapabilities(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
normalizeExportClauses
private static java.util.List<ResourceBuilder.ParsedHeaderClause> normalizeExportClauses(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, java.lang.String bsn, org.osgi.framework.Version bv) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
convertExports
private static java.util.List<org.osgi.resource.Capability> convertExports(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource)
-
getManifestVersion
private static java.lang.String getManifestVersion(java.util.Map<java.lang.String,java.lang.String> headerMap)
-
parseBundleSymbolicName
private static ResourceBuilder.ParsedHeaderClause parseBundleSymbolicName(java.util.Map<java.lang.String,java.lang.String> headerMap) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
parseFragmentHost
private static java.util.List<RequirementImpl> parseFragmentHost(org.osgi.resource.Resource resource, java.util.Map<java.lang.String,java.lang.String> headerMap) throws org.osgi.framework.BundleException
- Throws:
org.osgi.framework.BundleException
-
parseBreeHeader
private static java.util.List<org.osgi.resource.Requirement> parseBreeHeader(java.lang.String header, org.osgi.resource.Resource resource)
-
getBreeVersionClause
private static java.lang.String getBreeVersionClause(org.osgi.framework.Version ver)
-
normalizeRequireClauses
private static java.util.List<ResourceBuilder.ParsedHeaderClause> normalizeRequireClauses(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses)
-
convertRequires
private static java.util.List<org.osgi.resource.Requirement> convertRequires(java.util.List<ResourceBuilder.ParsedHeaderClause> clauses, org.osgi.resource.Resource resource)
-
charAt
private static char charAt(int pos, java.lang.String headers, int length)
-
parseStandardHeader
private static java.util.List<ResourceBuilder.ParsedHeaderClause> parseStandardHeader(java.lang.String header)
-
parseDelimitedString
public static java.util.List<java.lang.String> parseDelimitedString(java.lang.String value, java.lang.String delim)
-
parseDelimitedString
public static java.util.List<java.lang.String> parseDelimitedString(java.lang.String value, java.lang.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.trim
- true to trim the string, false else.- Returns:
- a list of string or an empty list if there are none.
-
-