You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by tj...@apache.org on 2017/02/16 20:15:01 UTC

svn commit: r1783279 - in /felix/trunk/osgi-r7/resolver/src: main/java/org/apache/felix/resolver/ test/java/org/apache/felix/resolver/test/ test/java/org/apache/felix/resolver/test/util/

Author: tjwatson
Date: Thu Feb 16 20:15:01 2017
New Revision: 1783279

URL: http://svn.apache.org/viewvc?rev=1783279&view=rev
Log:
Use the R7 ResolveContext getSubstitutionWires method

Removed:
    felix/trunk/osgi-r7/resolver/src/main/java/org/apache/felix/resolver/FelixResolveContext.java
Modified:
    felix/trunk/osgi-r7/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
    felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/ResolverTest.java
    felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/util/IterativeResolver.java
    felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/util/ResolveContextImpl.java

Modified: felix/trunk/osgi-r7/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java?rev=1783279&r1=1783278&r2=1783279&view=diff
==============================================================================
--- felix/trunk/osgi-r7/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java (original)
+++ felix/trunk/osgi-r7/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java Thu Feb 16 20:15:01 2017
@@ -1630,17 +1630,7 @@ public class ResolverImpl implements Res
         // map to determine which exports are substitutable.
         if (wiring != null)
         {
-            Collection<Wire> substitutionWires;
-            if (session.getContext() instanceof FelixResolveContext)
-            {
-                substitutionWires = ((FelixResolveContext) session.getContext()).getSubstitutionWires(
-                    wiring);
-            }
-            else
-            {
-                substitutionWires = getSubstitutionWires(wiring);
-            }
-            for (Wire wire : substitutionWires)
+            for (Wire wire : session.getContext().getSubstitutionWires(wiring))
             {
                 Capability cap = wire.getCapability();
                 if (!cap.getResource().equals(wire.getProvider()))
@@ -1681,49 +1671,6 @@ public class ResolverImpl implements Res
         return exports;
     }
 
-    private static Collection<Wire> getSubstitutionWires(Wiring wiring)
-    {
-        Set<String> exportNames = new HashSet<String>();
-        for (Capability cap : wiring.getResource().getCapabilities(null))
-        {
-            if (PackageNamespace.PACKAGE_NAMESPACE.equals(cap.getNamespace()))
-            {
-                exportNames.add(
-                    (String) cap.getAttributes().get(PackageNamespace.PACKAGE_NAMESPACE));
-            }
-        }
-        // Add fragment exports
-        for (Wire wire : wiring.getProvidedResourceWires(null))
-        {
-            if (HostNamespace.HOST_NAMESPACE.equals(wire.getCapability().getNamespace()))
-            {
-                for (Capability cap : wire.getRequirement().getResource().getCapabilities(
-                    null))
-                {
-                    if (PackageNamespace.PACKAGE_NAMESPACE.equals(cap.getNamespace()))
-                    {
-                        exportNames.add((String) cap.getAttributes().get(
-                            PackageNamespace.PACKAGE_NAMESPACE));
-                    }
-                }
-            }
-        }
-        Collection<Wire> substitutionWires = new ArrayList<Wire>();
-        for (Wire wire : wiring.getRequiredResourceWires(null))
-        {
-            if (PackageNamespace.PACKAGE_NAMESPACE.equals(
-                wire.getCapability().getNamespace()))
-            {
-                if (exportNames.contains(wire.getCapability().getAttributes().get(
-                    PackageNamespace.PACKAGE_NAMESPACE)))
-                {
-                    substitutionWires.add(wire);
-                }
-            }
-        }
-        return substitutionWires;
-    }
-
     private static boolean isCompatible(
         Blame currentBlame, Capability candCap,
         Map<Resource, Packages> resourcePkgMap)

Modified: felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/ResolverTest.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/ResolverTest.java?rev=1783279&r1=1783278&r2=1783279&view=diff
==============================================================================
--- felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/ResolverTest.java (original)
+++ felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/ResolverTest.java Thu Feb 16 20:15:01 2017
@@ -983,7 +983,7 @@ public class ResolverTest
         }
         Collection<Resource> mandatory = Collections.<Resource> singletonList(requiresMisc);
         if (felixResolveContext) {
-            Map<Wiring, Collection<Wire>> substitutions = new HashMap<Wiring, Collection<Wire>>();
+            Map<Wiring, List<Wire>> substitutions = new HashMap<Wiring, List<Wire>>();
             if (realSubstitute && coreWiring != null)
             {
                 substitutions.put(coreWiring, Arrays.<Wire> asList(

Modified: felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/util/IterativeResolver.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/util/IterativeResolver.java?rev=1783279&r1=1783278&r2=1783279&view=diff
==============================================================================
--- felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/util/IterativeResolver.java (original)
+++ felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/util/IterativeResolver.java Thu Feb 16 20:15:01 2017
@@ -192,11 +192,9 @@ public class IterativeResolver implement
         }
     }
 
-    @Override
-    public Map<Resource, List<Wire>> resolveDynamic(ResolveContext context, Wiring hostWiring, Requirement dynamicRequirement)
-        throws ResolutionException
+    public Map<Resource, List<Wire>> resolveDynamic(ResolveContext context,
+        Wiring hostWiring, Requirement dynamicRequirement) throws ResolutionException
     {
-        return null;
+        throw new UnsupportedOperationException();
     }
-
 }

Modified: felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/util/ResolveContextImpl.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/util/ResolveContextImpl.java?rev=1783279&r1=1783278&r2=1783279&view=diff
==============================================================================
--- felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/util/ResolveContextImpl.java (original)
+++ felix/trunk/osgi-r7/resolver/src/test/java/org/apache/felix/resolver/test/util/ResolveContextImpl.java Thu Feb 16 20:15:01 2017
@@ -24,7 +24,6 @@ import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.felix.resolver.FelixResolveContext;
 import org.osgi.resource.Capability;
 import org.osgi.resource.Requirement;
 import org.osgi.resource.Resource;
@@ -93,11 +92,11 @@ public class ResolveContextImpl extends
         return m_wirings;
     }
 
-    public static class FelixResolveContextImpl extends ResolveContextImpl implements FelixResolveContext
+    public static class FelixResolveContextImpl extends ResolveContextImpl
     {
-        private final Map<Wiring, Collection<Wire>> m_substitutions;
+        private final Map<Wiring, List<Wire>> m_substitutions;
 
-        public FelixResolveContextImpl(Map<Resource, Wiring> wirings, Map<Requirement, List<Capability>> candMap, Collection<Resource> mandatory, Collection<Resource> optional, Map<Wiring, Collection<Wire>> substitutions)
+        public FelixResolveContextImpl(Map<Resource, Wiring> wirings, Map<Requirement, List<Capability>> candMap, Collection<Resource> mandatory, Collection<Resource> optional, Map<Wiring, List<Wire>> substitutions)
         {
             super(wirings, candMap, mandatory, optional);
             this.m_substitutions = substitutions;
@@ -108,9 +107,9 @@ public class ResolveContextImpl extends
             return Collections.emptyList();
         }
 
-        public Collection<Wire> getSubstitutionWires(Wiring wiring)
+        public List<Wire> getSubstitutionWires(Wiring wiring)
         {
-            Collection<Wire> result = m_substitutions.get(wiring);
+            List<Wire> result = m_substitutions.get(wiring);
             return result == null ? Collections.<Wire> emptyList() : result;
         }