Add back an internal method to return fragments associated with a wiring
to avoid out-of-order parallel array issue. (FELIX-3701)


git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1581862 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/framework/src/main/java/org/apache/felix/framework/BundleRevisionImpl.java b/framework/src/main/java/org/apache/felix/framework/BundleRevisionImpl.java
index bc8de71..6d0e694 100644
--- a/framework/src/main/java/org/apache/felix/framework/BundleRevisionImpl.java
+++ b/framework/src/main/java/org/apache/felix/framework/BundleRevisionImpl.java
@@ -371,7 +371,11 @@
         List<Content> fragmentContents = null;
         if (m_wiring != null)
         {
-            fragments = Util.getFragments(m_wiring);
+            // Get fragments and their contents from the wiring.
+            // Note that we don't use Util.getFragments() here because
+            // the wiring returns parallel arrays and the utility method
+            // doesn't necessarily return the correct order.
+            fragments = m_wiring.getFragments();
             fragmentContents = m_wiring.getFragmentContents();
         }
         if (fragments != null)
diff --git a/framework/src/main/java/org/apache/felix/framework/BundleWiringImpl.java b/framework/src/main/java/org/apache/felix/framework/BundleWiringImpl.java
index beecd41..8d2a967 100644
--- a/framework/src/main/java/org/apache/felix/framework/BundleWiringImpl.java
+++ b/framework/src/main/java/org/apache/felix/framework/BundleWiringImpl.java
@@ -501,6 +501,11 @@
         return m_importedPkgs.get(pkgName);
     }
 
+    List<BundleRevision> getFragments()
+    {
+        return m_fragments;
+    }
+
     List<Content> getFragmentContents()
     {
         return m_fragmentContents;