Class DataModelHelperImpl
- java.lang.Object
-
- org.apache.felix.bundlerepository.impl.DataModelHelperImpl
-
- All Implemented Interfaces:
DataModelHelper
public class DataModelHelperImpl extends java.lang.Object implements DataModelHelper
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static interface
DataModelHelperImpl.Headers
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
BUNDLE_LICENSE
static java.lang.String
BUNDLE_SOURCE
-
Constructor Summary
Constructors Constructor Description DataModelHelperImpl()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static void
appendVersion(java.lang.StringBuffer filter, org.apache.felix.utils.version.VersionRange version)
Capability
capability(java.lang.String name, java.util.Map properties)
Create a capabilityprivate static CapabilityImpl
createCapability(java.lang.String name, org.apache.felix.utils.manifest.Clause clause)
private static void
createImportFilter(RequirementImpl requirement, java.lang.String name, org.apache.felix.utils.manifest.Clause clause)
Resource
createResource(java.net.URL bundleUrl)
Create a resource for the bundle located at the given location.Resource
createResource(java.util.jar.Attributes attributes)
Create a resource corresponding to the given manifest entries.ResourceImpl
createResource(DataModelHelperImpl.Headers headers)
Resource
createResource(org.osgi.framework.Bundle bundle)
Create a resource corresponding to the given bundle.private static CapabilityImpl
createServiceCapability(org.apache.felix.utils.manifest.Clause clause)
private static java.lang.String
createServiceFilter(org.apache.felix.utils.manifest.Clause clause)
private static void
doBundle(ResourceImpl resource, DataModelHelperImpl.Headers headers)
private static void
doCategories(ResourceImpl resource, DataModelHelperImpl.Headers headers)
private static void
doExecutionEnvironment(ResourceImpl resource, DataModelHelperImpl.Headers headers)
private static void
doExports(ResourceImpl resource, DataModelHelperImpl.Headers headers)
private static void
doFragment(ResourceImpl resource, DataModelHelperImpl.Headers headers)
private static void
doImportExportServices(ResourceImpl resource, DataModelHelperImpl.Headers headers)
private static java.util.Set
doImportPackageAttributes(RequirementImpl requirement, java.lang.StringBuffer filter, org.apache.felix.utils.manifest.Attribute[] attributes)
private static void
doImports(ResourceImpl resource, DataModelHelperImpl.Headers headers)
private static void
doProvides(ResourceImpl resource, DataModelHelperImpl.Headers headers)
private static void
doRequires(ResourceImpl resource, DataModelHelperImpl.Headers headers)
org.osgi.framework.Filter
filter(java.lang.String filter)
Create an extender filter supporting the SUBSET, SUPERSET and other extensionsprivate static java.lang.String
getManifestVersion(DataModelHelperImpl.Headers headers)
private static java.lang.String
getRelativeUri(Resource resource, java.lang.String name)
private static java.lang.String
getSymbolicName(DataModelHelperImpl.Headers headers)
private static java.lang.String
getVersion(DataModelHelperImpl.Headers headers)
private static java.lang.String
getVersion(org.apache.felix.utils.manifest.Clause clause)
private static org.apache.felix.utils.version.VersionRange
getVersionRange(org.apache.felix.utils.manifest.Clause clause)
(package private) static void
populate(DataModelHelperImpl.Headers headers, ResourceImpl resource)
Capability
readCapability(java.io.Reader reader)
Capability
readCapability(java.lang.String xml)
Property
readProperty(java.io.Reader reader)
Property
readProperty(java.lang.String xml)
Repository
readRepository(java.io.Reader reader)
Repository
readRepository(java.lang.String xml)
Requirement
readRequirement(java.io.Reader reader)
Requirement
readRequirement(java.lang.String xml)
Resource
readResource(java.io.Reader reader)
Resource
readResource(java.lang.String xml)
RepositoryImpl
repository(java.io.InputStream is, java.lang.String uri)
Repository
repository(java.net.URL url)
Create a repository from the specified URL.Repository
repository(Resource[] resources)
Create a repository for the given set of resources.Requirement
requirement(java.lang.String name, java.lang.String filter)
Create a simple requirement to be used for selectionprivate static void
toXml(XmlWriter w, Capability capability)
private static void
toXml(XmlWriter w, Property property)
private static void
toXml(XmlWriter w, Repository repository)
private static void
toXml(XmlWriter w, Requirement requirement)
private static void
toXml(XmlWriter w, Resource resource)
java.lang.String
writeCapability(Capability capability)
void
writeCapability(Capability capability, java.io.Writer writer)
java.lang.String
writeProperty(Property property)
void
writeProperty(Property property, java.io.Writer writer)
java.lang.String
writeRepository(Repository repository)
void
writeRepository(Repository repository, java.io.Writer writer)
java.lang.String
writeRequirement(Requirement requirement)
void
writeRequirement(Requirement requirement, java.io.Writer writer)
java.lang.String
writeResource(Resource resource)
void
writeResource(Resource resource, java.io.Writer writer)
-
-
-
Field Detail
-
BUNDLE_LICENSE
public static final java.lang.String BUNDLE_LICENSE
- See Also:
- Constant Field Values
-
BUNDLE_SOURCE
public static final java.lang.String BUNDLE_SOURCE
- See Also:
- Constant Field Values
-
-
Method Detail
-
requirement
public Requirement requirement(java.lang.String name, java.lang.String filter)
Description copied from interface:DataModelHelper
Create a simple requirement to be used for selection- Specified by:
requirement
in interfaceDataModelHelper
- Returns:
-
filter
public org.osgi.framework.Filter filter(java.lang.String filter)
Description copied from interface:DataModelHelper
Create an extender filter supporting the SUBSET, SUPERSET and other extensions- Specified by:
filter
in interfaceDataModelHelper
- Parameters:
filter
- the string filter- Returns:
-
repository
public Repository repository(java.net.URL url) throws java.lang.Exception
Description copied from interface:DataModelHelper
Create a repository from the specified URL.- Specified by:
repository
in interfaceDataModelHelper
- Returns:
- Throws:
java.lang.Exception
-
repository
public RepositoryImpl repository(java.io.InputStream is, java.lang.String uri) throws java.lang.Exception
- Throws:
java.lang.Exception
-
repository
public Repository repository(Resource[] resources)
Description copied from interface:DataModelHelper
Create a repository for the given set of resources. Such repositories can be used to create a resolver that would resolve on a subset of available resources instead of all of them.- Specified by:
repository
in interfaceDataModelHelper
- Parameters:
resources
- an array of resources- Returns:
- a repository containing the given resources
-
capability
public Capability capability(java.lang.String name, java.util.Map properties)
Description copied from interface:DataModelHelper
Create a capability- Specified by:
capability
in interfaceDataModelHelper
- Parameters:
name
- name of this capabilityproperties
- the properties- Returns:
- a new capability with the specified name and properties
-
writeRepository
public java.lang.String writeRepository(Repository repository)
- Specified by:
writeRepository
in interfaceDataModelHelper
-
writeRepository
public void writeRepository(Repository repository, java.io.Writer writer) throws java.io.IOException
- Specified by:
writeRepository
in interfaceDataModelHelper
- Throws:
java.io.IOException
-
writeResource
public java.lang.String writeResource(Resource resource)
- Specified by:
writeResource
in interfaceDataModelHelper
-
writeResource
public void writeResource(Resource resource, java.io.Writer writer) throws java.io.IOException
- Specified by:
writeResource
in interfaceDataModelHelper
- Throws:
java.io.IOException
-
writeCapability
public java.lang.String writeCapability(Capability capability)
- Specified by:
writeCapability
in interfaceDataModelHelper
-
writeCapability
public void writeCapability(Capability capability, java.io.Writer writer) throws java.io.IOException
- Specified by:
writeCapability
in interfaceDataModelHelper
- Throws:
java.io.IOException
-
writeRequirement
public java.lang.String writeRequirement(Requirement requirement)
- Specified by:
writeRequirement
in interfaceDataModelHelper
-
writeRequirement
public void writeRequirement(Requirement requirement, java.io.Writer writer) throws java.io.IOException
- Specified by:
writeRequirement
in interfaceDataModelHelper
- Throws:
java.io.IOException
-
writeProperty
public java.lang.String writeProperty(Property property)
- Specified by:
writeProperty
in interfaceDataModelHelper
-
writeProperty
public void writeProperty(Property property, java.io.Writer writer) throws java.io.IOException
- Specified by:
writeProperty
in interfaceDataModelHelper
- Throws:
java.io.IOException
-
toXml
private static void toXml(XmlWriter w, Repository repository) throws java.io.IOException
- Throws:
java.io.IOException
-
toXml
private static void toXml(XmlWriter w, Resource resource) throws java.io.IOException
- Throws:
java.io.IOException
-
getRelativeUri
private static java.lang.String getRelativeUri(Resource resource, java.lang.String name)
-
toXml
private static void toXml(XmlWriter w, Capability capability) throws java.io.IOException
- Throws:
java.io.IOException
-
toXml
private static void toXml(XmlWriter w, Property property) throws java.io.IOException
- Throws:
java.io.IOException
-
toXml
private static void toXml(XmlWriter w, Requirement requirement) throws java.io.IOException
- Throws:
java.io.IOException
-
createResource
public Resource createResource(org.osgi.framework.Bundle bundle)
Description copied from interface:DataModelHelper
Create a resource corresponding to the given bundle.- Specified by:
createResource
in interfaceDataModelHelper
- Parameters:
bundle
- the bundle- Returns:
- the corresponding resource
-
createResource
public Resource createResource(java.net.URL bundleUrl) throws java.io.IOException
Description copied from interface:DataModelHelper
Create a resource for the bundle located at the given location.- Specified by:
createResource
in interfaceDataModelHelper
- Parameters:
bundleUrl
- the location of the bundle- Returns:
- the corresponding resource
- Throws:
java.io.IOException
-
createResource
public Resource createResource(java.util.jar.Attributes attributes)
Description copied from interface:DataModelHelper
Create a resource corresponding to the given manifest entries.- Specified by:
createResource
in interfaceDataModelHelper
- Parameters:
attributes
- the manifest headers- Returns:
- the corresponding resource
-
createResource
public ResourceImpl createResource(DataModelHelperImpl.Headers headers)
-
populate
static void populate(DataModelHelperImpl.Headers headers, ResourceImpl resource)
-
doCategories
private static void doCategories(ResourceImpl resource, DataModelHelperImpl.Headers headers)
-
doImportExportServices
private static void doImportExportServices(ResourceImpl resource, DataModelHelperImpl.Headers headers)
-
createServiceFilter
private static java.lang.String createServiceFilter(org.apache.felix.utils.manifest.Clause clause)
-
createServiceCapability
private static CapabilityImpl createServiceCapability(org.apache.felix.utils.manifest.Clause clause)
-
doFragment
private static void doFragment(ResourceImpl resource, DataModelHelperImpl.Headers headers)
-
doRequires
private static void doRequires(ResourceImpl resource, DataModelHelperImpl.Headers headers)
-
doBundle
private static void doBundle(ResourceImpl resource, DataModelHelperImpl.Headers headers)
-
doExports
private static void doExports(ResourceImpl resource, DataModelHelperImpl.Headers headers)
-
doProvides
private static void doProvides(ResourceImpl resource, DataModelHelperImpl.Headers headers)
-
createCapability
private static CapabilityImpl createCapability(java.lang.String name, org.apache.felix.utils.manifest.Clause clause)
-
doImports
private static void doImports(ResourceImpl resource, DataModelHelperImpl.Headers headers)
-
createImportFilter
private static void createImportFilter(RequirementImpl requirement, java.lang.String name, org.apache.felix.utils.manifest.Clause clause)
-
doImportPackageAttributes
private static java.util.Set doImportPackageAttributes(RequirementImpl requirement, java.lang.StringBuffer filter, org.apache.felix.utils.manifest.Attribute[] attributes)
-
doExecutionEnvironment
private static void doExecutionEnvironment(ResourceImpl resource, DataModelHelperImpl.Headers headers)
-
getVersion
private static java.lang.String getVersion(org.apache.felix.utils.manifest.Clause clause)
-
getVersionRange
private static org.apache.felix.utils.version.VersionRange getVersionRange(org.apache.felix.utils.manifest.Clause clause)
-
getSymbolicName
private static java.lang.String getSymbolicName(DataModelHelperImpl.Headers headers)
-
getVersion
private static java.lang.String getVersion(DataModelHelperImpl.Headers headers)
-
getManifestVersion
private static java.lang.String getManifestVersion(DataModelHelperImpl.Headers headers)
-
appendVersion
private static void appendVersion(java.lang.StringBuffer filter, org.apache.felix.utils.version.VersionRange version)
-
readRepository
public Repository readRepository(java.lang.String xml) throws java.lang.Exception
- Specified by:
readRepository
in interfaceDataModelHelper
- Throws:
java.lang.Exception
-
readRepository
public Repository readRepository(java.io.Reader reader) throws java.lang.Exception
- Specified by:
readRepository
in interfaceDataModelHelper
- Throws:
java.lang.Exception
-
readResource
public Resource readResource(java.lang.String xml) throws java.lang.Exception
- Specified by:
readResource
in interfaceDataModelHelper
- Throws:
java.lang.Exception
-
readResource
public Resource readResource(java.io.Reader reader) throws java.lang.Exception
- Specified by:
readResource
in interfaceDataModelHelper
- Throws:
java.lang.Exception
-
readCapability
public Capability readCapability(java.lang.String xml) throws java.lang.Exception
- Specified by:
readCapability
in interfaceDataModelHelper
- Throws:
java.lang.Exception
-
readCapability
public Capability readCapability(java.io.Reader reader) throws java.lang.Exception
- Specified by:
readCapability
in interfaceDataModelHelper
- Throws:
java.lang.Exception
-
readRequirement
public Requirement readRequirement(java.lang.String xml) throws java.lang.Exception
- Specified by:
readRequirement
in interfaceDataModelHelper
- Throws:
java.lang.Exception
-
readRequirement
public Requirement readRequirement(java.io.Reader reader) throws java.lang.Exception
- Specified by:
readRequirement
in interfaceDataModelHelper
- Throws:
java.lang.Exception
-
readProperty
public Property readProperty(java.lang.String xml) throws java.lang.Exception
- Specified by:
readProperty
in interfaceDataModelHelper
- Throws:
java.lang.Exception
-
readProperty
public Property readProperty(java.io.Reader reader) throws java.lang.Exception
- Specified by:
readProperty
in interfaceDataModelHelper
- Throws:
java.lang.Exception
-
-