OBR Repository generation is broken - it produces multiple requirements for
blueprint services
----------------------------------------------------------------------------------------------
Key: ARIES-425
URL: https://issues.apache.org/jira/browse/ARIES-425
Project: Aries
Issue Type: Bug
Components: Application
Affects Versions: 0.3
Reporter: Timothy Ward
Priority: Blocker
Fix For: 0.3
The OSR Resolver does not work with optional service dependencies because it
generates two <require> elements for each service. One of these is ALWAYS
mandatory.
A sample xml snippet from the blog-biz project follows
<resource id="org.apache.aries.samples.blog.biz/0.3.0.incubating-SNAPSHOT"
presentationname="Apache Aries blog sample"
symbolicname="org.apache.aries.samples.blog.biz" uri=""
version="0.3.0.incubating-SNAPSHOT">
<capability name="bundle">
<p n="presentationname" v="Apache Aries blog sample"/>
<p n="version" t="version" v="0.3.0.incubating-SNAPSHOT"/>
<p n="symbolicname" v="org.apache.aries.samples.blog.biz"/>
<p n="Bundle-ManifestVersion" v="2"/>
<p n="mandatory" v=""/>
</capability>
<capability name="service">
<p n="service" v="service"/>
<p n="osgi.service.blueprint.compname" v="bloggingServiceComponent"/>
<p n="objectClass" t="set"
v="org.apache.aries.samples.blog.api.BloggingService"/>
<p n="service.ranking" v="0"/>
<p n="mandatory" v=""/>
</capability>
<capability name="service">
<p n="service" v="service"/>
<p n="objectClass" t="set"
v="org.apache.aries.samples.blog.api.BloggingService"/>
<p n="service.ranking" v="0"/>
<p n="mandatory" v=""/>
</capability>
<require extend="false"
filter="(&(package=org.apache.aries.samples.blog.api)(version>=0.3.0)(version<=0.4.0)(!(version=0.4.0)))"
multiple="false" name="package" optional="false">Requires package with
attributes {package=org.apache.aries.samples.blog.api,
version=[0.3.0,0.4.0)}</require>
<require extend="false"
filter="(&(package=org.apache.aries.samples.blog.api.persistence)(version>=0.3.0)(version<=0.4.0)(!(version=0.4.0)))"
multiple="false" name="package" optional="false">Requires package with
attributes {package=org.apache.aries.samples.blog.api.persistence,
version=[0.3.0,0.4.0)}</require>
<require extend="false"
filter="(&(package=org.apache.aries.samples.blog.api.comment.persistence)(version>=0.3.0)(version<=0.4.0)(!(version=0.4.0)))"
multiple="false" name="package" optional="false">Requires package with
attributes {package=org.apache.aries.samples.blog.api.comment.persistence,
version=[0.3.0,0.4.0)}</require>
<require extend="false"
filter="(&(package=org.osgi.service.blueprint)(version>=1.0.0)(version<=2.0.0)(!(version=2.0.0)))"
multiple="false" name="package" optional="false">Requires package with
attributes {package=org.osgi.service.blueprint, version=[1.0.0,2.0.0)}</require>
<require extend="false"
filter="(&(service=service)(objectClass=org.apache.aries.samples.blog.api.comment.persistence.BlogCommentService)(mandatory:<*service))"
multiple="false" name="service" optional="true">Requires service with
attributes {service=service,
objectClass=org.apache.aries.samples.blog.api.comment.persistence.BlogCommentService}</require>
<require extend="false"
filter="(&(service=service)(objectClass=org.apache.aries.samples.blog.api.persistence.BlogPersistenceService)(mandatory:<*service))"
multiple="false" name="service" optional="false">Requires service with
attributes {service=service,
objectClass=org.apache.aries.samples.blog.api.persistence.BlogPersistenceService}</require>
<require extend="false"
filter="(&(service=service)(objectClass=org.apache.aries.samples.blog.api.comment.persistence.BlogCommentService)(mandatory:<*service))"
multiple="false" name="service" optional="false">Requires service with
attributes {service=service,
objectClass=org.apache.aries.samples.blog.api.comment.persistence.BlogCommentService}</require>
<require extend="false"
filter="(&(service=service)(objectClass=org.apache.aries.samples.blog.api.persistence.BlogPersistenceService)(mandatory:<*service))"
multiple="false" name="service" optional="false">Requires service with
attributes {service=service,
objectClass=org.apache.aries.samples.blog.api.persistence.BlogPersistenceService}</require>
</resource>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.