Author: gnodet
Date: Mon Jul 13 15:17:28 2015
New Revision: 1690708
URL: http://svn.apache.org/r1690708
Log:
[FELIX-4942] Move package source cache into Packages
Modified:
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
Modified:
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
URL:
http://svn.apache.org/viewvc/felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java?rev=1690708&r1=1690707&r2=1690708&view=diff
==============================================================================
---
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
(original)
+++
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
Mon Jul 13 15:17:28 2015
@@ -71,8 +71,6 @@ public class ResolverImpl implements Res
// removed the offending capabilities
private Candidates m_multipleCardCandidates = null;
- private final Map<Capability, Set<Capability>> m_packageSourcesCache =
new HashMap<Capability, Set<Capability>>(256);
-
private final Map<String, List<String>> m_usesCache = new
HashMap<String, List<String>>();
ResolveSession(ResolveContext resolveContext)
@@ -100,11 +98,6 @@ public class ResolverImpl implements Res
m_multipleCardCandidates = multipleCardCandidates;
}
- Map<Capability, Set<Capability>> getPackageSourcesCache()
- {
- return m_packageSourcesCache;
- }
-
ResolveContext getContext()
{
return m_resolveContext;
@@ -239,7 +232,6 @@ public class ResolverImpl implements Res
continue;
}
- session.getPackageSourcesCache().clear();
// Null out each time a new permutation is attempted.
// We only use this to store a valid permutation which is a
// delta of the current permutation.
@@ -372,8 +364,6 @@ public class ResolverImpl implements Res
session.getUsesPermutations().clear();
session.getImportPermutations().clear();
session.setMultipleCardCandidates(null);
- // TODO this was not cleared out before; but it seems it
should be
- session.getPackageSourcesCache().clear();
}
}
while (retry);
@@ -513,7 +503,6 @@ public class ResolverImpl implements Res
do
{
resourcePkgMap.clear();
- session.getPackageSourcesCache().clear();
allCandidates = (usesPermutations.size() > 0)
? usesPermutations.remove(0)
@@ -599,7 +588,6 @@ public class ResolverImpl implements Res
session.getImportPermutations().clear();
// TODO these were not cleared out before; but it seems
they should be
session.setMultipleCardCandidates(null);
- session.getPackageSourcesCache().clear();
}
}
while (retry);
@@ -1614,7 +1602,7 @@ public class ResolverImpl implements Res
private Set<Capability> getPackageSources(
ResolveSession session, Capability cap, Map<Resource, Packages>
resourcePkgMap)
{
- Map<Capability, Set<Capability>> packageSourcesCache =
session.getPackageSourcesCache();
+ Map<Capability, Set<Capability>> packageSourcesCache =
resourcePkgMap.get(cap.getResource()).m_sources;
// If it is a package, then calculate sources for it.
if (cap.getNamespace().equals(PackageNamespace.PACKAGE_NAMESPACE))
{
@@ -1950,6 +1938,7 @@ public class ResolverImpl implements Res
public final OpenHashMap<String, List<Blame>> m_importedPkgs;
public final OpenHashMap<String, List<Blame>> m_requiredPkgs;
public final OpenHashMap<String, ArrayMap<Capability, UsedBlames>>
m_usedPkgs;
+ public final OpenHashMap<Capability, Set<Capability>> m_sources;
public boolean m_isCalculated = false;
public Packages(Resource resource)
@@ -1979,6 +1968,7 @@ public class ResolverImpl implements Res
};
}
};
+ m_sources = new OpenHashMap<Capability, Set<Capability>>(nbCaps);
}
}