Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Watson2021-07-26 12:53:15 +0000
committerThomas Watson2021-07-26 13:14:49 +0000
commit6d705d5c3af4083ecf608ebdc639ab85b788c1e3 (patch)
tree8a44de7db491c0cb0b352216d0a4db89e2d05056
parent31a5c58c58d7a4e830ff6818c3c4917b02f699c1 (diff)
downloadrt.equinox.framework-I20210728-1800.tar.gz
rt.equinox.framework-I20210728-1800.tar.xz
rt.equinox.framework-I20210728-1800.zip
This source should be cleaned up first at the respective repositories where the source is maintained. That is with the apache felix repo and the Eclipse OSGi WG specification repo. Change-Id: I7412fd248c362702016b2cad0da988c5d1fa3e5a Signed-off-by: Thomas Watson <tjwatson@us.ibm.com> Reviewed-on: https://git.eclipse.org/r/c/equinox/rt.equinox.framework/+/183379 Tested-by: Equinox Bot <equinox-bot@eclipse.org>
-rwxr-xr-xbundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Candidates.java52
-rwxr-xr-xbundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/ResolverImpl.java228
-rwxr-xr-xbundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Util.java2
-rwxr-xr-xbundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/WrappedCapability.java4
-rwxr-xr-xbundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/WrappedResource.java8
-rwxr-xr-xbundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/ArrayMap.java2
-rwxr-xr-xbundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/CandidateSelector.java2
-rwxr-xr-xbundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/OpenHashMap.java6
-rwxr-xr-xbundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/OpenHashMapSet.java4
-rwxr-xr-xbundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/ShadowList.java2
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/DTO.java5
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/AdaptPermission.java33
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/AdminPermission.java39
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundlePermission.java10
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/CapabilityPermission.java39
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/FrameworkUtil.java14
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/PackagePermission.java39
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServicePermission.java43
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/SignerProperty.java4
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleLocationCondition.java11
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleSignerCondition.java4
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionInfo.java4
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolutionException.java4
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolveContext.java6
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/AbstractTracked.java8
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTracker.java4
-rw-r--r--bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTracker.java4
27 files changed, 306 insertions, 275 deletions
diff --git a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Candidates.java b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Candidates.java
index c06eb7eb1..bfb1b4681 100755
--- a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Candidates.java
+++ b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Candidates.java
@@ -93,12 +93,12 @@ class Candidates
{
m_session = session;
m_candidateSelectorsUnmodifiable = new AtomicBoolean(false);
- m_dependentMap = new OpenHashMapSet<>();
+ m_dependentMap = new OpenHashMapSet<Capability, Requirement>();
m_candidateMap = new OpenHashMapList();
- m_allWrappedHosts = new HashMap<>();
- m_populateResultCache = new OpenHashMap<>();
- m_subtitutableMap = new OpenHashMap<>();
- m_delta = new OpenHashMapSet<>(3);
+ m_allWrappedHosts = new HashMap<Resource, WrappedResource>();
+ m_populateResultCache = new OpenHashMap<Resource, PopulateResult>();
+ m_subtitutableMap = new OpenHashMap<Capability, Requirement>();
+ m_delta = new OpenHashMapSet<Requirement, Capability>(3);
}
public int getNbResources()
@@ -108,7 +108,7 @@ class Candidates
public Map<Resource, Resource> getRootHosts()
{
- Map<Resource, Resource> hosts = new LinkedHashMap<>();
+ Map<Resource, Resource> hosts = new LinkedHashMap<Resource, Resource>();
for (Resource res : m_session.getMandatoryResources())
{
addHost(res, hosts);
@@ -160,8 +160,8 @@ class Candidates
public void populate(Collection<Resource> resources)
{
ResolveContext rc = m_session.getContext();
- Set<Resource> toRemove = new HashSet<>();
- LinkedList<Resource> toPopulate = new LinkedList<>(resources);
+ Set<Resource> toRemove = new HashSet<Resource>();
+ LinkedList<Resource> toPopulate = new LinkedList<Resource>(resources);
while (!toPopulate.isEmpty())
{
Resource resource = toPopulate.getFirst();
@@ -170,8 +170,8 @@ class Candidates
if (result == null)
{
result = new PopulateResult();
- result.candidates = new OpenHashMap<>();
- result.remaining = new ArrayList<>(resource.getRequirements(null));
+ result.candidates = new OpenHashMap<Requirement, List<Capability>>();
+ result.remaining = new ArrayList<Requirement>(resource.getRequirements(null));
m_populateResultCache.put(resource, result);
}
if (result.success || result.error != null)
@@ -206,7 +206,7 @@ class Candidates
continue;
}
List<Capability> candidates = rc.findProviders(requirement);
- LinkedList<Resource> newToPopulate = new LinkedList<>();
+ LinkedList<Resource> newToPopulate = new LinkedList<Resource>();
ResolutionError thrown = processCandidates(newToPopulate, requirement, candidates);
if (candidates.isEmpty() && !Util.isOptional(requirement))
{
@@ -270,7 +270,7 @@ class Candidates
OpenHashMap<String, List<Capability>> exportNames = new OpenHashMap<String, List<Capability>>() {
@Override
protected List<Capability> compute(String s) {
- return new ArrayList<>(1);
+ return new ArrayList<Capability>(1);
}
};
for (Capability packageExport : resource.getCapabilities(null))
@@ -322,7 +322,7 @@ class Candidates
ResolutionError checkSubstitutes()
{
- OpenHashMap<Capability, Integer> substituteStatuses = new OpenHashMap<>(m_subtitutableMap.size());
+ OpenHashMap<Capability, Integer> substituteStatuses = new OpenHashMap<Capability, Integer>(m_subtitutableMap.size());
for (Capability substitutable : m_subtitutableMap.keySet())
{
// initialize with unprocessed
@@ -451,7 +451,7 @@ class Candidates
// Process the candidates, removing any candidates that
// cannot resolve.
// TODO: verify the two following statements
- LinkedList<Resource> toPopulate = new LinkedList<>();
+ LinkedList<Resource> toPopulate = new LinkedList<Resource>();
ResolutionError rethrow = processCandidates(toPopulate, m_session.getDynamicRequirement(), m_session.getDynamicCandidates());
// Add the dynamic imports candidates.
@@ -509,7 +509,7 @@ class Candidates
{
if (fragmentCands == null)
{
- fragmentCands = new HashSet<>();
+ fragmentCands = new HashSet<Capability>();
}
fragmentCands.add(candCap);
}
@@ -729,7 +729,7 @@ class Candidates
// this is a special case where we need to completely replace the CandidateSelector
// this method should never be called from normal Candidates permutations
CandidateSelector candidates = m_candidateMap.get(req);
- List<Capability> remaining = new ArrayList<>(candidates.getRemainingCandidates());
+ List<Capability> remaining = new ArrayList<Capability>(candidates.getRemainingCandidates());
remaining.removeAll(caps);
candidates = new CandidateSelector(remaining, m_candidateSelectorsUnmodifiable);
m_candidateMap.put(req, candidates);
@@ -776,15 +776,15 @@ class Candidates
// requirements as well as replacing fragment capabilities
// with host's attached fragment capabilities.
// Steps 1 and 2
- List<WrappedResource> hostResources = new ArrayList<>();
- List<Resource> unselectedFragments = new ArrayList<>();
+ List<WrappedResource> hostResources = new ArrayList<WrappedResource>();
+ List<Resource> unselectedFragments = new ArrayList<Resource>();
for (Entry<Capability, Map<String, Map<Version, List<Requirement>>>> hostEntry : hostFragments.entrySet())
{
// Step 1
Capability hostCap = hostEntry.getKey();
Map<String, Map<Version, List<Requirement>>> fragments =
hostEntry.getValue();
- List<Resource> selectedFragments = new ArrayList<>();
+ List<Resource> selectedFragments = new ArrayList<Resource>();
for (Entry<String, Map<Version, List<Requirement>>> fragEntry
: fragments.entrySet())
{
@@ -876,7 +876,7 @@ class Candidates
CopyOnWriteSet<Requirement> dependents = m_dependentMap.get(origCap);
if (dependents != null)
{
- dependents = new CopyOnWriteSet<>(dependents);
+ dependents = new CopyOnWriteSet<Requirement>(dependents);
m_dependentMap.put(c, dependents);
for (Requirement r : dependents)
{
@@ -972,7 +972,7 @@ class Candidates
private Map<Capability, Map<String, Map<Version, List<Requirement>>>> getHostFragments()
{
Map<Capability, Map<String, Map<Version, List<Requirement>>>> hostFragments =
- new HashMap<>();
+ new HashMap<Capability, Map<String, Map<Version, List<Requirement>>>>();
for (Entry<Requirement, CandidateSelector> entry : m_candidateMap.fast())
{
Requirement req = entry.getKey();
@@ -988,20 +988,20 @@ class Candidates
Map<String, Map<Version, List<Requirement>>> fragments = hostFragments.get(cap);
if (fragments == null)
{
- fragments = new HashMap<>();
+ fragments = new HashMap<String, Map<Version, List<Requirement>>>();
hostFragments.put(cap, fragments);
}
Map<Version, List<Requirement>> fragmentVersions = fragments.get(resSymName);
if (fragmentVersions == null)
{
fragmentVersions =
- new TreeMap<>(Collections.reverseOrder());
+ new TreeMap<Version, List<Requirement>>(Collections.reverseOrder());
fragments.put(resSymName, fragmentVersions);
}
List<Requirement> actual = fragmentVersions.get(resVersion);
if (actual == null)
{
- actual = new ArrayList<>();
+ actual = new ArrayList<Requirement>();
if (resVersion == null)
resVersion = new Version(0, 0, 0);
fragmentVersions.put(resVersion, actual);
@@ -1030,7 +1030,7 @@ class Candidates
result.success = false;
result.error = ex;
// Remove from dependents.
- Set<Resource> unresolvedResources = new HashSet<>();
+ Set<Resource> unresolvedResources = new HashSet<Resource>();
remove(resource, unresolvedResources);
// Remove dependents that failed as a result of removing revision.
while (!unresolvedResources.isEmpty())
@@ -1150,7 +1150,7 @@ class Candidates
public void dump(ResolveContext rc)
{
// Create set of all revisions from requirements.
- Set<Resource> resources = new CopyOnWriteSet<>();
+ Set<Resource> resources = new CopyOnWriteSet<Resource>();
for (Entry<Requirement, CandidateSelector> entry
: m_candidateMap.entrySet())
{
diff --git a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/ResolverImpl.java b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/ResolverImpl.java
index d2c02bf79..6c9b278db 100755
--- a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/ResolverImpl.java
+++ b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/ResolverImpl.java
@@ -18,50 +18,19 @@
*/
package org.apache.felix.resolver;
-import java.security.AccessControlContext;
-import java.security.AccessController;
-import java.security.PrivilegedAction;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
+import java.security.*;
+import java.util.*;
import java.util.Map.Entry;
-import java.util.Queue;
-import java.util.Set;
-import java.util.concurrent.CancellationException;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentLinkedQueue;
-import java.util.concurrent.ConcurrentMap;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.Executor;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-import java.util.concurrent.Future;
-import java.util.concurrent.FutureTask;
+import java.util.concurrent.*;
import java.util.concurrent.atomic.AtomicReference;
+
import org.apache.felix.resolver.reason.ReasonException;
import org.apache.felix.resolver.util.ArrayMap;
import org.apache.felix.resolver.util.CandidateSelector;
import org.apache.felix.resolver.util.OpenHashMap;
-import org.osgi.framework.namespace.BundleNamespace;
-import org.osgi.framework.namespace.ExecutionEnvironmentNamespace;
-import org.osgi.framework.namespace.HostNamespace;
-import org.osgi.framework.namespace.IdentityNamespace;
-import org.osgi.framework.namespace.PackageNamespace;
-import org.osgi.resource.Capability;
-import org.osgi.resource.Namespace;
-import org.osgi.resource.Requirement;
-import org.osgi.resource.Resource;
-import org.osgi.resource.Wire;
-import org.osgi.resource.Wiring;
-import org.osgi.service.resolver.HostedCapability;
-import org.osgi.service.resolver.ResolutionException;
-import org.osgi.service.resolver.ResolveContext;
-import org.osgi.service.resolver.Resolver;
+import org.osgi.framework.namespace.*;
+import org.osgi.resource.*;
+import org.osgi.service.resolver.*;
public class ResolverImpl implements Resolver
{
@@ -95,19 +64,19 @@ public class ResolverImpl implements Resolver
private final List<Capability> m_dynamicCandidates;
// keeps track of valid related resources that we have seen.
// a null value or TRUE indicate it is valid
- private Map<Resource, Boolean> m_validRelatedResources = new HashMap<>(0);
+ private Map<Resource, Boolean> m_validRelatedResources = new HashMap<Resource, Boolean>(0);
// keeps track of related resources for each resource
- private Map<Resource, Collection<Resource>> m_relatedResources = new HashMap<>(0);
+ private Map<Resource, Collection<Resource>> m_relatedResources = new HashMap<Resource, Collection<Resource>>(0);
// Holds candidate permutations based on permutating "uses" chains.
// These permutations are given higher priority.
- private final List<Candidates> m_usesPermutations = new LinkedList<>();
+ private final List<Candidates> m_usesPermutations = new LinkedList<Candidates>();
private int m_usesIndex = 0;
// Holds candidate permutations based on permutating requirement candidates.
// These permutations represent backtracking on previous decisions.
- private final List<Candidates> m_importPermutations = new LinkedList<>();
+ private final List<Candidates> m_importPermutations = new LinkedList<Candidates>();
private int m_importIndex = 0;
// Holds candidate permutations based on substituted packages
- private final List<Candidates> m_substPermutations = new LinkedList<>();
+ private final List<Candidates> m_substPermutations = new LinkedList<Candidates>();
private int m_substituteIndex = 0;
// Holds candidate permutations based on removing candidates that satisfy
// multiple cardinality requirements.
@@ -115,11 +84,11 @@ public class ResolverImpl implements Resolver
// removed the offending capabilities
private Candidates m_multipleCardCandidates = null;
// The delta is used to detect that we have already processed this particular permutation
- private final Set<Object> m_processedDeltas = new HashSet<>();
+ private final Set<Object> m_processedDeltas = new HashSet<Object>();
private final Executor m_executor;
- private final Set<Requirement> m_mutated = new HashSet<>();
- private final Set<Requirement> m_sub_mutated = new HashSet<>();
- private final ConcurrentMap<String, List<String>> m_usesCache = new ConcurrentHashMap<>();
+ private final Set<Requirement> m_mutated = new HashSet<Requirement>();
+ private final Set<Requirement> m_sub_mutated = new HashSet<Requirement>();
+ private final ConcurrentMap<String, List<String>> m_usesCache = new ConcurrentHashMap<String, List<String>>();
private ResolutionError m_currentError;
volatile private CancellationException m_isCancelled = null;
@@ -145,8 +114,8 @@ public class ResolverImpl implements Resolver
m_optionalResources = Collections.emptyList();
} else {
// Do not call resolve context yet, onCancel must be called first
- m_mandatoryResources = new ArrayList<>();
- m_optionalResources = new ArrayList<>();
+ m_mandatoryResources = new ArrayList<Resource>();
+ m_optionalResources = new ArrayList<Resource>();
}
}
@@ -356,7 +325,7 @@ public class ResolverImpl implements Resolver
public Collection<Resource> getRelatedResources(Resource resource) {
Collection<Resource> related = m_relatedResources.get(resource);
- return related == null ? Collections.emptyList() : related;
+ return related == null ? Collections.<Resource> emptyList() : related;
}
public void setRelatedResources(Resource resource, Collection<Resource> related) {
@@ -409,7 +378,13 @@ public class ResolverImpl implements Resolver
final ExecutorService executor =
System.getSecurityManager() != null ?
AccessController.doPrivileged(
- (PrivilegedAction<ExecutorService>) () -> Executors.newFixedThreadPool(m_parallelism), m_acc)
+ new PrivilegedAction<ExecutorService>()
+ {
+ public ExecutorService run()
+ {
+ return Executors.newFixedThreadPool(m_parallelism);
+ }
+ }, m_acc)
:
Executors.newFixedThreadPool(m_parallelism);
try
@@ -420,9 +395,11 @@ public class ResolverImpl implements Resolver
{
if (System.getSecurityManager() != null)
{
- AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
- executor.shutdownNow();
- return null;
+ AccessController.doPrivileged(new PrivilegedAction<Void>(){
+ public Void run() {
+ executor.shutdownNow();
+ return null;
+ }
}, m_acc);
}
else
@@ -444,7 +421,7 @@ public class ResolverImpl implements Resolver
}
private Map<Resource, List<Wire>> doResolve(ResolveSession session) throws ResolutionException {
- Map<Resource, List<Wire>> wireMap = new HashMap<>();
+ Map<Resource, List<Wire>> wireMap = new HashMap<Resource, List<Wire>>();
boolean retry;
do
{
@@ -456,7 +433,7 @@ public class ResolverImpl implements Resolver
throw session.getCurrentError().toException();
}
- Map<Resource, ResolutionError> faultyResources = new HashMap<>();
+ Map<Resource, ResolutionError> faultyResources = new HashMap<Resource, ResolutionError>();
Candidates allCandidates = findValidCandidates(session, faultyResources);
session.checkForCancel();
@@ -540,7 +517,7 @@ public class ResolverImpl implements Resolver
return;
}
} else {
- List<Resource> toPopulate = new ArrayList<>();
+ List<Resource> toPopulate = new ArrayList<Resource>();
// Populate mandatory resources; since these are mandatory
// resources, failure throws a resolve exception.
@@ -591,7 +568,7 @@ public class ResolverImpl implements Resolver
//allCandidates.dump();
- Map<Resource, ResolutionError> currentFaultyResources = new HashMap<>();
+ Map<Resource, ResolutionError> currentFaultyResources = new HashMap<Resource, ResolutionError>();
session.setCurrentError(
checkConsistency(
@@ -638,7 +615,7 @@ public class ResolverImpl implements Resolver
ResolutionError error = null;
// Check package consistency
Map<Resource, Object> resultCache =
- new OpenHashMap<>(resourcePkgMap.size());
+ new OpenHashMap<Resource, Object>(resourcePkgMap.size());
for (Entry<Resource, Resource> entry : allhosts.entrySet())
{
rethrow = checkPackageSpaceConsistency(
@@ -701,7 +678,7 @@ public class ResolverImpl implements Resolver
{
// Create a list for requirement and proposed candidate
// capability or actual capability if resource is resolved or not.
- List<WireCandidate> wireCandidates = new ArrayList<>(256);
+ List<WireCandidate> wireCandidates = new ArrayList<WireCandidate>(256);
Wiring wiring = session.getContext().getWirings().get(resource);
if (wiring != null)
{
@@ -823,8 +800,8 @@ public class ResolverImpl implements Resolver
resourcePkgs,
wire.requirement,
wire.capability,
- new HashSet<>(),
- new HashSet<>());
+ new HashSet<Capability>(),
+ new HashSet<Resource>());
}
return resourcePkgs;
@@ -848,7 +825,7 @@ public class ResolverImpl implements Resolver
// we need to calculate its uses constraints again to make sure the new
// import is consistent with the existing package space.
Wiring wiring = session.getContext().getWirings().get(resource);
- Set<Capability> usesCycleMap = new HashSet<>();
+ Set<Capability> usesCycleMap = new HashSet<Capability>();
int size = wireCandidates.size();
boolean isDynamicImporting = size > 0
@@ -1117,13 +1094,13 @@ public class ResolverImpl implements Resolver
}
ArrayMap<Set<Capability>, UsedBlames> usedPkgBlames = currentPkgs.m_usedPkgs.getOrCompute(usedPkgName);
- List<Blame> newBlames = new ArrayList<>();
+ List<Blame> newBlames = new ArrayList<Blame>();
for (Blame blame : candSourceBlames)
{
List<Requirement> newBlameReqs;
if (blame.m_reqs != null)
{
- newBlameReqs = new ArrayList<>(blameReqs.size() + 1);
+ newBlameReqs = new ArrayList<Requirement>(blameReqs.size() + 1);
newBlameReqs.addAll(blameReqs);
// Only add the last requirement in blame chain because
// that is the requirement wired to the blamed capability
@@ -1153,9 +1130,9 @@ public class ResolverImpl implements Resolver
final EnhancedExecutor executor = new EnhancedExecutor(session.getExecutor());
// Parallel compute wire candidates
- final Map<Resource, List<WireCandidate>> allWireCandidates = new ConcurrentHashMap<>();
+ final Map<Resource, List<WireCandidate>> allWireCandidates = new ConcurrentHashMap<Resource, List<WireCandidate>>();
{
- final ConcurrentMap<Resource, Runnable> tasks = new ConcurrentHashMap<>(allCandidates.getNbResources());
+ final ConcurrentMap<Resource, Runnable> tasks = new ConcurrentHashMap<Resource, Runnable>(allCandidates.getNbResources());
class Computer implements Runnable
{
final Resource resource;
@@ -1189,20 +1166,32 @@ public class ResolverImpl implements Resolver
}
// Parallel get all exported packages
- final OpenHashMap<Resource, Packages> allPackages = new OpenHashMap<>(allCandidates.getNbResources());
+ final OpenHashMap<Resource, Packages> allPackages = new OpenHashMap<Resource, Packages>(allCandidates.getNbResources());
for (final Resource resource : allWireCandidates.keySet())
{
final Packages packages = new Packages(resource);
allPackages.put(resource, packages);
- executor.execute(() -> calculateExportedPackages(session, allCandidates, resource,
- packages.m_exportedPkgs, packages.m_substitePkgs));
+ executor.execute(new Runnable()
+ {
+ public void run()
+ {
+ calculateExportedPackages(session, allCandidates, resource,
+ packages.m_exportedPkgs, packages.m_substitePkgs);
+ }
+ });
}
executor.await();
// Parallel compute package lists
for (final Resource resource : allWireCandidates.keySet())
{
- executor.execute(() -> getPackages(session, allCandidates, allWireCandidates, allPackages, resource, allPackages.get(resource)));
+ executor.execute(new Runnable()
+ {
+ public void run()
+ {
+ getPackages(session, allCandidates, allWireCandidates, allPackages, resource, allPackages.get(resource));
+ }
+ });
}
executor.await();
@@ -1227,7 +1216,13 @@ public class ResolverImpl implements Resolver
final Packages packages = entry.getValue();
if (packages.m_sources.isEmpty())
{
- executor.execute(() -> getPackageSourcesInternal(session, allPackages, resource, packages));
+ executor.execute(new Runnable()
+ {
+ public void run()
+ {
+ getPackageSourcesInternal(session, allPackages, resource, packages);
+ }
+ });
}
}
executor.await();
@@ -1235,7 +1230,13 @@ public class ResolverImpl implements Resolver
// Parallel compute uses
for (final Resource resource : allWireCandidates.keySet())
{
- executor.execute(() -> computeUses(session, allWireCandidates, allPackages, resource));
+ executor.execute(new Runnable()
+ {
+ public void run()
+ {
+ computeUses(session, allWireCandidates, allPackages, resource);
+ }
+ });
}
executor.await();
@@ -1250,7 +1251,7 @@ public class ResolverImpl implements Resolver
nb++;
}
}
- List<String> uses = new ArrayList<>(nb);
+ List<String> uses = new ArrayList<String>(nb);
int start = 0;
while (true) {
while (start < l) {
@@ -1288,7 +1289,7 @@ public class ResolverImpl implements Resolver
}
else
{
- usedCaps = new HashSet<>();
+ usedCaps = new HashSet<Capability>();
for (Blame blame : blames)
{
usedCaps.addAll(getPackageSources(blame.m_cap, resourcePkgMap));
@@ -1382,8 +1383,8 @@ public class ResolverImpl implements Resolver
// When several reqs are permuted at the same time this reduces the number of solutions tried.
// See the method Candidates::canRemoveCandidate for a case where substitutions must be checked
// because of this code that may permute multiple reqs in on candidates permutation.
- AtomicReference<Candidates> permRef1 = new AtomicReference<>();
- AtomicReference<Candidates> permRef2 = new AtomicReference<>();
+ AtomicReference<Candidates> permRef1 = new AtomicReference<Candidates>();
+ AtomicReference<Candidates> permRef2 = new AtomicReference<Candidates>();
Set<Requirement> mutated = null;
// Check if there are any uses conflicts with exported packages.
@@ -1402,7 +1403,7 @@ public class ResolverImpl implements Resolver
{
mutated = (mutated != null)
? mutated
- : new HashSet<>();
+ : new HashSet<Requirement>();
rethrow = permuteUsedBlames(session, rethrow, allCandidates, resource,
pkgName, null, usedBlames, permRef1, permRef2, mutated);
}
@@ -1436,7 +1437,7 @@ public class ResolverImpl implements Resolver
}
else
{
- allImportRequirePkgs = new OpenHashMap<>(pkgs.m_requiredPkgs.size() + pkgs.m_importedPkgs.size());
+ allImportRequirePkgs = new OpenHashMap<String, List<Blame>>(pkgs.m_requiredPkgs.size() + pkgs.m_importedPkgs.size());
allImportRequirePkgs.putAll(pkgs.m_requiredPkgs);
allImportRequirePkgs.putAll(pkgs.m_importedPkgs);
}
@@ -1457,7 +1458,7 @@ public class ResolverImpl implements Resolver
{
mutated = (mutated != null)
? mutated
- : new HashSet<>();// Split packages, need to think how to get a good message for split packages (sigh)
+ : new HashSet<Requirement>();// Split packages, need to think how to get a good message for split packages (sigh)
// For now we just use the first requirement that brings in the package that conflicts
Blame requirementBlame = requirementBlames.get(0);
rethrow = permuteUsedBlames(session, rethrow, allCandidates, resource, pkgName, requirementBlame, usedBlames, permRef1, permRef2, mutated);
@@ -1733,7 +1734,7 @@ public class ResolverImpl implements Resolver
case 1:
return isCompatible(currentBlames.get(0), candSources, resourcePkgMap);
default:
- Set<Capability> currentSources = new HashSet<>(currentBlames.size());
+ Set<Capability> currentSources = new HashSet<Capability>(currentBlames.size());
for (Blame currentBlame : currentBlames)
{
Set<Capability> blameSources = getPackageSources(currentBlame.m_cap, resourcePkgMap);
@@ -1750,19 +1751,19 @@ public class ResolverImpl implements Resolver
Resource resource = cap.getResource();
if(resource == null)
{
- return new HashSet<>();
+ return new HashSet<Capability>();
}
OpenHashMap<Capability, Set<Capability>> sources = resourcePkgMap.get(resource).m_sources;
if(sources == null)
{
- return new HashSet<>();
+ return new HashSet<Capability>();
}
Set<Capability> packageSources = sources.get(cap);
if(packageSources == null)
{
- return new HashSet<>();
+ return new HashSet<Capability>();
}
return packageSources;
@@ -1779,7 +1780,7 @@ public class ResolverImpl implements Resolver
@SuppressWarnings("serial")
OpenHashMap<String, Set<Capability>> pkgs = new OpenHashMap<String, Set<Capability>>(caps.size()) {
public Set<Capability> compute(String pkgName) {
- return new HashSet<>();
+ return new HashSet<Capability>();
}
};
Map<Capability, Set<Capability>> sources = packages.m_sources;
@@ -1810,7 +1811,7 @@ public class ResolverImpl implements Resolver
}
else
{
- sources.put(sourceCap, Collections.emptySet());
+ sources.put(sourceCap, Collections.<Capability>emptySet());
}
}
}
@@ -1876,11 +1877,11 @@ public class ResolverImpl implements Resolver
if (!session.getContext().getWirings().containsKey(unwrappedResource)
&& !wireMap.containsKey(unwrappedResource))
{
- wireMap.put(unwrappedResource, Collections.emptyList());
+ wireMap.put(unwrappedResource, Collections.<Wire>emptyList());
- List<Wire> packageWires = new ArrayList<>();
- List<Wire> bundleWires = new ArrayList<>();
- List<Wire> capabilityWires = new ArrayList<>();
+ List<Wire> packageWires = new ArrayList<Wire>();
+ List<Wire> bundleWires = new ArrayList<Wire>();
+ List<Wire> capabilityWires = new ArrayList<Wire>();
for (Requirement req : resource.getRequirements(null))
{
@@ -1951,7 +1952,8 @@ public class ResolverImpl implements Resolver
// creating duplicate non-payload wires if the fragment
// is attached to more than one host.
List<Wire> fragmentWires = wireMap.get(fragment);
- fragmentWires = (fragmentWires == null) ? new ArrayList<>() : fragmentWires;
+ fragmentWires = (fragmentWires == null)
+ ? new ArrayList<Wire>() : fragmentWires;
// Loop through all of the fragment's requirements and create
// any necessary wires for non-payload requirements.
@@ -2034,9 +2036,9 @@ public class ResolverImpl implements Resolver
ResolveSession session, Map<Resource,
List<Wire>> wireMap, Candidates allCandidates)
{
- wireMap.put(session.getDynamicHost(), Collections.emptyList());
+ wireMap.put(session.getDynamicHost(), Collections.<Wire>emptyList());
- List<Wire> packageWires = new ArrayList<>();
+ List<Wire> packageWires = new ArrayList<Wire>();
// Get the candidates for the current dynamic requirement.
// Record the dynamic candidate.
@@ -2126,16 +2128,16 @@ public class ResolverImpl implements Resolver
int nbCaps = resource.getCapabilities(null).size();
int nbReqs = resource.getRequirements(null).size();
- m_exportedPkgs = new OpenHashMap<>(nbCaps);
- m_substitePkgs = new OpenHashMap<>(nbCaps);
+ m_exportedPkgs = new OpenHashMap<String, Blame>(nbCaps);
+ m_substitePkgs = new OpenHashMap<String, Blame>(nbCaps);
m_importedPkgs = new OpenHashMap<String, List<Blame>>(nbReqs) {
public List<Blame> compute(String s) {
- return new ArrayList<>();
+ return new ArrayList<Blame>();
}
};
m_requiredPkgs = new OpenHashMap<String, List<Blame>>(nbReqs) {
public List<Blame> compute(String s) {
- return new ArrayList<>();
+ return new ArrayList<Blame>();
}
};
m_usedPkgs = new OpenHashMap<String, ArrayMap<Set<Capability>, UsedBlames>>(128) {
@@ -2149,7 +2151,7 @@ public class ResolverImpl implements Resolver
};
}
};
- m_sources = new OpenHashMap<>(nbCaps);
+ m_sources = new OpenHashMap<Capability, Set<Capability>>(nbCaps);
}
}
@@ -2198,7 +2200,7 @@ public class ResolverImpl implements Resolver
private static class UsedBlames
{
public final Set<Capability> m_caps;
- public final List<Blame> m_blames = new ArrayList<>();
+ public final List<Blame> m_blames = new ArrayList<ResolverImpl.Blame>();
private Map<Requirement, Set<Capability>> m_rootCauses;
public UsedBlames(Set<Capability> caps)
@@ -2228,12 +2230,12 @@ public class ResolverImpl implements Resolver
// capability pulled in is a conflict.
if (m_rootCauses == null)
{
- m_rootCauses = new HashMap<>();
+ m_rootCauses = new HashMap<Requirement, Set<Capability>>();
}
Set<Capability> rootCauses = m_rootCauses.get(req);
if (rootCauses == null)
{
- rootCauses = new HashSet<>();
+ rootCauses = new HashSet<Capability>();
m_rootCauses.put(req, rootCauses);
}
rootCauses.add(matchingRootCause);
@@ -2248,7 +2250,7 @@ public class ResolverImpl implements Resolver
return Collections.emptySet();
}
Set<Capability> result = m_rootCauses.get(req);
- return result == null ? Collections.emptySet() : result;
+ return result == null ? Collections.<Capability>emptySet() : result;
}
@Override
@@ -2469,8 +2471,8 @@ public class ResolverImpl implements Resolver
private static class EnhancedExecutor
{
private final Executor executor;
- private final Queue<Future<Void>> awaiting = new ConcurrentLinkedQueue<>();
- private final AtomicReference<Throwable> throwable = new AtomicReference<>();
+ private final Queue<Future<Void>> awaiting = new ConcurrentLinkedQueue<Future<Void>>();
+ private final AtomicReference<Throwable> throwable = new AtomicReference<Throwable>();
public EnhancedExecutor(Executor executor)
{
@@ -2479,14 +2481,18 @@ public class ResolverImpl implements Resolver
public void execute(final Runnable runnable)
{
- FutureTask<Void> task = new FutureTask<>(() -> {
- try
- {
- runnable.run();
- }
- catch (Throwable t)
+ FutureTask<Void> task = new FutureTask<Void>(new Runnable()
+ {
+ public void run()
{
- throwable.compareAndSet(null, t);
+ try
+ {
+ runnable.run();
+ }
+ catch (Throwable t)
+ {
+ throwable.compareAndSet(null, t);
+ }
}
}, (Void) null);
// must have a happens-first to add the task to awaiting
diff --git a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Util.java b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Util.java
index 647855600..973cd5b72 100755
--- a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Util.java
+++ b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Util.java
@@ -99,7 +99,7 @@ public class Util
public static List<Requirement> getDynamicRequirements(List<Requirement> reqs)
{
- List<Requirement> result = new ArrayList<>();
+ List<Requirement> result = new ArrayList<Requirement>();
if (reqs != null)
{
for (Requirement req : reqs)
diff --git a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/WrappedCapability.java b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/WrappedCapability.java
index 8fab2a3b3..f17969e30 100755
--- a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/WrappedCapability.java
+++ b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/WrappedCapability.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2012, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2012). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,7 +38,7 @@ public class WrappedCapability implements HostedCapability
// This is done to work around issues with wrapper resources equality tests.
// Note this is depends on the implementation details of the ResolveContext to actually
// check the osgi.content capability.
- Map<String, Object> augmentedDirs = new HashMap<>(m_cap.getAttributes());
+ Map<String, Object> augmentedDirs = new HashMap<String, Object>(m_cap.getAttributes());
Object wrapperUrl = augmentedDirs.get("url");
wrapperUrl = "wrapper:" + wrapperUrl;
augmentedDirs.put("url", wrapperUrl);
diff --git a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/WrappedResource.java b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/WrappedResource.java
index 6b0b31fdb..c51f74ee2 100755
--- a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/WrappedResource.java
+++ b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/WrappedResource.java
@@ -38,7 +38,7 @@ class WrappedResource implements Resource
m_fragments = fragments;
// Wrap host capabilities.
- List<Capability> caps = new ArrayList<>();
+ List<Capability> caps = new ArrayList<Capability>();
for (Capability cap : m_host.getCapabilities(null))
{
caps.add(new WrappedCapability(this, cap));
@@ -58,7 +58,7 @@ class WrappedResource implements Resource
m_cachedCapabilities = Collections.unmodifiableList(caps);
// Wrap host requirements.
- List<Requirement> reqs = new ArrayList<>();
+ List<Requirement> reqs = new ArrayList<Requirement>();
for (Requirement req : m_host.getRequirements(null))
{
reqs.add(new WrappedRequirement(this, req));
@@ -98,7 +98,7 @@ class WrappedResource implements Resource
public List<Capability> getCapabilities(String namespace)
{
if (namespace != null) {
- List<Capability> filtered = new ArrayList<>();
+ List<Capability> filtered = new ArrayList<Capability>();
for (Capability capability : m_cachedCapabilities) {
if (namespace.equals(capability.getNamespace())) {
filtered.add(capability);
@@ -112,7 +112,7 @@ class WrappedResource implements Resource
public List<Requirement> getRequirements(String namespace)
{
if (namespace != null) {
- List<Requirement> filtered = new ArrayList<>();
+ List<Requirement> filtered = new ArrayList<Requirement>();
for (Requirement requirement : m_cachedRequirements) {
if (namespace.equals(requirement.getNamespace())) {
filtered.add(requirement);
diff --git a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/ArrayMap.java b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/ArrayMap.java
index 16a921723..c61a194c9 100755
--- a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/ArrayMap.java
+++ b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/ArrayMap.java
@@ -132,7 +132,7 @@ public class ArrayMap<K, V> extends AbstractMap<K, V> {
@Override
public Iterator<Entry<K, V>> iterator() {
return new Iterator<Entry<K, V>>() {
- FastEntry<K, V> entry = new FastEntry<>();
+ FastEntry<K, V> entry = new FastEntry<K, V>();
int index = 0;
public boolean hasNext() {
diff --git a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/CandidateSelector.java b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/CandidateSelector.java
index bce3386a3..de8a5f502 100755
--- a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/CandidateSelector.java
+++ b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/CandidateSelector.java
@@ -32,7 +32,7 @@ public class CandidateSelector {
public CandidateSelector(List<Capability> candidates, AtomicBoolean isUnmodifiable) {
this.isUnmodifiable = isUnmodifiable;
- this.unmodifiable = new ArrayList<>(candidates);
+ this.unmodifiable = new ArrayList<Capability>(candidates);
}
protected CandidateSelector(CandidateSelector candidateSelector) {
diff --git a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/OpenHashMap.java b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/OpenHashMap.java
index f781de315..b27198c4d 100755
--- a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/OpenHashMap.java
+++ b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/OpenHashMap.java
@@ -631,7 +631,11 @@ public class OpenHashMap<K, V> implements Serializable, Cloneable, SortedMap<K,
public Iterable<Map.Entry<K, V>> fast() {
if (fast == null) {
- fast = FastEntryIterator::new;
+ fast = new Iterable<Entry<K, V>>() {
+ public Iterator<Entry<K, V>> iterator() {
+ return new FastEntryIterator();
+ }
+ };
}
return fast;
diff --git a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/OpenHashMapSet.java b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/OpenHashMapSet.java
index 6d8f7d63a..2cdf70635 100755
--- a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/OpenHashMapSet.java
+++ b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/OpenHashMapSet.java
@@ -35,7 +35,7 @@ public class OpenHashMapSet<K, V> extends OpenHashMap<K, CopyOnWriteSet<V>> {
Object[] values = copy.value;
for (int i = values.length; i-- > 0;) {
if (values[i] != null) {
- values[i] = new CopyOnWriteSet<>((CopyOnWriteSet<V>) values[i]);
+ values[i] = new CopyOnWriteSet<V>((CopyOnWriteSet<V>) values[i]);
}
}
return copy;
@@ -43,7 +43,7 @@ public class OpenHashMapSet<K, V> extends OpenHashMap<K, CopyOnWriteSet<V>> {
@Override
protected CopyOnWriteSet<V> compute(K key) {
- return new CopyOnWriteSet<>();
+ return new CopyOnWriteSet<V>();
}
}
diff --git a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/ShadowList.java b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/ShadowList.java
index 74f81c79f..a91ba30ee 100755
--- a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/ShadowList.java
+++ b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/ShadowList.java
@@ -49,7 +49,7 @@ public class ShadowList extends CandidateSelector
private ShadowList(List<Capability> unmodifiable, List<Capability> original, AtomicBoolean isUnmodifiable) {
super(unmodifiable, isUnmodifiable);
- m_original = new ArrayList<>(original);
+ m_original = new ArrayList<Capability>(original);
}
public ShadowList copy() {
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/DTO.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/DTO.java
index 95caf5a3c..ffcb6416b 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/DTO.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/dto/DTO.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2012, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2012, 2020). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -53,7 +53,8 @@ public abstract class DTO {
*/
@Override
public String toString() {
- return appendValue(new StringBuilder(), new IdentityHashMap<>(), "#", this).toString();
+ return appendValue(new StringBuilder(),
+ new IdentityHashMap<Object,String>(), "#", this).toString();
}
/**
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/AdaptPermission.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/AdaptPermission.java
index fd002d828..a2bc7aac5 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/AdaptPermission.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/AdaptPermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2010, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2010, 2017). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -437,21 +437,24 @@ public final class AdaptPermission extends BasicPermission {
if (result != null) {
return result;
}
- final Map<String, Object> map = new HashMap<>(5);
+ final Map<String, Object> map = new HashMap<String, Object>(5);
map.put("adaptClass", getName());
if (bundle != null) {
- AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
- map.put("id", Long.valueOf(bundle.getBundleId()));
- map.put("location", bundle.getLocation());
- String name = bundle.getSymbolicName();
- if (name != null) {
- map.put("name", name);
- }
- SignerProperty signer = new SignerProperty(bundle);
- if (signer.isBundleSigned()) {
- map.put("signer", signer);
+ AccessController.doPrivileged(new PrivilegedAction<Void>() {
+ @Override
+ public Void run() {
+ map.put("id", Long.valueOf(bundle.getBundleId()));
+ map.put("location", bundle.getLocation());
+ String name = bundle.getSymbolicName();
+ if (name != null) {
+ map.put("name", name);
+ }
+ SignerProperty signer = new SignerProperty(bundle);
+ if (signer.isBundleSigned()) {
+ map.put("signer", signer);
+ }
+ return null;
}
- return null;
});
}
return properties = map;
@@ -488,7 +491,7 @@ final class AdaptPermissionCollection extends PermissionCollection {
* Create an empty AdaptPermissions object.
*/
public AdaptPermissionCollection() {
- permissions = new HashMap<>();
+ permissions = new HashMap<String, AdaptPermission>();
all_allowed = false;
}
@@ -594,7 +597,7 @@ final class AdaptPermissionCollection extends PermissionCollection {
*/
@Override
public synchronized Enumeration<Permission> elements() {
- List<Permission> all = new ArrayList<>(permissions.values());
+ List<Permission> all = new ArrayList<Permission>(permissions.values());
return Collections.enumeration(all);
}
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/AdminPermission.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/AdminPermission.java
index e12085d70..7906054ba 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/AdminPermission.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/AdminPermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2000, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2000, 2017). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -220,7 +220,7 @@ public final class AdminPermission extends BasicPermission {
* ThreadLocal used to determine if we have recursively called
* getProperties.
*/
- private static final ThreadLocal<Bundle> recurse = new ThreadLocal<>();
+ private static final ThreadLocal<Bundle> recurse = new ThreadLocal<Bundle>();
/**
* Creates a new {@code AdminPermission} object that matches all bundles and
@@ -839,19 +839,22 @@ public final class AdminPermission extends BasicPermission {
}
recurse.set(bundle);
try {
- final Map<String, Object> map = new HashMap<>(4);
- AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
- map.put("id", Long.valueOf(bundle.getBundleId()));
- map.put("location", bundle.getLocation());
- String name = bundle.getSymbolicName();
- if (name != null) {
- map.put("name", name);
- }
- SignerProperty signer = new SignerProperty(bundle);
- if (signer.isBundleSigned()) {
- map.put("signer", signer);
+ final Map<String, Object> map = new HashMap<String, Object>(4);
+ AccessController.doPrivileged(new PrivilegedAction<Void>() {
+ @Override
+ public Void run() {
+ map.put("id", Long.valueOf(bundle.getBundleId()));
+ map.put("location", bundle.getLocation());
+ String name = bundle.getSymbolicName();
+ if (name != null) {
+ map.put("name", name);
+ }
+ SignerProperty signer = new SignerProperty(bundle);
+ if (signer.isBundleSigned()) {
+ map.put("signer", signer);
+ }
+ return null;
}
- return null;
});
return properties = map;
} finally {
@@ -885,7 +888,7 @@ final class AdminPermissionCollection extends PermissionCollection {
*
*/
public AdminPermissionCollection() {
- permissions = new HashMap<>();
+ permissions = new HashMap<String, AdminPermission>();
}
/**
@@ -988,7 +991,7 @@ final class AdminPermissionCollection extends PermissionCollection {
*/
@Override
public synchronized Enumeration<Permission> elements() {
- List<Permission> all = new ArrayList<>(permissions.values());
+ List<Permission> all = new ArrayList<Permission>(permissions.values());
return Collections.enumeration(all);
}
@@ -996,7 +999,7 @@ final class AdminPermissionCollection extends PermissionCollection {
private static final ObjectStreamField[] serialPersistentFields = {new ObjectStreamField("permissions", Hashtable.class), new ObjectStreamField("all_allowed", Boolean.TYPE)};
private synchronized void writeObject(ObjectOutputStream out) throws IOException {
- Hashtable<String, AdminPermission> hashtable = new Hashtable<>(permissions);
+ Hashtable<String, AdminPermission> hashtable = new Hashtable<String, AdminPermission>(permissions);
ObjectOutputStream.PutField pfields = out.putFields();
pfields.put("permissions", hashtable);
pfields.put("all_allowed", all_allowed);
@@ -1007,7 +1010,7 @@ final class AdminPermissionCollection extends PermissionCollection {
ObjectInputStream.GetField gfields = in.readFields();
@SuppressWarnings("unchecked")
Hashtable<String, AdminPermission> hashtable = (Hashtable<String, AdminPermission>) gfields.get("permissions", null);
- permissions = new HashMap<>(hashtable);
+ permissions = new HashMap<String, AdminPermission>(hashtable);
all_allowed = gfields.get("all_allowed", false);
}
}
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundlePermission.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundlePermission.java
index a0bdb5bb6..7a45b1cb5 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundlePermission.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/BundlePermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2004, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2004, 2019). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -453,7 +453,7 @@ final class BundlePermissionCollection extends PermissionCollection {
*
*/
public BundlePermissionCollection() {
- permissions = new HashMap<>();
+ permissions = new HashMap<String, BundlePermission>();
all_allowed = false;
}
@@ -568,7 +568,7 @@ final class BundlePermissionCollection extends PermissionCollection {
*/
@Override
public synchronized Enumeration<Permission> elements() {
- List<Permission> all = new ArrayList<>(permissions.values());
+ List<Permission> all = new ArrayList<Permission>(permissions.values());
return Collections.enumeration(all);
}
@@ -576,7 +576,7 @@ final class BundlePermissionCollection extends PermissionCollection {
private static final ObjectStreamField[] serialPersistentFields = {new ObjectStreamField("permissions", Hashtable.class), new ObjectStreamField("all_allowed", Boolean.TYPE)};
private synchronized void writeObject(ObjectOutputStream out) throws IOException {
- Hashtable<String, BundlePermission> hashtable = new Hashtable<>(permissions);
+ Hashtable<String, BundlePermission> hashtable = new Hashtable<String, BundlePermission>(permissions);
ObjectOutputStream.PutField pfields = out.putFields();
pfields.put("permissions", hashtable);
pfields.put("all_allowed", all_allowed);
@@ -587,7 +587,7 @@ final class BundlePermissionCollection extends PermissionCollection {
ObjectInputStream.GetField gfields = in.readFields();
@SuppressWarnings("unchecked")
Hashtable<String, BundlePermission> hashtable = (Hashtable<String, BundlePermission>) gfields.get("permissions", null);
- permissions = new HashMap<>(hashtable);
+ permissions = new HashMap<String, BundlePermission>(hashtable);
all_allowed = gfields.get("all_allowed", false);
}
}
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/CapabilityPermission.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/CapabilityPermission.java
index facdb2896..c7bae50ca 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/CapabilityPermission.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/CapabilityPermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2000, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2000, 2019). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -184,7 +184,7 @@ public final class CapabilityPermission extends BasicPermission {
if (providingBundle == null) {
throw new IllegalArgumentException("bundle must not be null");
}
- this.attributes = new HashMap<>(attributes);
+ this.attributes = new HashMap<String, Object>(attributes);
this.bundle = providingBundle;
if ((action_mask & ACTION_ALL) != ACTION_REQUIRE) {
throw new IllegalArgumentException("invalid action string");
@@ -499,23 +499,26 @@ public final class CapabilityPermission extends BasicPermission {
if (result != null) {
return result;
}
- final Map<String, Object> props = new HashMap<>(5);
+ final Map<String, Object> props = new HashMap<String, Object>(5);
props.put("capability.namespace", getName());
if (bundle == null) {
return properties = props;
}
- AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
- props.put("id", Long.valueOf(bundle.getBundleId()));
- props.put("location", bundle.getLocation());
- String name = bundle.getSymbolicName();
- if (name != null) {
- props.put("name", name);
- }
- SignerProperty signer = new SignerProperty(bundle);
- if (signer.isBundleSigned()) {
- props.put("signer", signer);
+ AccessController.doPrivileged(new PrivilegedAction<Void>() {
+ @Override
+ public Void run() {
+ props.put("id", Long.valueOf(bundle.getBundleId()));
+ props.put("location", bundle.getLocation());
+ String name = bundle.getSymbolicName();
+ if (name != null) {
+ props.put("name", name);
+ }
+ SignerProperty signer = new SignerProperty(bundle);
+ if (signer.isBundleSigned()) {
+ props.put("signer", signer);
+ }
+ return null;
}
- return null;
});
return properties = new Properties(props, attributes);
}
@@ -552,7 +555,7 @@ public final class CapabilityPermission extends BasicPermission {
if (entries != null) {
return entries;
}
- Set<Map.Entry<String, Object>> all = new HashSet<>(attributes.size() + properties.size());
+ Set<Map.Entry<String, Object>> all = new HashSet<Map.Entry<String, Object>>(attributes.size() + properties.size());
all.addAll(attributes.entrySet());
all.addAll(properties.entrySet());
return entries = Collections.unmodifiableSet(all);
@@ -598,7 +601,7 @@ final class CapabilityPermissionCollection extends PermissionCollection {
* Creates an empty CapabilityPermissionCollection object.
*/
public CapabilityPermissionCollection() {
- permissions = new HashMap<>();
+ permissions = new HashMap<String, CapabilityPermission>();
all_allowed = false;
}
@@ -633,7 +636,7 @@ final class CapabilityPermissionCollection extends PermissionCollection {
if (f != null) {
pc = filterPermissions;
if (pc == null) {
- filterPermissions = pc = new HashMap<>();
+ filterPermissions = pc = new HashMap<String, CapabilityPermission>();
}
} else {
pc = permissions;
@@ -749,7 +752,7 @@ final class CapabilityPermissionCollection extends PermissionCollection {
*/
@Override
public synchronized Enumeration<Permission> elements() {
- List<Permission> all = new ArrayList<>(permissions.values());
+ List<Permission> all = new ArrayList<Permission>(permissions.values());
Map<String, CapabilityPermission> pc = filterPermissions;
if (pc != null) {
all.addAll(pc.values());
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/FrameworkUtil.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/FrameworkUtil.java
index 76402ec3b..587b532f9 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/FrameworkUtil.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/FrameworkUtil.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2005, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2005, 2020). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -373,7 +373,7 @@ public class FrameworkUtil {
if (pattern == null) {
throw new IllegalArgumentException("The pattern must not be null.");
}
- List<Object> parsed = new ArrayList<>();
+ List<Object> parsed = new ArrayList<Object>();
final int length = pattern.length();
char c = ';'; // start with semi-colon to detect empty pattern
for (int startIndex = skipSpaces(pattern, 0); startIndex < length;) {
@@ -415,7 +415,7 @@ public class FrameworkUtil {
if (dn.equals(STAR_WILDCARD) || dn.equals(MINUS_WILDCARD)) {
continue;
}
- List<Object> rdns = new ArrayList<>();
+ List<Object> rdns = new ArrayList<Object>();
if (dn.charAt(0) == '*') {
int index = skipSpaces(dn, 1);
if (dn.charAt(index) != ',') {
@@ -437,13 +437,13 @@ public class FrameworkUtil {
if (chain == null) {
throw new IllegalArgumentException("DN chain must not be null.");
}
- List<Object> result = new ArrayList<>(chain.size());
+ List<Object> result = new ArrayList<Object>(chain.size());
// Now we parse is a list of strings, lets make List of rdn out
// of them
for (String dn : chain) {
dn = new X500Principal(dn).getName(X500Principal.CANONICAL);
// Now dn is a nice CANONICAL DN
- List<Object> rdns = new ArrayList<>();
+ List<Object> rdns = new ArrayList<Object>();
parseDN(dn, rdns);
result.add(rdns);
}
@@ -475,7 +475,7 @@ public class FrameworkUtil {
private static void parseDN(String dn, List<Object> rdn) {
int startIndex = 0;
char c = '\0';
- List<String> nameValues = new ArrayList<>();
+ List<String> nameValues = new ArrayList<String>();
while (startIndex < dn.length()) {
int endIndex;
for (endIndex = startIndex; endIndex < dn.length(); endIndex++) {
@@ -494,7 +494,7 @@ public class FrameworkUtil {
if (c != '+') {
rdn.add(nameValues);
if (endIndex != dn.length()) {
- nameValues = new ArrayList<>();
+ nameValues = new ArrayList<String>();
} else {
nameValues = null;
}
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/PackagePermission.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/PackagePermission.java
index 0d6c37025..cc8cd627f 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/PackagePermission.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/PackagePermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2000, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2000, 2019). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -538,21 +538,24 @@ public final class PackagePermission extends BasicPermission {
if (result != null) {
return result;
}
- final Map<String, Object> map = new HashMap<>(5);
+ final Map<String, Object> map = new HashMap<String, Object>(5);
map.put("package.name", getName());
if (bundle != null) {
- AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
- map.put("id", Long.valueOf(bundle.getBundleId()));
- map.put("location", bundle.getLocation());
- String name = bundle.getSymbolicName();
- if (name != null) {
- map.put("name", name);
- }
- SignerProperty signer = new SignerProperty(bundle);
- if (signer.isBundleSigned()) {
- map.put("signer", signer);
+ AccessController.doPrivileged(new PrivilegedAction<Void>() {
+ @Override
+ public Void run() {
+ map.put("id", Long.valueOf(bundle.getBundleId()));
+ map.put("location", bundle.getLocation());
+ String name = bundle.getSymbolicName();
+ if (name != null) {
+ map.put("name", name);
+ }
+ SignerProperty signer = new SignerProperty(bundle);
+ if (signer.isBundleSigned()) {
+ map.put("signer", signer);
+ }
+ return null;
}
- return null;
});
}
return properties = map;
@@ -596,7 +599,7 @@ final class PackagePermissionCollection extends PermissionCollection {
* Create an empty PackagePermissions object.
*/
public PackagePermissionCollection() {
- permissions = new HashMap<>();
+ permissions = new HashMap<String, PackagePermission>();
all_allowed = false;
}
@@ -632,7 +635,7 @@ final class PackagePermissionCollection extends PermissionCollection {
if (f != null) {
pc = filterPermissions;
if (pc == null) {
- filterPermissions = pc = new HashMap<>();
+ filterPermissions = pc = new HashMap<String, PackagePermission>();
}
} else {
pc = permissions;
@@ -748,7 +751,7 @@ final class PackagePermissionCollection extends PermissionCollection {
*/
@Override
public synchronized Enumeration<Permission> elements() {
- List<Permission> all = new ArrayList<>(permissions.values());
+ List<Permission> all = new ArrayList<Permission>(permissions.values());
Map<String, PackagePermission> pc = filterPermissions;
if (pc != null) {
all.addAll(pc.values());
@@ -761,7 +764,7 @@ final class PackagePermissionCollection extends PermissionCollection {
new ObjectStreamField("filterPermissions", HashMap.class) };
private synchronized void writeObject(ObjectOutputStream out) throws IOException {
- Hashtable<String, PackagePermission> hashtable = new Hashtable<>(permissions);
+ Hashtable<String, PackagePermission> hashtable = new Hashtable<String, PackagePermission>(permissions);
ObjectOutputStream.PutField pfields = out.putFields();
pfields.put("permissions", hashtable);
pfields.put("all_allowed", all_allowed);
@@ -773,7 +776,7 @@ final class PackagePermissionCollection extends PermissionCollection {
ObjectInputStream.GetField gfields = in.readFields();
@SuppressWarnings("unchecked")
Hashtable<String, PackagePermission> hashtable = (Hashtable<String, PackagePermission>) gfields.get("permissions", null);
- permissions = new HashMap<>(hashtable);
+ permissions = new HashMap<String, PackagePermission>(hashtable);
all_allowed = gfields.get("all_allowed", false);
@SuppressWarnings("unchecked")
HashMap<String, PackagePermission> fp = (HashMap<String, PackagePermission>) gfields.get("filterPermissions", null);
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServicePermission.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServicePermission.java
index 5bb32bfe1..a6b52521c 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServicePermission.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/ServicePermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2000, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2000, 2019). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -552,25 +552,28 @@ public final class ServicePermission extends BasicPermission {
return result;
}
if (service == null) {
- result = new HashMap<>(1);
+ result = new HashMap<String, Object>(1);
result.put(Constants.OBJECTCLASS, new String[] {getName()});
return properties = result;
}
- final Map<String, Object> props = new HashMap<>(4);
+ final Map<String, Object> props = new HashMap<String, Object>(4);
final Bundle bundle = service.getBundle();
if (bundle != null) {
- AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
- props.put("id", Long.valueOf(bundle.getBundleId()));
- props.put("location", bundle.getLocation());
- String name = bundle.getSymbolicName();
- if (name != null) {
- props.put("name", name);
- }
- SignerProperty signer = new SignerProperty(bundle);
- if (signer.isBundleSigned()) {
- props.put("signer", signer);
+ AccessController.doPrivileged(new PrivilegedAction<Void>() {
+ @Override
+ public Void run() {
+ props.put("id", Long.valueOf(bundle.getBundleId()));
+ props.put("location", bundle.getLocation());
+ String name = bundle.getSymbolicName();
+ if (name != null) {
+ props.put("name", name);
+ }
+ SignerProperty signer = new SignerProperty(bundle);
+ if (signer.isBundleSigned()) {
+ props.put("signer", signer);
+ }
+ return null;
}
- return null;
});
}
return properties = new Properties(props, service);
@@ -608,7 +611,7 @@ public final class ServicePermission extends BasicPermission {
if (entries != null) {
return entries;
}
- Set<Map.Entry<String, Object>> all = new HashSet<>(properties.entrySet());
+ Set<Map.Entry<String, Object>> all = new HashSet<Map.Entry<String, Object>>(properties.entrySet());
add: for (String key : service.getPropertyKeys()) {
for (String k : properties.keySet()) {
if (key.equalsIgnoreCase(k)) {
@@ -712,7 +715,7 @@ final class ServicePermissionCollection extends PermissionCollection {
* Creates an empty ServicePermissions object.
*/
public ServicePermissionCollection() {
- permissions = new HashMap<>();
+ permissions = new HashMap<String, ServicePermission>();
all_allowed = false;
}
@@ -747,7 +750,7 @@ final class ServicePermissionCollection extends PermissionCollection {
if (f != null) {
pc = filterPermissions;
if (pc == null) {
- filterPermissions = pc = new HashMap<>();
+ filterPermissions = pc = new HashMap<String, ServicePermission>();
}
} else {
pc = permissions;
@@ -889,7 +892,7 @@ final class ServicePermissionCollection extends PermissionCollection {
*/
@Override
public synchronized Enumeration<Permission> elements() {
- List<Permission> all = new ArrayList<>(permissions.values());
+ List<Permission> all = new ArrayList<Permission>(permissions.values());
Map<String, ServicePermission> pc = filterPermissions;
if (pc != null) {
all.addAll(pc.values());
@@ -902,7 +905,7 @@ final class ServicePermissionCollection extends PermissionCollection {
new ObjectStreamField("filterPermissions", HashMap.class) };
private synchronized void writeObject(ObjectOutputStream out) throws IOException {
- Hashtable<String, ServicePermission> hashtable = new Hashtable<>(permissions);
+ Hashtable<String, ServicePermission> hashtable = new Hashtable<String, ServicePermission>(permissions);
ObjectOutputStream.PutField pfields = out.putFields();
pfields.put("permissions", hashtable);
pfields.put("all_allowed", all_allowed);
@@ -914,7 +917,7 @@ final class ServicePermissionCollection extends PermissionCollection {
ObjectInputStream.GetField gfields = in.readFields();
@SuppressWarnings("unchecked")
Hashtable<String, ServicePermission> hashtable = (Hashtable<String, ServicePermission>) gfields.get("permissions", null);
- permissions = new HashMap<>(hashtable);
+ permissions = new HashMap<String, ServicePermission>(hashtable);
all_allowed = gfields.get("all_allowed", false);
@SuppressWarnings("unchecked")
HashMap<String, ServicePermission> fp = (HashMap<String, ServicePermission>) gfields.get("filterPermissions", null);
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/SignerProperty.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/SignerProperty.java
index 792b91d4e..53dec4a36 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/SignerProperty.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/framework/SignerProperty.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2009, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2009, 2013). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -73,7 +73,7 @@ final class SignerProperty {
String matchPattern = bundle != null ? other.pattern : pattern;
Map<X509Certificate, List<X509Certificate>> signers = matchBundle.getSignerCertificates(Bundle.SIGNERS_TRUSTED);
for (List<X509Certificate> signerCerts : signers.values()) {
- List<String> dnChain = new ArrayList<>(signerCerts.size());
+ List<String> dnChain = new ArrayList<String>(signerCerts.size());
for (X509Certificate signerCert : signerCerts) {
dnChain.add(signerCert.getSubjectDN().getName());
}
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleLocationCondition.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleLocationCondition.java
index f46779f10..8a79c1452 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleLocationCondition.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleLocationCondition.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2005, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2005, 2015). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -66,7 +66,12 @@ public class BundleLocationCondition {
String[] args = info.getArgs();
if (args.length != 1 && args.length != 2)
throw new IllegalArgumentException("Illegal number of args: " + args.length);
- String bundleLocation = AccessController.doPrivileged((PrivilegedAction<String>) () -> bundle.getLocation());
+ String bundleLocation = AccessController.doPrivileged(new PrivilegedAction<String>() {
+ @Override
+ public String run() {
+ return bundle.getLocation();
+ }
+ });
Filter filter = null;
try {
filter = FrameworkUtil.createFilter("(location=" + escapeLocation(args[0]) + ")");
@@ -74,7 +79,7 @@ public class BundleLocationCondition {
// this should never happen, but just in case
throw new RuntimeException("Invalid filter: " + e.getFilter(), e);
}
- Dictionary<String, String> matchProps = new Hashtable<>(2);
+ Dictionary<String, String> matchProps = new Hashtable<String, String>(2);
matchProps.put("location", bundleLocation);
boolean negate = (args.length == 2) ? "!".equals(args[1]) : false;
return (negate ^ filter.match(matchProps)) ? Condition.TRUE : Condition.FALSE;
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleSignerCondition.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleSignerCondition.java
index 2941be76a..9bb17ecb4 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleSignerCondition.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/BundleSignerCondition.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2005, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2005, 2013). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -81,7 +81,7 @@ public class BundleSignerCondition {
Map<X509Certificate, List<X509Certificate>> signers = bundle.getSignerCertificates(Bundle.SIGNERS_TRUSTED);
boolean match = false;
for (List<X509Certificate> signerCerts : signers.values()) {
- List<String> dnChain = new ArrayList<>(signerCerts.size());
+ List<String> dnChain = new ArrayList<String>(signerCerts.size());
for (X509Certificate signer : signerCerts) {
dnChain.add(signer.getSubjectDN().getName());
}
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionInfo.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionInfo.java
index fa529a8c3..f96821be9 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionInfo.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/condpermadmin/ConditionInfo.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2004, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2004, 2016). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -123,7 +123,7 @@ public class ConditionInfo {
}
/* type may be followed by args which are quoted and encoded */
- List<String> argsList = new ArrayList<>();
+ List<String> argsList = new ArrayList<String>();
while (encoded[pos] == '"') {
pos++;
begin = pos;
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolutionException.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolutionException.java
index d9df44a6a..2bcc0ac8e 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolutionException.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolutionException.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2011, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2011, 2013). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -57,7 +57,7 @@ public class ResolutionException extends Exception {
if ((unresolvedRequirements == null) || unresolvedRequirements.isEmpty()) {
this.unresolvedRequirements = null;
} else {
- this.unresolvedRequirements = Collections.unmodifiableCollection(new ArrayList<>(unresolvedRequirements));
+ this.unresolvedRequirements = Collections.unmodifiableCollection(new ArrayList<Requirement>(unresolvedRequirements));
}
}
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolveContext.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolveContext.java
index db9de5a1f..5a3d32eb9 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolveContext.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/service/resolver/ResolveContext.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2011, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2011, 2017). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -289,7 +289,7 @@ public abstract class ResolveContext {
*/
public List<Wire> getSubstitutionWires(Wiring wiring) {
// Keep track of the declared capability package names
- Set<String> exportNames = new HashSet<>();
+ Set<String> exportNames = new HashSet<String>();
// Add packages declared as provided by the wiring host
for (Capability cap : wiring.getResource().getCapabilities(null)) {
@@ -316,7 +316,7 @@ public abstract class ResolveContext {
// collect the package wires that substitute one of the declared
// export package names
- List<Wire> substitutionWires = new ArrayList<>();
+ List<Wire> substitutionWires = new ArrayList<Wire>();
for (Wire wire : wiring.getRequiredResourceWires(null)) {
if (PackageNamespace.PACKAGE_NAMESPACE
.equals(wire.getCapability().getNamespace())) {
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/AbstractTracked.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/AbstractTracked.java
index 0773bc037..5988d7939 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/AbstractTracked.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/AbstractTracked.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2007, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2007, 2013). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -103,10 +103,10 @@ abstract class AbstractTracked<S, T, R> {
* AbstractTracked constructor.
*/
AbstractTracked() {
- tracked = new HashMap<>();
+ tracked = new HashMap<S, T>();
trackingCount = 0;
- adding = new ArrayList<>(6);
- initial = new LinkedList<>();
+ adding = new ArrayList<S>(6);
+ initial = new LinkedList<S>();
closed = false;
}
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTracker.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTracker.java
index 1b52ad25a..ac16c218a 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTracker.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/BundleTracker.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2007, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2007, 2017). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -383,7 +383,7 @@ public class BundleTracker<T> implements BundleTrackerCustomizer<T> {
* @since 1.5
*/
public Map<Bundle, T> getTracked() {
- Map<Bundle, T> map = new HashMap<>();
+ Map<Bundle, T> map = new HashMap<Bundle, T>();
final Tracked t = tracked();
if (t == null) { /* if BundleTracker is not open */
return map;
diff --git a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTracker.java b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTracker.java
index fcf430ca1..3c9016c43 100644
--- a/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTracker.java
+++ b/bundles/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTracker.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) OSGi Alliance (2000, 2021). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2000, 2017). All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -782,7 +782,7 @@ public class ServiceTracker<S, T> implements ServiceTrackerCustomizer<S, T> {
* @since 1.5
*/
public SortedMap<ServiceReference<S>, T> getTracked() {
- SortedMap<ServiceReference<S>, T> map = new TreeMap<>(Collections.reverseOrder());
+ SortedMap<ServiceReference<S>, T> map = new TreeMap<ServiceReference<S>, T>(Collections.reverseOrder());
final Tracked t = tracked();
if (t == null) { /* if ServiceTracker is not open */
return map;

Back to the top