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 classResourceBuilder.ParsedHeaderClause
-
Field Summary
Fields Modifier and Type Field Description private static intARGUMENTprivate static intCHARprivate static intCLAUSE_STARTprivate static java.util.Map<java.lang.String,java.lang.String>DEFAULT_DIRECTIVESprivate static intDELIMITERprivate static intDIRECTIVE_OR_TYPEDATTRIBUTEprivate static intENDQUOTEprivate static charEOFprivate static intKEYprivate static intPARAMETER_STARTstatic java.lang.StringRESOLUTION_DYNAMICprivate static intSTARTQUOTEprivate static intVALUE
-
Constructor Summary
Constructors Modifier Constructor Description privateResourceBuilder()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static ResourceImplbuild(java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap)static ResourceImplbuild(java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap, boolean removeServiceRequirements)static ResourceImplbuild(ResourceImpl resource, java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap)static ResourceImplbuild(ResourceImpl resource, java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap, boolean removeServiceRequirements)private static charcharAt(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 ResourceImpldoBuild(ResourceImpl resource, java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headerMap, boolean removeServiceRequirements)private static java.lang.StringgetBreeVersionClause(org.osgi.framework.Version ver)private static java.lang.StringgetManifestVersion(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.ParsedHeaderClauseparseBundleSymbolicName(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.
-
-