Author: tjwatson
Date: Thu Jan 22 16:35:38 2015
New Revision: 1653939
URL: http://svn.apache.org/r1653939
Log:
ARIES-1283 - Subsystem import/export service header parsing is incorrect
Modified:
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/Grammar.java
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/SubsystemExportServiceHeader.java
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/SubsystemImportServiceHeader.java
aries/trunk/subsystem/subsystem-itests/src/test/resources/composite2/OSGI-INF/SUBSYSTEM.MF
Modified:
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/Grammar.java
URL:
http://svn.apache.org/viewvc/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/Grammar.java?rev=1653939&r1=1653938&r2=1653939&view=diff
==============================================================================
---
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/Grammar.java
(original)
+++
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/Grammar.java
Thu Jan 22 16:35:38 2015
@@ -134,9 +134,6 @@ public interface Grammar {
public static final String OBJECTCLASS = PACKAGENAME;
public static final String SERVICE_OR_WILDCARD = "(" + OBJECTCLASS +
"|[*])(?:;\\s*(?:" + PARAMETER + "))*";
- public static final String SUBSYSTEM_IMPORTEXPORTSERVICE =
SERVICE_OR_WILDCARD + "(?:,\\s*(?:" + SERVICE_OR_WILDCARD + "))*";
- public static final String SUBSYSTEM_EXPORTSERVICE =
SUBSYSTEM_IMPORTEXPORTSERVICE;
- public static final String SUBSYSTEM_IMPORTSERVICE =
SUBSYSTEM_IMPORTEXPORTSERVICE;
public static final String RESOURCE = SYMBOLICNAME + "(?:;\\s*(?:" +
PARAMETER + "))*";
public static final String PREFERRED_PROVIDER = RESOURCE +
"(?:,\\s*(?:" + RESOURCE + "))*";
Modified:
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/SubsystemExportServiceHeader.java
URL:
http://svn.apache.org/viewvc/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/SubsystemExportServiceHeader.java?rev=1653939&r1=1653938&r2=1653939&view=diff
==============================================================================
---
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/SubsystemExportServiceHeader.java
(original)
+++
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/SubsystemExportServiceHeader.java
Thu Jan 22 16:35:38 2015
@@ -164,7 +164,7 @@ public class SubsystemExportServiceHeade
public static final String NAME =
SubsystemConstants.SUBSYSTEM_EXPORTSERVICE;
- private static final Pattern PATTERN = Pattern.compile("(" +
Grammar.SUBSYSTEM_EXPORTSERVICE + ")(?=,|\\z)");
+ private static final Pattern PATTERN = Pattern.compile("(" +
Grammar.SERVICE_OR_WILDCARD + ")(?=,|\\z)");
private final Set<Clause> clauses = new HashSet<Clause>();
Modified:
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/SubsystemImportServiceHeader.java
URL:
http://svn.apache.org/viewvc/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/SubsystemImportServiceHeader.java?rev=1653939&r1=1653938&r2=1653939&view=diff
==============================================================================
---
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/SubsystemImportServiceHeader.java
(original)
+++
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/archive/SubsystemImportServiceHeader.java
Thu Jan 22 16:35:38 2015
@@ -144,7 +144,7 @@ public class SubsystemImportServiceHeade
public static final String NAME =
SubsystemConstants.SUBSYSTEM_IMPORTSERVICE;
- private static final Pattern PATTERN = Pattern.compile("(" +
Grammar.SUBSYSTEM_IMPORTSERVICE + ")(?=,|\\z)");
+ private static final Pattern PATTERN = Pattern.compile("(" +
Grammar.SERVICE_OR_WILDCARD + ")(?=,|\\z)");
private static Collection<Clause> processHeader(String header) {
Matcher matcher = PATTERN.matcher(header);
Modified:
aries/trunk/subsystem/subsystem-itests/src/test/resources/composite2/OSGI-INF/SUBSYSTEM.MF
URL:
http://svn.apache.org/viewvc/aries/trunk/subsystem/subsystem-itests/src/test/resources/composite2/OSGI-INF/SUBSYSTEM.MF?rev=1653939&r1=1653938&r2=1653939&view=diff
==============================================================================
---
aries/trunk/subsystem/subsystem-itests/src/test/resources/composite2/OSGI-INF/SUBSYSTEM.MF
(original)
+++
aries/trunk/subsystem/subsystem-itests/src/test/resources/composite2/OSGI-INF/SUBSYSTEM.MF
Thu Jan 22 16:35:38 2015
@@ -2,5 +2,5 @@ Subsystem-SymbolicName: org.apache.aries
Subsystem-Type: osgi.subsystem.composite
Subsystem-Content:
org.apache.aries.subsystem.itests.tb4;version="[1.0.0,1.0.0]"
Import-Package: org.osgi.framework,org.osgi.util.tracker
-Subsystem-ExportService: *;filter:="(test=tb4)"
-Subsystem-ImportService: *;filter:="(test=testCompositeServiceImports)"
\ No newline at end of file
+Subsystem-ExportService: does.not.exist;
filter:="(a=b)",*;filter:="(test=tb4)", does.not.exist1; filter:="(q=g)"
+Subsystem-ImportService: does.not.exist;
filter:="(a=b)",*;filter:="(test=testCompositeServiceImports)",does.not.exist1;
filter:="(q=g)"
\ No newline at end of file