JBoss-OSGI SVN: r103423 - in projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4: core/src/main/java/org/jboss/osgi/framework/deployers and 1 other directory.
by jboss-osgi-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2010-04-01 09:16:15 -0400 (Thu, 01 Apr 2010)
New Revision: 103423
Modified:
projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/bundle/src/test/java/org/jboss/test/osgi/classloader/DynamicImportPackageTestCase.java
projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/core/src/main/java/org/jboss/osgi/framework/deployers/AbstractClassLoadingDeployer.java
Log:
Disable DynamicImport-Package functionality
Modified: projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/bundle/src/test/java/org/jboss/test/osgi/classloader/DynamicImportPackageTestCase.java
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/bundle/src/test/java/org/jboss/test/osgi/classloader/DynamicImportPackageTestCase.java 2010-04-01 13:11:49 UTC (rev 103422)
+++ projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/bundle/src/test/java/org/jboss/test/osgi/classloader/DynamicImportPackageTestCase.java 2010-04-01 13:16:15 UTC (rev 103423)
@@ -34,6 +34,7 @@
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
+import org.junit.Ignore;
import org.osgi.framework.Bundle;
import org.osgi.service.log.LogService;
@@ -43,6 +44,7 @@
* @author thomas.diesler(a)jboss.com
* @since 26-Mar-2010
*/
+@Ignore
public class DynamicImportPackageTestCase extends OSGiFrameworkTest
{
@Before
Modified: projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/core/src/main/java/org/jboss/osgi/framework/deployers/AbstractClassLoadingDeployer.java
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/core/src/main/java/org/jboss/osgi/framework/deployers/AbstractClassLoadingDeployer.java 2010-04-01 13:11:49 UTC (rev 103422)
+++ projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/core/src/main/java/org/jboss/osgi/framework/deployers/AbstractClassLoadingDeployer.java 2010-04-01 13:16:15 UTC (rev 103423)
@@ -142,7 +142,7 @@
}
}
- // DynamicImport-Package
+ /* DynamicImport-Package
List<PackageAttribute> dynamicImports = osgiMetaData.getDynamicImports();
if (dynamicImports != null && dynamicImports.isEmpty() == false)
{
@@ -159,6 +159,7 @@
requirements.addRequirement(requirement);
}
}
+ */
unit.addAttachment(ClassLoadingMetaData.class, classLoadingMetaData);
14 years, 2 months
JBoss-OSGI SVN: r103421 - in projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4: bundle and 4 other directories.
by jboss-osgi-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2010-04-01 08:41:25 -0400 (Thu, 01 Apr 2010)
New Revision: 103421
Modified:
projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/bundle/pom.xml
projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/core/pom.xml
projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/metadata/pom.xml
projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/pom.xml
projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/vfs21/pom.xml
projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/vfs30/pom.xml
Log:
Use 1.0.0.Alpha4-SNAPSHOT
Modified: projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/bundle/pom.xml
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/bundle/pom.xml 2010-04-01 12:33:35 UTC (rev 103420)
+++ projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/bundle/pom.xml 2010-04-01 12:41:25 UTC (rev 103421)
@@ -29,7 +29,7 @@
<parent>
<groupId>org.jboss.osgi.framework</groupId>
<artifactId>jboss-osgi-framework-parent</artifactId>
- <version>1.0.0.Alpha5-SNAPSHOT</version>
+ <version>1.0.0.Alpha4-SNAPSHOT</version>
</parent>
<!-- Properties -->
Modified: projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/core/pom.xml
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/core/pom.xml 2010-04-01 12:33:35 UTC (rev 103420)
+++ projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/core/pom.xml 2010-04-01 12:41:25 UTC (rev 103421)
@@ -24,7 +24,7 @@
<parent>
<groupId>org.jboss.osgi.framework</groupId>
<artifactId>jboss-osgi-framework-parent</artifactId>
- <version>1.0.0.Alpha5-SNAPSHOT</version>
+ <version>1.0.0.Alpha4-SNAPSHOT</version>
</parent>
<dependencies>
Modified: projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/metadata/pom.xml
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/metadata/pom.xml 2010-04-01 12:33:35 UTC (rev 103420)
+++ projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/metadata/pom.xml 2010-04-01 12:41:25 UTC (rev 103421)
@@ -29,7 +29,7 @@
<parent>
<groupId>org.jboss.osgi.framework</groupId>
<artifactId>jboss-osgi-framework-parent</artifactId>
- <version>1.0.0.Alpha5-SNAPSHOT</version>
+ <version>1.0.0.Alpha4-SNAPSHOT</version>
</parent>
<dependencies>
Modified: projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/pom.xml
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/pom.xml 2010-04-01 12:33:35 UTC (rev 103420)
+++ projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/pom.xml 2010-04-01 12:41:25 UTC (rev 103421)
@@ -26,7 +26,7 @@
<artifactId>jboss-osgi-framework-parent</artifactId>
<packaging>pom</packaging>
- <version>1.0.0.Alpha5-SNAPSHOT</version>
+ <version>1.0.0.Alpha4-SNAPSHOT</version>
<parent>
<groupId>org.jboss.osgi</groupId>
Modified: projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/vfs21/pom.xml
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/vfs21/pom.xml 2010-04-01 12:33:35 UTC (rev 103420)
+++ projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/vfs21/pom.xml 2010-04-01 12:41:25 UTC (rev 103421)
@@ -24,7 +24,7 @@
<parent>
<groupId>org.jboss.osgi.framework</groupId>
<artifactId>jboss-osgi-framework-parent</artifactId>
- <version>1.0.0.Alpha5-SNAPSHOT</version>
+ <version>1.0.0.Alpha4-SNAPSHOT</version>
</parent>
<!-- Properties -->
Modified: projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/vfs30/pom.xml
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/vfs30/pom.xml 2010-04-01 12:33:35 UTC (rev 103420)
+++ projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/vfs30/pom.xml 2010-04-01 12:41:25 UTC (rev 103421)
@@ -24,7 +24,7 @@
<parent>
<groupId>org.jboss.osgi.framework</groupId>
<artifactId>jboss-osgi-framework-parent</artifactId>
- <version>1.0.0.Alpha5-SNAPSHOT</version>
+ <version>1.0.0.Alpha4-SNAPSHOT</version>
</parent>
<!-- Properties -->
14 years, 2 months
JBoss-OSGI SVN: r103420 - projects/jboss-osgi/projects/runtime/framework/branches.
by jboss-osgi-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2010-04-01 08:33:35 -0400 (Thu, 01 Apr 2010)
New Revision: 103420
Added:
projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4/
Log:
create QA branch
Copied: projects/jboss-osgi/projects/runtime/framework/branches/1.0.0.Alpha4 (from rev 103419, projects/jboss-osgi/projects/runtime/framework/trunk)
14 years, 2 months
JBoss-OSGI SVN: r103419 - projects/jboss-osgi/playground.
by jboss-osgi-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2010-04-01 08:00:28 -0400 (Thu, 01 Apr 2010)
New Revision: 103419
Removed:
projects/jboss-osgi/playground/fileA
Log:
rm playground
Deleted: projects/jboss-osgi/playground/fileA
===================================================================
--- projects/jboss-osgi/playground/fileA 2010-04-01 11:49:30 UTC (rev 103418)
+++ projects/jboss-osgi/playground/fileA 2010-04-01 12:00:28 UTC (rev 103419)
@@ -1 +0,0 @@
-aaa
14 years, 2 months
JBoss-OSGI SVN: r103417 - projects/jboss-osgi/playground.
by jboss-osgi-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2010-04-01 07:47:52 -0400 (Thu, 01 Apr 2010)
New Revision: 103417
Added:
projects/jboss-osgi/playground/fileA
Log:
add fileA
Added: projects/jboss-osgi/playground/fileA
===================================================================
--- projects/jboss-osgi/playground/fileA (rev 0)
+++ projects/jboss-osgi/playground/fileA 2010-04-01 11:47:52 UTC (rev 103417)
@@ -0,0 +1 @@
+aaa
14 years, 2 months
JBoss-OSGI SVN: r103413 - projects/jboss-osgi/playground.
by jboss-osgi-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2010-04-01 07:29:15 -0400 (Thu, 01 Apr 2010)
New Revision: 103413
Removed:
projects/jboss-osgi/playground/fileA.txt
Log:
rm playground
Deleted: projects/jboss-osgi/playground/fileA.txt
===================================================================
--- projects/jboss-osgi/playground/fileA.txt 2010-04-01 11:05:01 UTC (rev 103412)
+++ projects/jboss-osgi/playground/fileA.txt 2010-04-01 11:29:15 UTC (rev 103413)
@@ -1,2 +0,0 @@
-tdvaio adds makes first change
-tdvaio change #2
14 years, 2 months
JBoss-OSGI SVN: r103408 - projects/jboss-osgi/playground.
by jboss-osgi-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2010-04-01 06:47:46 -0400 (Thu, 01 Apr 2010)
New Revision: 103408
Removed:
projects/jboss-osgi/playground/fileB.txt
Log:
rm fileB
Deleted: projects/jboss-osgi/playground/fileB.txt
===================================================================
--- projects/jboss-osgi/playground/fileB.txt 2010-04-01 10:33:33 UTC (rev 103407)
+++ projects/jboss-osgi/playground/fileB.txt 2010-04-01 10:47:46 UTC (rev 103408)
@@ -1 +0,0 @@
-nother fileB
14 years, 2 months
JBoss-OSGI SVN: r103407 - projects/jboss-osgi/projects/runtime/framework/trunk/bundle/src/test/java/org/jboss/test/osgi/classloader.
by jboss-osgi-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2010-04-01 06:33:33 -0400 (Thu, 01 Apr 2010)
New Revision: 103407
Modified:
projects/jboss-osgi/projects/runtime/framework/trunk/bundle/src/test/java/org/jboss/test/osgi/classloader/DynamicImportPackageTestCase.java
Log:
[JBCL-131] More test coverage
Modified: projects/jboss-osgi/projects/runtime/framework/trunk/bundle/src/test/java/org/jboss/test/osgi/classloader/DynamicImportPackageTestCase.java
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/bundle/src/test/java/org/jboss/test/osgi/classloader/DynamicImportPackageTestCase.java 2010-04-01 09:22:25 UTC (rev 103406)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/bundle/src/test/java/org/jboss/test/osgi/classloader/DynamicImportPackageTestCase.java 2010-04-01 10:33:33 UTC (rev 103407)
@@ -45,10 +45,15 @@
*/
public class DynamicImportPackageTestCase extends OSGiFrameworkTest
{
- private static JavaArchive archiveC;
+ @Before
+ public void setUp() throws Exception
+ {
+ super.setUp();
+ getPackageAdmin().refreshPackages(null);
+ }
- @BeforeClass
- public static void beforeTestCase()
+ @Test
+ public void testAllPackagesWildcardWired() throws Exception
{
// Bundle-SymbolicName: dynamic-log-service
// DynamicImport-Package: org.osgi.service.log
@@ -66,14 +71,6 @@
});
}
- @Before
- @Override
- public void setUp() throws Exception
- {
- super.setUp();
- getPackageAdmin().refreshPackages(null);
- }
-
@Test
public void testAllPackagesWildcard() throws Exception
{
@@ -244,12 +241,12 @@
}
@Test
- public void testPackagesWildcardNotThere() throws Exception
+ public void testPackageWildcardWired() throws Exception
{
// Bundle-SymbolicName: dynamic-wildcard-a
// Export-Package: org.jboss.test.osgi.classloader.support.a
// Import-Package: org.jboss.test.osgi.classloader.support.b
- // DynamicImport-Package: foo.*
+ // DynamicImport-Package: org.jboss.test.osgi.classloader.*
final JavaArchive archiveA = Archives.create("dynamic-wildcard-a", JavaArchive.class);
archiveA.addClass(A.class);
archiveA.setManifest(new Asset()
@@ -261,7 +258,7 @@
builder.addBundleSymbolicName(archiveA.getName());
builder.addExportPackages(A.class.getPackage().getName());
builder.addImportPackages(B.class.getPackage().getName());
- builder.addDynamicImportPackages("foo.*");
+ builder.addDynamicImportPackages("org.jboss.test.osgi.classloader.*");
return builder.openStream();
}
});
@@ -294,7 +291,8 @@
assertLoadClass(bundleA, A.class.getName(), bundleA);
assertLoadClass(bundleA, B.class.getName(), bundleB);
- assertLoadClassFail(bundleA, C.class.getName());
+ System.out.println("FIXME [JBCL-131] Add a notion of on demand resolution");
+ //assertLoadClass(bundleA, C.class.getName(), bundleB);
assertBundleState(Bundle.RESOLVED, bundleA.getState());
assertBundleState(Bundle.RESOLVED, bundleB.getState());
@@ -311,6 +309,107 @@
}
@Test
+ public void testPackageWildcardNotWired() throws Exception
+ {
+ // Bundle-SymbolicName: dynamic-wildcard-a
+ // Export-Package: org.jboss.test.osgi.classloader.support.a
+ // DynamicImport-Package: org.jboss.test.osgi.classloader.*
+ final JavaArchive archiveA = Archives.create("dynamic-wildcard-a", JavaArchive.class);
+ archiveA.addClass(A.class);
+ archiveA.setManifest(new Asset()
+ {
+ public InputStream openStream()
+ {
+ OSGiManifestBuilder builder = OSGiManifestBuilder.newInstance();
+ builder.addBundleManifestVersion(2);
+ builder.addBundleSymbolicName(archiveA.getName());
+ builder.addExportPackages(A.class.getPackage().getName());
+ builder.addDynamicImportPackages("org.jboss.test.osgi.classloader.*");
+ return builder.openStream();
+ }
+ });
+
+ // Bundle-SymbolicName: dynamic-wildcard-c
+ // Export-Package: org.jboss.test.osgi.classloader.support.c
+ final JavaArchive archiveC = Archives.create("dynamic-wildcard-c", JavaArchive.class);
+ archiveC.addClasses(C.class);
+ archiveC.setManifest(new Asset()
+ {
+ public InputStream openStream()
+ {
+ OSGiManifestBuilder builder = OSGiManifestBuilder.newInstance();
+ builder.addBundleManifestVersion(2);
+ builder.addBundleSymbolicName(archiveC.getName());
+ builder.addExportPackages(C.class.getPackage().getName());
+ return builder.openStream();
+ }
+ });
+
+ Bundle bundleA = installBundle(archiveA);
+ assertBundleState(Bundle.INSTALLED, bundleA.getState());
+ try
+ {
+ Bundle bundleC = installBundle(archiveC);
+ assertBundleState(Bundle.INSTALLED, bundleC.getState());
+ try
+ {
+ assertLoadClass(bundleA, A.class.getName(), bundleA);
+
+ System.out.println("FIXME [JBCL-131] Add a notion of on demand resolution");
+ //assertLoadClass(bundleA, C.class.getName(), bundleC);
+
+ assertBundleState(Bundle.RESOLVED, bundleA.getState());
+ //assertBundleState(Bundle.RESOLVED, bundleC.getState());
+ }
+ finally
+ {
+ bundleC.uninstall();
+ }
+ }
+ finally
+ {
+ bundleA.uninstall();
+ }
+ }
+
+ @Test
+ public void testPackageWildcardNotThere() throws Exception
+ {
+ // Bundle-SymbolicName: dynamic-wildcard-a
+ // Export-Package: org.jboss.test.osgi.classloader.support.a
+ // DynamicImport-Package: org.jboss.test.osgi.classloader.*
+ final JavaArchive archiveA = Archives.create("dynamic-wildcard-a", JavaArchive.class);
+ archiveA.addClass(A.class);
+ archiveA.setManifest(new Asset()
+ {
+ public InputStream openStream()
+ {
+ OSGiManifestBuilder builder = OSGiManifestBuilder.newInstance();
+ builder.addBundleManifestVersion(2);
+ builder.addBundleSymbolicName(archiveA.getName());
+ builder.addExportPackages(A.class.getPackage().getName());
+ builder.addDynamicImportPackages("*");
+ return builder.openStream();
+ }
+ });
+
+ Bundle bundleA = installBundle(archiveA);
+ assertBundleState(Bundle.INSTALLED, bundleA.getState());
+ try
+ {
+ assertLoadClass(bundleA, A.class.getName(), bundleA);
+
+ assertLoadClassFail(bundleA, C.class.getName());
+
+ assertBundleState(Bundle.RESOLVED, bundleA.getState());
+ }
+ finally
+ {
+ bundleA.uninstall();
+ }
+ }
+
+ @Test
public void testLogServiceAvailableOnInstall() throws Exception
{
Bundle cmpd = installBundle("bundles/org.osgi.compendium.jar");
@@ -362,4 +461,25 @@
bundleC.uninstall();
}
}
+
+ @BeforeClass
+ public static void beforeTestCase()
+ {
+ // Bundle-SymbolicName: dynamic-log-service
+ // DynamicImport-Package: org.osgi.service.log
+ archiveC = Archives.create("dynamic-log-service", JavaArchive.class);
+ archiveC.setManifest(new Asset()
+ {
+ public InputStream openStream()
+ {
+ OSGiManifestBuilder builder = OSGiManifestBuilder.newInstance();
+ builder.addBundleManifestVersion(2);
+ builder.addBundleSymbolicName(archiveC.getName());
+ builder.addDynamicImportPackages("org.osgi.service.log");
+ return builder.openStream();
+ }
+ });
+ }
+
+ private static JavaArchive archiveC;
}
14 years, 2 months
JBoss-OSGI SVN: r103378 - projects/jboss-osgi/projects/runtime/framework/trunk/bundle/src/test/java/org/jboss/test/osgi/classloader.
by jboss-osgi-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2010-04-01 01:32:52 -0400 (Thu, 01 Apr 2010)
New Revision: 103378
Modified:
projects/jboss-osgi/projects/runtime/framework/trunk/bundle/src/test/java/org/jboss/test/osgi/classloader/DynamicImportPackageTestCase.java
Log:
[JBCL-131] More test coverage - wip
Modified: projects/jboss-osgi/projects/runtime/framework/trunk/bundle/src/test/java/org/jboss/test/osgi/classloader/DynamicImportPackageTestCase.java
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/bundle/src/test/java/org/jboss/test/osgi/classloader/DynamicImportPackageTestCase.java 2010-04-01 05:32:00 UTC (rev 103377)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/bundle/src/test/java/org/jboss/test/osgi/classloader/DynamicImportPackageTestCase.java 2010-04-01 05:32:52 UTC (rev 103378)
@@ -31,6 +31,7 @@
import org.jboss.test.osgi.classloader.support.a.A;
import org.jboss.test.osgi.classloader.support.b.B;
import org.jboss.test.osgi.classloader.support.c.C;
+import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.osgi.framework.Bundle;
@@ -44,16 +45,43 @@
*/
public class DynamicImportPackageTestCase extends OSGiFrameworkTest
{
- private static JavaArchive archiveA, archiveB, archiveC;
+ private static JavaArchive archiveC;
@BeforeClass
public static void beforeTestCase()
{
+ // Bundle-SymbolicName: dynamic-log-service
+ // DynamicImport-Package: org.osgi.service.log
+ archiveC = Archives.create("dynamic-log-service", JavaArchive.class);
+ archiveC.setManifest(new Asset()
+ {
+ public InputStream openStream()
+ {
+ OSGiManifestBuilder builder = OSGiManifestBuilder.newInstance();
+ builder.addBundleManifestVersion(2);
+ builder.addBundleSymbolicName(archiveC.getName());
+ builder.addDynamicImportPackages("org.osgi.service.log");
+ return builder.openStream();
+ }
+ });
+ }
+
+ @Before
+ @Override
+ public void setUp() throws Exception
+ {
+ super.setUp();
+ getPackageAdmin().refreshPackages(null);
+ }
+
+ @Test
+ public void testAllPackagesWildcard() throws Exception
+ {
// Bundle-SymbolicName: dynamic-wildcard-a
// Export-Package: org.jboss.test.osgi.classloader.support.a
// Import-Package: org.jboss.test.osgi.classloader.support.b
// DynamicImport-Package: *
- archiveA = Archives.create("dynamic-wildcard-a", JavaArchive.class);
+ final JavaArchive archiveA = Archives.create("dynamic-wildcard-a", JavaArchive.class);
archiveA.addClass(A.class);
archiveA.setManifest(new Asset()
{
@@ -71,7 +99,7 @@
// Bundle-SymbolicName: dynamic-wildcard-bc
// Export-Package: org.jboss.test.osgi.classloader.support.b, org.jboss.test.osgi.classloader.support.c
- archiveB = Archives.create("dynamic-wildcard-bc", JavaArchive.class);
+ final JavaArchive archiveB = Archives.create("dynamic-wildcard-bc", JavaArchive.class);
archiveB.addClasses(B.class, C.class);
archiveB.setManifest(new Asset()
{
@@ -86,9 +114,59 @@
}
});
- // Bundle-SymbolicName: dynamic-log-service
- // DynamicImport-Package: org.osgi.service.log
- archiveC = Archives.create("dynamic-log-service", JavaArchive.class);
+ Bundle bundleA = installBundle(archiveA);
+ assertBundleState(Bundle.INSTALLED, bundleA.getState());
+ try
+ {
+ Bundle bundleB = installBundle(archiveB);
+ assertBundleState(Bundle.INSTALLED, bundleB.getState());
+ try
+ {
+ assertLoadClass(bundleA, A.class.getName(), bundleA);
+ assertLoadClass(bundleA, B.class.getName(), bundleB);
+
+ System.out.println("FIXME [JBCL-131] Add a notion of on demand resolution");
+ //assertLoadClass(bundleA, C.class.getName(), bundleB);
+
+ assertBundleState(Bundle.RESOLVED, bundleA.getState());
+ assertBundleState(Bundle.RESOLVED, bundleB.getState());
+ }
+ finally
+ {
+ bundleB.uninstall();
+ }
+ }
+ finally
+ {
+ bundleA.uninstall();
+ }
+ }
+
+ @Test
+ public void testAllPackagesWildcardNotWired() throws Exception
+ {
+ // Bundle-SymbolicName: dynamic-wildcard-a
+ // Export-Package: org.jboss.test.osgi.classloader.support.a
+ // DynamicImport-Package: *
+ final JavaArchive archiveA = Archives.create("dynamic-wildcard-a", JavaArchive.class);
+ archiveA.addClass(A.class);
+ archiveA.setManifest(new Asset()
+ {
+ public InputStream openStream()
+ {
+ OSGiManifestBuilder builder = OSGiManifestBuilder.newInstance();
+ builder.addBundleManifestVersion(2);
+ builder.addBundleSymbolicName(archiveA.getName());
+ builder.addExportPackages(A.class.getPackage().getName());
+ builder.addDynamicImportPackages("*");
+ return builder.openStream();
+ }
+ });
+
+ // Bundle-SymbolicName: dynamic-wildcard-c
+ // Export-Package: org.jboss.test.osgi.classloader.support.c
+ final JavaArchive archiveC = Archives.create("dynamic-wildcard-c", JavaArchive.class);
+ archiveC.addClasses(C.class);
archiveC.setManifest(new Asset()
{
public InputStream openStream()
@@ -96,29 +174,128 @@
OSGiManifestBuilder builder = OSGiManifestBuilder.newInstance();
builder.addBundleManifestVersion(2);
builder.addBundleSymbolicName(archiveC.getName());
- builder.addDynamicImportPackages("org.osgi.service.log");
+ builder.addExportPackages(C.class.getPackage().getName());
return builder.openStream();
}
});
+
+ Bundle bundleA = installBundle(archiveA);
+ assertBundleState(Bundle.INSTALLED, bundleA.getState());
+ try
+ {
+ Bundle bundleC = installBundle(archiveC);
+ assertBundleState(Bundle.INSTALLED, bundleC.getState());
+ try
+ {
+ assertLoadClass(bundleA, A.class.getName(), bundleA);
+
+ System.out.println("FIXME [JBCL-131] Add a notion of on demand resolution");
+ //assertLoadClass(bundleA, C.class.getName(), bundleC);
+
+ assertBundleState(Bundle.RESOLVED, bundleA.getState());
+ //assertBundleState(Bundle.RESOLVED, bundleC.getState());
+ }
+ finally
+ {
+ bundleC.uninstall();
+ }
+ }
+ finally
+ {
+ bundleA.uninstall();
+ }
}
@Test
- public void testDynamicImportWithWildcard() throws Exception
+ public void testAllPackagesWildcardNotThere() throws Exception
{
+ // Bundle-SymbolicName: dynamic-wildcard-a
+ // Export-Package: org.jboss.test.osgi.classloader.support.a
+ // DynamicImport-Package: *
+ final JavaArchive archiveA = Archives.create("dynamic-wildcard-a", JavaArchive.class);
+ archiveA.addClass(A.class);
+ archiveA.setManifest(new Asset()
+ {
+ public InputStream openStream()
+ {
+ OSGiManifestBuilder builder = OSGiManifestBuilder.newInstance();
+ builder.addBundleManifestVersion(2);
+ builder.addBundleSymbolicName(archiveA.getName());
+ builder.addExportPackages(A.class.getPackage().getName());
+ builder.addDynamicImportPackages("*");
+ return builder.openStream();
+ }
+ });
+
Bundle bundleA = installBundle(archiveA);
assertBundleState(Bundle.INSTALLED, bundleA.getState());
try
{
+ assertLoadClass(bundleA, A.class.getName(), bundleA);
+
+ assertLoadClassFail(bundleA, C.class.getName());
+
+ assertBundleState(Bundle.RESOLVED, bundleA.getState());
+ }
+ finally
+ {
+ bundleA.uninstall();
+ }
+ }
+
+ @Test
+ public void testPackagesWildcardNotThere() throws Exception
+ {
+ // Bundle-SymbolicName: dynamic-wildcard-a
+ // Export-Package: org.jboss.test.osgi.classloader.support.a
+ // Import-Package: org.jboss.test.osgi.classloader.support.b
+ // DynamicImport-Package: foo.*
+ final JavaArchive archiveA = Archives.create("dynamic-wildcard-a", JavaArchive.class);
+ archiveA.addClass(A.class);
+ archiveA.setManifest(new Asset()
+ {
+ public InputStream openStream()
+ {
+ OSGiManifestBuilder builder = OSGiManifestBuilder.newInstance();
+ builder.addBundleManifestVersion(2);
+ builder.addBundleSymbolicName(archiveA.getName());
+ builder.addExportPackages(A.class.getPackage().getName());
+ builder.addImportPackages(B.class.getPackage().getName());
+ builder.addDynamicImportPackages("foo.*");
+ return builder.openStream();
+ }
+ });
+
+ // Bundle-SymbolicName: dynamic-wildcard-bc
+ // Export-Package: org.jboss.test.osgi.classloader.support.b, org.jboss.test.osgi.classloader.support.c
+ final JavaArchive archiveB = Archives.create("dynamic-wildcard-bc", JavaArchive.class);
+ archiveB.addClasses(B.class, C.class);
+ archiveB.setManifest(new Asset()
+ {
+ public InputStream openStream()
+ {
+ OSGiManifestBuilder builder = OSGiManifestBuilder.newInstance();
+ builder.addBundleManifestVersion(2);
+ builder.addBundleSymbolicName(archiveB.getName());
+ builder.addExportPackages(B.class.getPackage().getName());
+ builder.addExportPackages(C.class.getPackage().getName());
+ return builder.openStream();
+ }
+ });
+
+ Bundle bundleA = installBundle(archiveA);
+ assertBundleState(Bundle.INSTALLED, bundleA.getState());
+ try
+ {
Bundle bundleB = installBundle(archiveB);
assertBundleState(Bundle.INSTALLED, bundleB.getState());
try
{
assertLoadClass(bundleA, A.class.getName(), bundleA);
assertLoadClass(bundleA, B.class.getName(), bundleB);
-
- System.out.println("FIXME [JBCL-131] Add a notion of on demand resolution");
- //assertLoadClass(bundleA, C.class.getName(), bundleB);
-
+
+ assertLoadClassFail(bundleA, C.class.getName());
+
assertBundleState(Bundle.RESOLVED, bundleA.getState());
assertBundleState(Bundle.RESOLVED, bundleB.getState());
}
14 years, 3 months