You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by mn...@apache.org on 2010/10/14 15:00:16 UTC

svn commit: r1022505 - in /incubator/aries/trunk/application/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr: OBRAriesResolver.java impl/RequirementImpl.java

Author: mnuttall
Date: Thu Oct 14 13:00:14 2010
New Revision: 1022505

URL: http://svn.apache.org/viewvc?rev=1022505&view=rev
Log:
ARIES-361: Change to RequirementImpl.isSatisfied(): getProperties() mangles version strings whereas getPropertiesAsMap() does not. Also a small fix to OBRAriesResolver. 

Modified:
    incubator/aries/trunk/application/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/OBRAriesResolver.java
    incubator/aries/trunk/application/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/RequirementImpl.java

Modified: incubator/aries/trunk/application/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/OBRAriesResolver.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/application/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/OBRAriesResolver.java?rev=1022505&r1=1022504&r2=1022505&view=diff
==============================================================================
--- incubator/aries/trunk/application/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/OBRAriesResolver.java (original)
+++ incubator/aries/trunk/application/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/OBRAriesResolver.java Thu Oct 14 13:00:14 2010
@@ -646,9 +646,9 @@ public class OBRAriesResolver implements
       Map.Entry<Requirement, Set<String>> entry = iterator.next();
       Requirement req = entry.getKey();
       for (Capability cap :caps) {
-        if (req.isSatisfied(cap)){
-          // remove the key from the map
+        if (req.isSatisfied(cap)){ // remove the key from the map
           iterator.remove();
+          break;
         }
       }
     }

Modified: incubator/aries/trunk/application/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/RequirementImpl.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/application/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/RequirementImpl.java?rev=1022505&r1=1022504&r2=1022505&view=diff
==============================================================================
--- incubator/aries/trunk/application/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/RequirementImpl.java (original)
+++ incubator/aries/trunk/application/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/RequirementImpl.java Thu Oct 14 13:00:14 2010
@@ -23,16 +23,13 @@ package org.apache.aries.application.res
 import static org.apache.aries.application.utils.AppConstants.LOG_ENTRY;
 import static org.apache.aries.application.utils.AppConstants.LOG_EXIT;
 
-import java.util.Arrays;
 import java.util.Hashtable;
-import java.util.List;
 import java.util.Map;
 
 import org.apache.aries.application.modelling.Consumer;
 import org.apache.aries.application.utils.FilterUtils;
 import org.apache.aries.application.utils.manifest.ManifestHeaderProcessor;
 import org.apache.felix.bundlerepository.Capability;
-import org.apache.felix.bundlerepository.Property;
 import org.apache.felix.bundlerepository.Requirement;
 import org.osgi.framework.Filter;
 import org.osgi.framework.FrameworkUtil;
@@ -163,10 +160,10 @@ public class RequirementImpl implements 
       try {
         Filter f = FrameworkUtil.createFilter(FilterUtils.removeMandatoryFilterToken(filterToCreate));
         Hashtable<String, Object> hash = new Hashtable<String, Object>();
-        List<Property> props = Arrays.asList(cap.getProperties());
+        Map<String, String> props = cap.getPropertiesAsMap();
         if ((props != null) && (!!!props.isEmpty())) {
-          for (Property prop : props) {
-            hash.put(prop.getName(), prop.getValue());
+          for (Map.Entry<String, String> propertyPair : props.entrySet()) {
+            hash.put(propertyPair.getKey(), propertyPair.getValue());
           }
         }