FELIX-2269: Only the higher version of a given bundle is kept in a repository

git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@932494 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/RepositoryImpl.java b/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/RepositoryImpl.java
index 5c283d2..f2a7d5a 100644
--- a/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/RepositoryImpl.java
+++ b/bundlerepository/src/main/java/org/apache/felix/bundlerepository/impl/RepositoryImpl.java
@@ -20,13 +20,12 @@
 
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.util.Collections;
+import java.util.Arrays;
+import java.util.HashSet;
 import java.util.Set;
-import java.util.TreeSet;
 
 import org.apache.felix.bundlerepository.Resource;
 import org.apache.felix.bundlerepository.Repository;
-import org.apache.felix.bundlerepository.impl.ResourceImpl;
 
 public class RepositoryImpl implements Repository
 {
@@ -35,7 +34,7 @@
     private String m_uri = null;
     private Resource[] m_resources = null;
     private Referral[] m_referrals = null;
-    private Set m_resourceSet = new TreeSet(new ResourceComparator());
+    private Set m_resourceSet = new HashSet();
 
     public RepositoryImpl()
     {
@@ -61,6 +60,8 @@
         if (m_resources == null)
         {
             m_resources = (Resource[]) m_resourceSet.toArray(new Resource[m_resourceSet.size()]);
+            Arrays.sort(m_resources, new ResourceComparator());
+
         }
         return m_resources;
     }