Mark Nuttall created ARIES-969:
----------------------------------
Summary: Empty Bundle-Blueprint: header should result in no
blueprint container
Key: ARIES-969
URL: https://issues.apache.org/jira/browse/ARIES-969
Project: Aries
Issue Type: Bug
Components: Application
Affects Versions: 0.4
Reporter: Mark Nuttall
Assignee: Mark Nuttall
Fix For: 0.4
At the end of the OSGi R5 Enterprise spec section 121.3.4 we read,
"If the Bundle-Blueprint header is specified but empty, then the Blueprint
bundle must not be managed. This can be used to temporarily disable a Blueprint
bundle."
This behaviour is not currently implemented. As well as not being
spec-compliant, it can be time consuming to scan large bundles for blueprint
files. I'll firstly use this defect to change the behaviour so as to become
spec-compliant.
One problem with the spec as written is that bundles that do not contain
blueprint must "opt out" of blueprint management by including an empty
Bundle-Blueprint header. This is a problem for users that consume third party
bundles that are unwilling or unable to modify their manifests. So I'm going to
add a system property, "org.apache.aries.blueprint.header.mandatory". Its
default value will be "false". Setting it to 'true' will mean that bundles that
do not contain a Bundle-Blueprint: header in their manifests will not be
scanned for blueprint and will not get runtime blueprint containers.
ModelledResourceManagerImpl.findBlueprints() is expensive for large bundles, so
this will yield substantial performance improvements for such users.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira