diff options
Diffstat (limited to 'bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/ShadowList.java')
-rwxr-xr-x | bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/util/ShadowList.java | 17 |
1 files changed, 5 insertions, 12 deletions
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 f69025fdc..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 @@ -27,36 +27,29 @@ import org.osgi.service.resolver.ResolveContext; public class ShadowList extends CandidateSelector { - public static ShadowList createShadowList(CandidateSelector original) { + public static ShadowList createShadowList(CandidateSelector original) { if (original instanceof ShadowList) { throw new IllegalArgumentException("Cannot create a ShadowList using another ShadowList."); } - return new ShadowList(original); + return new ShadowList(original.unmodifiable, original.unmodifiable, original.isUnmodifiable); } public static ShadowList deepCopy(ShadowList original) { - List<Capability> originalCopy = new ArrayList<Capability>(original.m_original); - return new ShadowList(original.unmodifiable, originalCopy, original.isUnmodifiable); + return new ShadowList(original.unmodifiable, original.m_original, original.isUnmodifiable); } private final List<Capability> m_original; - private ShadowList(CandidateSelector original) - { - super(original); - m_original = new ArrayList<Capability>(original.getRemainingCandidates()); - } - private ShadowList(CandidateSelector shadow, List<Capability> original) { super(shadow); m_original = original; } - public ShadowList(List<Capability> unmodifiable, List<Capability> originalCopy, AtomicBoolean isUnmodifiable) { + private ShadowList(List<Capability> unmodifiable, List<Capability> original, AtomicBoolean isUnmodifiable) { super(unmodifiable, isUnmodifiable); - m_original = originalCopy; + m_original = new ArrayList<Capability>(original); } public ShadowList copy() { |