Author: gnodet
Date: Fri Mar 18 13:13:28 2011
New Revision: 1082904
URL: http://svn.apache.org/viewvc?rev=1082904&view=rev
Log:
FELIX-2884 - The multiplicity isn't taken into account by the maven bundle
plugin and bundlerepository when generating the repository xml
Modified:
felix/trunk/bundleplugin/pom.xml
felix/trunk/bundleplugin/src/main/resources/org/apache/felix/bundleplugin/blueprint.xsl
felix/trunk/bundlerepository/pom.xml
felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/DataModelHelperImpl.java
Modified: felix/trunk/bundleplugin/pom.xml
URL:
http://svn.apache.org/viewvc/felix/trunk/bundleplugin/pom.xml?rev=1082904&r1=1082903&r2=1082904&view=diff
==============================================================================
--- felix/trunk/bundleplugin/pom.xml (original)
+++ felix/trunk/bundleplugin/pom.xml Fri Mar 18 13:13:28 2011
@@ -66,7 +66,7 @@
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.bundlerepository</artifactId>
- <version>1.6.2</version>
+ <version>1.6.5-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
Modified:
felix/trunk/bundleplugin/src/main/resources/org/apache/felix/bundleplugin/blueprint.xsl
URL:
http://svn.apache.org/viewvc/felix/trunk/bundleplugin/src/main/resources/org/apache/felix/bundleplugin/blueprint.xsl?rev=1082904&r1=1082903&r2=1082904&view=diff
==============================================================================
---
felix/trunk/bundleplugin/src/main/resources/org/apache/felix/bundleplugin/blueprint.xsl
(original)
+++
felix/trunk/bundleplugin/src/main/resources/org/apache/felix/bundleplugin/blueprint.xsl
Fri Mar 18 13:13:28 2011
@@ -88,8 +88,8 @@
</xsl:text>
</xsl:for-each>
- <xsl:for-each select="//bp:reference[@interface] |
//bp:reference-list[@interface]">
- <xsl:value-of select="concat('Import-Service:', @interface)" />
+ <xsl:for-each select="//bp:reference[@interface]">
+ <xsl:value-of select="concat('Import-Service:', @interface,
';multiple:=false')" />
<xsl:choose>
<xsl:when test="@availability">
<xsl:value-of select="concat(';availability:=',
@availability)"/>
@@ -125,7 +125,44 @@
</xsl:text>
</xsl:for-each>
- </xsl:template>
+ <xsl:for-each select="//bp:reference-list[@interface]">
+ <xsl:value-of select="concat('Import-Service:', @interface,
';multiple:=true')"/>
+ <xsl:choose>
+ <xsl:when test="@availability">
+ <xsl:value-of select="concat(';availability:=',
@availability)"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="/bp:blueprint/@default-availability">
+ <xsl:value-of select="concat(';availability:=',
/bp:blueprint/@default-availability)"/>
+ </xsl:when>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:choose>
+ <xsl:when test="@filter">
+ <xsl:choose>
+ <xsl:when test="@component-name">
+ <xsl:value-of
select="concat(';filter="(&', @filter,
')(osgi.service.blueprint.compname=', @component-name, ')"')" />
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="concat(';filter="',
@filter, '"')" />
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="@component-name">
+ <xsl:value-of
select="concat(';filter="(osgi.service.blueprint.compname=',
@component-name, ')"')" />
+ </xsl:when>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:text>
+ </xsl:text>
+ </xsl:for-each>
+
+ </xsl:template>
</xsl:stylesheet>
Modified: felix/trunk/bundlerepository/pom.xml
URL:
http://svn.apache.org/viewvc/felix/trunk/bundlerepository/pom.xml?rev=1082904&r1=1082903&r2=1082904&view=diff
==============================================================================
--- felix/trunk/bundlerepository/pom.xml (original)
+++ felix/trunk/bundlerepository/pom.xml Fri Mar 18 13:13:28 2011
@@ -109,7 +109,7 @@
<Bundle-Vendor>The Apache Software Foundation</Bundle-Vendor>
<Export-Service>org.apache.felix.bundlerepository.RepositoryAdmin,org.osgi.service.obr.RepositoryAdmin</Export-Service>
<_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
-
<Include-Resource>META-INF/LICENSE=LICENSE,META-INF/LICENSE.kxml2=LICENSE.kxml2,META-INF/NOTICE=NOTICE,META-INF/DEPENDENCIES=DEPENDENCIES,{src/main/resources/}</Include-Resource>
+
<Include-Resource>META-INF/LICENSE=LICENSE,META-INF/LICENSE.kxml2=LICENSE.kxml2,META-INF/NOTICE=NOTICE,META-INF/DEPENDENCIES=DEPENDENCIES</Include-Resource>
</instructions>
</configuration>
</plugin>
Modified:
felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/DataModelHelperImpl.java
URL:
http://svn.apache.org/viewvc/felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/DataModelHelperImpl.java?rev=1082904&r1=1082903&r2=1082904&view=diff
==============================================================================
---
felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/DataModelHelperImpl.java
(original)
+++
felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/DataModelHelperImpl.java
Fri Mar 18 13:13:28 2011
@@ -575,8 +575,9 @@ public class DataModelHelperImpl impleme
ri.addText("Import Service " + imports[i].getName());
String avail = imports[i].getDirective("availability");
+ String mult = imports[i].getDirective("multiple");
ri.setOptional("optional".equalsIgnoreCase(avail));
- ri.setMultiple(true);
+ ri.setMultiple(!"false".equalsIgnoreCase(mult));
resource.addRequire(ri);
}