You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by da...@apache.org on 2016/04/01 16:01:36 UTC
svn commit: r1737391 -
/felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/SpecXMLPullParser.java
Author: davidb
Date: Fri Apr 1 14:01:35 2016
New Revision: 1737391
URL: http://svn.apache.org/viewvc?rev=1737391&view=rev
Log:
Fixes FELIX-5230 - Better handling of effective attribute on Requirements
Patch applied on behalf of PK Søreide with many thanks.
This closes #62
Modified:
felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/SpecXMLPullParser.java
Modified: felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/SpecXMLPullParser.java
URL: http://svn.apache.org/viewvc/felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/SpecXMLPullParser.java?rev=1737391&r1=1737390&r2=1737391&view=diff
==============================================================================
--- felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/SpecXMLPullParser.java (original)
+++ felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/SpecXMLPullParser.java Fri Apr 1 14:01:35 2016
@@ -102,7 +102,9 @@ public class SpecXMLPullParser
else if (REQUIREMENT.equals(element))
{
Requirement requirement = parseRequirement(reader);
- resource.addRequire(requirement);
+ if (requirement != null) {
+ resource.addRequire(requirement);
+ }
}
else
{
@@ -328,6 +330,11 @@ public class SpecXMLPullParser
parseAttributesDirectives(reader, attributes, directives, REQUIREMENT);
requirement.setAttributes(attributes);
+ String effective = directives.get("effective");
+ if (effective != null && !effective.equals("resolve")) {
+ return null;
+ }
+
String filter = directives.remove(Namespace.REQUIREMENT_FILTER_DIRECTIVE);
for (String ns : NamespaceTranslator.getTranslatedOSGiNamespaces())
{