Author: rickhall
Date: Tue Sep 21 14:42:12 2010
New Revision: 999440

URL: http://svn.apache.org/viewvc?rev=999440&view=rev
Log:
Add all attributes/directives to system bundle export package header. 
(FELIX-2599)

Modified:
    
felix/trunk/framework/src/main/java/org/apache/felix/framework/ExtensionManager.java

Modified: 
felix/trunk/framework/src/main/java/org/apache/felix/framework/ExtensionManager.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/apache/felix/framework/ExtensionManager.java?rev=999440&r1=999439&r2=999440&view=diff
==============================================================================
--- 
felix/trunk/framework/src/main/java/org/apache/felix/framework/ExtensionManager.java
 (original)
+++ 
felix/trunk/framework/src/main/java/org/apache/felix/framework/ExtensionManager.java
 Tue Sep 21 14:42:12 2010
@@ -440,9 +440,27 @@ class ExtensionManager extends URLStream
 
                 // Append exported package information.
                 
exportSB.append(m_capabilities.get(i).getAttribute(Capability.PACKAGE_ATTR).getValue());
-                exportSB.append("; version=\"");
-                
exportSB.append(m_capabilities.get(i).getAttribute(Capability.VERSION_ATTR).getValue());
-                exportSB.append("\"");
+                for (Directive dir : m_capabilities.get(i).getDirectives())
+                {
+                    exportSB.append("; ");
+                    exportSB.append(dir.getName());
+                    exportSB.append(":=\"");
+                    exportSB.append(dir.getValue());
+                    exportSB.append("\"");
+                }
+                for (Attribute attr : m_capabilities.get(i).getAttributes())
+                {
+                    if (!attr.getName().equals(Capability.PACKAGE_ATTR)
+                        && 
!attr.getName().equals(Constants.BUNDLE_SYMBOLICNAME_ATTRIBUTE)
+                        && 
!attr.getName().equals(Constants.BUNDLE_VERSION_ATTRIBUTE))
+                    {
+                        exportSB.append("; ");
+                        exportSB.append(attr.getName());
+                        exportSB.append("=\"");
+                        exportSB.append(attr.getValue());
+                        exportSB.append("\"");
+                    }
+                }
 
                 // Remember exported packages.
                 
exportNames.add(m_capabilities.get(i).getAttribute(Capability.PACKAGE_ATTR).getValue());


Reply via email to