[jboss-osgi-commits] JBoss-OSGI SVN: r99304 - in projects/jboss-osgi: projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers and 6 other directories.
jboss-osgi-commits at lists.jboss.org
jboss-osgi-commits at lists.jboss.org
Tue Jan 12 12:29:11 EST 2010
Author: thomas.diesler at jboss.com
Date: 2010-01-12 12:29:06 -0500 (Tue, 12 Jan 2010)
New Revision: 99304
Added:
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/FragmentTestCase.java
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/fragA/
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/fragB/
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/fragC/
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/hostA/HostAActivator.java
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/hostB/
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/hostC/
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/subA/
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-fragA.bnd
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-fragB.bnd
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-fragC.bnd
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostA.bnd
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostB.bnd
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostC.bnd
Removed:
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/FragmentTestCase.java
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/frgmA/
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/hostA/FragmentHostActivator.java
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-frgmA.bnd
projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostA.bnd
Modified:
projects/jboss-osgi/projects/runtime/framework/trunk/scripts/antrun-test-jars.xml
projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers/AbstractOSGiClassLoadingDeployer.java
projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers/OSGiBundleClassLoadingDeployer.java
projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers/OSGiFragmentClassLoadingDeployer.java
projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/META-INF/jboss-osgi-bootstrap.xml
Log:
[JBOSGI-245] Framework fragments
Add more test coverage
Modified: projects/jboss-osgi/projects/runtime/framework/trunk/scripts/antrun-test-jars.xml
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/scripts/antrun-test-jars.xml 2010-01-12 17:01:54 UTC (rev 99303)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/scripts/antrun-test-jars.xml 2010-01-12 17:29:06 UTC (rev 99304)
@@ -54,6 +54,14 @@
</fileset>
</war>
+ <!-- fragments/simple -->
+ <bnd classpath="${tests.classes.dir}" output="${tests.output.dir}/test-libs/fragments-simple-hostA.jar" files="${tests.resources.dir}/fragments/simple-hostA.bnd" />
+ <bnd classpath="${tests.classes.dir}" output="${tests.output.dir}/test-libs/fragments-simple-hostB.jar" files="${tests.resources.dir}/fragments/simple-hostB.bnd" />
+ <bnd classpath="${tests.classes.dir}" output="${tests.output.dir}/test-libs/fragments-simple-hostC.jar" files="${tests.resources.dir}/fragments/simple-hostC.bnd" />
+ <bnd classpath="${tests.classes.dir}" output="${tests.output.dir}/test-libs/fragments-simple-fragA.jar" files="${tests.resources.dir}/fragments/simple-fragA.bnd" />
+ <bnd classpath="${tests.classes.dir}" output="${tests.output.dir}/test-libs/fragments-simple-fragB.jar" files="${tests.resources.dir}/fragments/simple-fragB.bnd" />
+ <bnd classpath="${tests.classes.dir}" output="${tests.output.dir}/test-libs/fragments-simple-fragC.jar" files="${tests.resources.dir}/fragments/simple-fragC.bnd" />
+
<!-- simple -->
<bnd classpath="${tests.classes.dir}" output="${tests.output.dir}/test-libs/simple-bundle.jar" files="${tests.resources.dir}/integration/simple/simple.bnd" />
<bnd classpath="${tests.classes.dir}" output="${tests.output.dir}/test-libs/simple-logservice-bundle.jar" files="${tests.resources.dir}/integration/simple/simple-logservice.bnd" />
Modified: projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers/AbstractOSGiClassLoadingDeployer.java
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers/AbstractOSGiClassLoadingDeployer.java 2010-01-12 17:01:54 UTC (rev 99303)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers/AbstractOSGiClassLoadingDeployer.java 2010-01-12 17:29:06 UTC (rev 99304)
@@ -23,16 +23,28 @@
// $Id$
+import java.util.List;
+
import org.jboss.classloader.spi.ClassLoaderDomain;
+import org.jboss.classloading.spi.metadata.CapabilitiesMetaData;
import org.jboss.classloading.spi.metadata.ClassLoadingMetaData;
+import org.jboss.classloading.spi.metadata.RequirementsMetaData;
import org.jboss.deployers.spi.DeploymentException;
import org.jboss.deployers.spi.deployer.DeploymentStages;
import org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer;
import org.jboss.deployers.structure.spi.ClassLoaderFactory;
import org.jboss.deployers.structure.spi.DeploymentUnit;
import org.jboss.osgi.framework.bundle.AbstractBundleState;
+import org.jboss.osgi.framework.bundle.OSGiBundleManager;
+import org.jboss.osgi.framework.classloading.OSGiBundleCapability;
+import org.jboss.osgi.framework.classloading.OSGiBundleRequirement;
import org.jboss.osgi.framework.classloading.OSGiClassLoadingMetaData;
+import org.jboss.osgi.framework.classloading.OSGiPackageCapability;
+import org.jboss.osgi.framework.classloading.OSGiPackageRequirement;
import org.jboss.osgi.framework.metadata.OSGiMetaData;
+import org.jboss.osgi.framework.metadata.PackageAttribute;
+import org.jboss.osgi.framework.metadata.ParameterizedAttribute;
+import org.jboss.osgi.framework.plugins.SystemPackagesPlugin;
/**
* An abstract OSGi classloading deployer, that maps osgi metadata into classloading metadata.
@@ -74,11 +86,57 @@
if (bundleState == null)
throw new IllegalStateException("No bundle state");
+ OSGiBundleManager bundleManager = bundleState.getBundleManager();
+
OSGiClassLoadingMetaData classLoadingMetaData = new OSGiClassLoadingMetaData();
classLoadingMetaData.setName(bundleState.getSymbolicName());
classLoadingMetaData.setVersion(bundleState.getVersion());
classLoadingMetaData.setDomain(domain != null ? domain.getName() : null);
+ CapabilitiesMetaData capabilities = classLoadingMetaData.getCapabilities();
+ RequirementsMetaData requirements = classLoadingMetaData.getRequirements();
+
+ OSGiBundleCapability bundleCapability = OSGiBundleCapability.create(bundleState);
+ capabilities.addCapability(bundleCapability);
+
+ List<ParameterizedAttribute> requireBundles = osgiMetaData.getRequireBundles();
+ if (requireBundles != null && requireBundles.isEmpty() == false)
+ {
+ for (ParameterizedAttribute requireBundle : requireBundles)
+ {
+ OSGiBundleRequirement requirement = OSGiBundleRequirement.create(requireBundle);
+ requirements.addRequirement(requirement);
+ }
+ }
+
+ List<PackageAttribute> exported = osgiMetaData.getExportPackages();
+ if (exported != null && exported.isEmpty() == false)
+ {
+ for (PackageAttribute packageAttribute : exported)
+ {
+ OSGiPackageCapability packageCapability = OSGiPackageCapability.create(bundleState, packageAttribute);
+ capabilities.addCapability(packageCapability);
+ }
+ }
+
+ List<PackageAttribute> imported = osgiMetaData.getImportPackages();
+ if (imported != null && imported.isEmpty() == false)
+ {
+ SystemPackagesPlugin syspackPlugin = bundleManager.getPlugin(SystemPackagesPlugin.class);
+ for (PackageAttribute packageAttribute : imported)
+ {
+ String packageName = packageAttribute.getAttribute();
+
+ // [TODO] Should system packages be added as capabilities?
+ boolean isSystemPackage = syspackPlugin.isSystemPackage(packageName);
+ if (isSystemPackage == false)
+ {
+ OSGiPackageRequirement requirement = OSGiPackageRequirement.create(bundleState, packageAttribute);
+ requirements.addRequirement(requirement);
+ }
+ }
+ }
+
unit.addAttachment(ClassLoadingMetaData.class, classLoadingMetaData);
// AnnotationMetaDataDeployer.ANNOTATION_META_DATA_COMPLETE
Modified: projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers/OSGiBundleClassLoadingDeployer.java
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers/OSGiBundleClassLoadingDeployer.java 2010-01-12 17:01:54 UTC (rev 99303)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers/OSGiBundleClassLoadingDeployer.java 2010-01-12 17:29:06 UTC (rev 99304)
@@ -23,23 +23,10 @@
// $Id: $
-import java.util.List;
-
-import org.jboss.classloading.spi.metadata.CapabilitiesMetaData;
-import org.jboss.classloading.spi.metadata.ClassLoadingMetaData;
-import org.jboss.classloading.spi.metadata.RequirementsMetaData;
import org.jboss.deployers.spi.DeploymentException;
import org.jboss.deployers.structure.spi.DeploymentUnit;
import org.jboss.osgi.framework.bundle.AbstractBundleState;
-import org.jboss.osgi.framework.bundle.OSGiBundleManager;
-import org.jboss.osgi.framework.classloading.OSGiBundleCapability;
-import org.jboss.osgi.framework.classloading.OSGiBundleRequirement;
-import org.jboss.osgi.framework.classloading.OSGiPackageCapability;
-import org.jboss.osgi.framework.classloading.OSGiPackageRequirement;
import org.jboss.osgi.framework.metadata.OSGiMetaData;
-import org.jboss.osgi.framework.metadata.PackageAttribute;
-import org.jboss.osgi.framework.metadata.ParameterizedAttribute;
-import org.jboss.osgi.framework.plugins.SystemPackagesPlugin;
/**
* An OSGi classloading deployer, that maps osgi metadata into classloading metadata
@@ -61,51 +48,6 @@
if (bundleState.isFragment())
return;
- OSGiBundleManager bundleManager = bundleState.getBundleManager();
-
- ClassLoadingMetaData classLoadingMetaData = unit.getAttachment(ClassLoadingMetaData.class);
- CapabilitiesMetaData capabilities = classLoadingMetaData.getCapabilities();
- RequirementsMetaData requirements = classLoadingMetaData.getRequirements();
-
- OSGiBundleCapability capability = OSGiBundleCapability.create(bundleState);
- capabilities.addCapability(capability);
-
- List<ParameterizedAttribute> requireBundles = osgiMetaData.getRequireBundles();
- if (requireBundles != null && requireBundles.isEmpty() == false)
- {
- for (ParameterizedAttribute requireBundle : requireBundles)
- {
- OSGiBundleRequirement requirement = OSGiBundleRequirement.create(requireBundle);
- requirements.addRequirement(requirement);
- }
- }
-
- List<PackageAttribute> exported = osgiMetaData.getExportPackages();
- if (exported != null && exported.isEmpty() == false)
- {
- for (PackageAttribute packageAttribute : exported)
- {
- OSGiPackageCapability packageCapability = OSGiPackageCapability.create(bundleState, packageAttribute);
- capabilities.addCapability(packageCapability);
- }
- }
-
- List<PackageAttribute> imported = osgiMetaData.getImportPackages();
- if (imported != null && imported.isEmpty() == false)
- {
- SystemPackagesPlugin syspackPlugin = bundleManager.getPlugin(SystemPackagesPlugin.class);
- for (PackageAttribute packageAttribute : imported)
- {
- String packageName = packageAttribute.getAttribute();
-
- // [TODO] Should system packages be added as capabilities?
- boolean isSystemPackage = syspackPlugin.isSystemPackage(packageName);
- if (isSystemPackage == false)
- {
- OSGiPackageRequirement requirement = OSGiPackageRequirement.create(bundleState, packageAttribute);
- requirements.addRequirement(requirement);
- }
- }
- }
+ // nothing special to do
}
}
Modified: projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers/OSGiFragmentClassLoadingDeployer.java
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers/OSGiFragmentClassLoadingDeployer.java 2010-01-12 17:01:54 UTC (rev 99303)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/main/java/org/jboss/osgi/framework/deployers/OSGiFragmentClassLoadingDeployer.java 2010-01-12 17:29:06 UTC (rev 99304)
@@ -55,8 +55,6 @@
return;
OSGiClassLoadingMetaData classLoadingMetaData = (OSGiClassLoadingMetaData)unit.getAttachment(ClassLoadingMetaData.class);
- if (classLoadingMetaData == null)
- throw new IllegalStateException("Null ClassLoadingMetaData");
// Initialize the Fragment-Host
ParameterizedAttribute hostAttr = osgiMetaData.getFragmentHost();
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments (from rev 99165, projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/fragments)
Deleted: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/FragmentTestCase.java
===================================================================
--- projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/fragments/FragmentTestCase.java 2010-01-08 15:37:37 UTC (rev 99165)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/FragmentTestCase.java 2010-01-12 17:29:06 UTC (rev 99304)
@@ -1,147 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.test.osgi.fragments;
-
-//$Id$
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.fail;
-
-import java.net.URL;
-
-import org.jboss.osgi.testing.OSGiBundle;
-import org.jboss.osgi.testing.OSGiRuntime;
-import org.jboss.osgi.testing.OSGiTest;
-import org.jboss.test.osgi.fragments.frgmA.FragmentService;
-import org.junit.Test;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleException;
-
-/**
- * Test Fragment functionality
- *
- * @author thomas.diesler at jboss.com
- * @since 07-Jan-2010
- */
-public class FragmentTestCase extends OSGiTest
-{
- @Test
- public void testHostOnly() throws Exception
- {
- OSGiRuntime runtime = getDefaultRuntime();
- try
- {
- OSGiBundle host = runtime.installBundle("fragments-simple-hostA.jar");
- assertBundleState(Bundle.INSTALLED, host.getState());
-
- host.start();
- assertBundleState(Bundle.ACTIVE, host.getState());
-
- URL entryURL = host.getEntry("resources/resource.txt");
- assertNull("Entry URL null", entryURL);
-
- URL resourceURL = host.getResource("resources/resource.txt");
- assertNull("Resource URL null", resourceURL);
-
- host.uninstall();
- assertBundleState(Bundle.UNINSTALLED, host.getState());
- }
- finally
- {
- runtime.shutdown();
- }
- }
-
- @Test
- public void testFragmentOnly() throws Exception
- {
- OSGiRuntime runtime = getDefaultRuntime();
- try
- {
- OSGiBundle fragment = runtime.installBundle("fragments-simple-frgmA.jar");
- assertBundleState(Bundle.INSTALLED, fragment.getState());
-
- URL entryURL = fragment.getEntry("resources/resource.txt");
- assertNotNull("Entry URL not null", entryURL);
-
- URL resourceURL = fragment.getResource("resources/resource.txt");
- assertNull("Resource URL null", resourceURL);
-
- try
- {
- fragment.start();
- fail("Fragment bundles can not be started");
- }
- catch (BundleException e)
- {
- assertBundleState(Bundle.INSTALLED, fragment.getState());
- }
-
- fragment.uninstall();
- assertBundleState(Bundle.UNINSTALLED, fragment.getState());
- }
- finally
- {
- runtime.shutdown();
- }
- }
-
- @Test
- public void testAttachedFragment() throws Exception
- {
- OSGiRuntime runtime = getDefaultRuntime();
- try
- {
- OSGiBundle host = runtime.installBundle("fragments-simple-hostA.jar");
- assertBundleState(Bundle.INSTALLED, host.getState());
-
- OSGiBundle fragment = runtime.installBundle("fragments-simple-frgmA.jar");
- assertBundleState(Bundle.INSTALLED, fragment.getState());
-
- host.start();
- assertBundleState(Bundle.ACTIVE, host.getState());
- assertBundleState(Bundle.RESOLVED, fragment.getState());
-
- URL entryURL = host.getEntry("resources/resource.txt");
- assertNull("Entry URL null", entryURL);
-
- URL resourceURL = host.getResource("resources/resource.txt");
- assertNotNull("Resource URL not null", resourceURL);
-
- OSGiBundle classProvider = host.loadClass(FragmentService.class.getName());
- assertEquals("Class provided by fragment", host, classProvider);
-
- host.uninstall();
- assertBundleState(Bundle.UNINSTALLED, host.getState());
- assertBundleState(Bundle.RESOLVED, fragment.getState());
-
- fragment.uninstall();
- assertBundleState(Bundle.UNINSTALLED, fragment.getState());
- }
- finally
- {
- runtime.shutdown();
- }
- }
-}
\ No newline at end of file
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/FragmentTestCase.java (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/fragments/FragmentTestCase.java)
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/FragmentTestCase.java (rev 0)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/FragmentTestCase.java 2010-01-12 17:29:06 UTC (rev 99304)
@@ -0,0 +1,351 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.osgi.fragments;
+
+//$Id$
+
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.fail;
+
+import java.net.URL;
+
+import org.jboss.osgi.spi.framework.OSGiBootstrap;
+import org.jboss.osgi.spi.framework.OSGiBootstrapProvider;
+import org.jboss.osgi.testing.OSGiTest;
+import org.jboss.test.osgi.fragments.fragA.FragBeanA;
+import org.jboss.test.osgi.fragments.subA.SubBeanA;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.BundleException;
+import org.osgi.framework.ServiceReference;
+import org.osgi.framework.launch.Framework;
+import org.osgi.service.packageadmin.PackageAdmin;
+
+/**
+ * Test Fragment functionality
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 07-Jan-2010
+ */
+public class FragmentTestCase extends OSGiTest
+{
+ private Framework framework;
+ private BundleContext context;
+
+ @Before
+ public void setUp() throws Exception
+ {
+ OSGiBootstrapProvider bootProvider = OSGiBootstrap.getBootstrapProvider();
+ framework = bootProvider.getFramework();
+ framework.start();
+
+ context = framework.getBundleContext();
+ }
+
+ @After
+ public void tearDown() throws Exception
+ {
+ if (framework != null)
+ {
+ framework.stop();
+ framework.waitForStop(5000);
+ }
+ }
+
+ @Test
+ public void testHostOnly() throws Exception
+ {
+ // Bundle-SymbolicName: simple-hostA
+ // Private-Package: org.jboss.test.osgi.fragments.hostA, org.jboss.test.osgi.fragments.subA
+ Bundle hostA = context.installBundle(getTestArchivePath("fragments-simple-hostA.jar"));
+ assertBundleState(Bundle.INSTALLED, hostA.getState());
+
+ hostA.start();
+ assertBundleState(Bundle.ACTIVE, hostA.getState());
+
+ URL entryURL = hostA.getEntry("resources/resource.txt");
+ assertNull("Entry URL null", entryURL);
+
+ URL resourceURL = hostA.getResource("resources/resource.txt");
+ assertNull("Resource URL null", resourceURL);
+
+ // Load a private class
+ assertBundleLoadClass(hostA, SubBeanA.class.getName(), true);
+
+ hostA.uninstall();
+ assertBundleState(Bundle.UNINSTALLED, hostA.getState());
+ }
+
+ @Test
+ public void testFragmentOnly() throws Exception
+ {
+ // Bundle-SymbolicName: simple-fragA
+ // Export-Package: org.jboss.test.osgi.fragments.fragA
+ // Include-Resource: resources/resource.txt=resource.txt
+ // Fragment-Host: simple-hostA
+ Bundle fragA = context.installBundle(getTestArchivePath("fragments-simple-fragA.jar"));
+ assertBundleState(Bundle.INSTALLED, fragA.getState());
+
+ URL entryURL = fragA.getEntry("resources/resource.txt");
+ assertNotNull("Entry URL not null", entryURL);
+
+ URL resourceURL = fragA.getResource("resources/resource.txt");
+ assertNull("Resource URL null", resourceURL);
+
+ try
+ {
+ fragA.start();
+ fail("Fragment bundles can not be started");
+ }
+ catch (BundleException e)
+ {
+ assertBundleState(Bundle.INSTALLED, fragA.getState());
+ }
+
+ fragA.uninstall();
+ assertBundleState(Bundle.UNINSTALLED, fragA.getState());
+ }
+
+ @Test
+ public void testAttachedFragment() throws Exception
+ {
+ // Bundle-SymbolicName: simple-hostA
+ // Private-Package: org.jboss.test.osgi.fragments.hostA, org.jboss.test.osgi.fragments.subA
+ Bundle hostA = context.installBundle(getTestArchivePath("fragments-simple-hostA.jar"));
+ assertBundleState(Bundle.INSTALLED, hostA.getState());
+
+ // Bundle-SymbolicName: simple-fragA
+ // Export-Package: org.jboss.test.osgi.fragments.fragA
+ // Include-Resource: resources/resource.txt=resource.txt
+ // Fragment-Host: simple-hostA
+ Bundle fragA = context.installBundle(getTestArchivePath("fragments-simple-fragA.jar"));
+ assertBundleState(Bundle.INSTALLED, fragA.getState());
+
+ hostA.start();
+ assertBundleState(Bundle.ACTIVE, hostA.getState());
+ assertBundleState(Bundle.RESOLVED, fragA.getState());
+
+ URL entryURL = hostA.getEntry("resources/resource.txt");
+ assertNull("Entry URL null", entryURL);
+
+ URL resourceURL = hostA.getResource("resources/resource.txt");
+ assertNotNull("Resource URL not null", resourceURL);
+
+ // Load class provided by the fragment
+ assertBundleLoadClass(hostA, FragBeanA.class.getName(), true);
+
+ // Load a private class
+ assertBundleLoadClass(hostA, SubBeanA.class.getName(), true);
+
+ hostA.uninstall();
+ assertBundleState(Bundle.UNINSTALLED, hostA.getState());
+ assertBundleState(Bundle.RESOLVED, fragA.getState());
+
+ fragA.uninstall();
+ assertBundleState(Bundle.UNINSTALLED, fragA.getState());
+ }
+
+ @Test
+ public void testHiddenPrivatePackage() throws Exception
+ {
+ if (framework != null)
+ {
+ System.out.println("FIXME [JBOSGI-245] Framework fragments");
+ return;
+ }
+
+ // Bundle-SymbolicName: simple-hostA
+ // Private-Package: org.jboss.test.osgi.fragments.hostA, org.jboss.test.osgi.fragments.subA
+ Bundle hostA = context.installBundle(getTestArchivePath("fragments-simple-hostA.jar"));
+ assertBundleState(Bundle.INSTALLED, hostA.getState());
+
+ // Bundle-SymbolicName: simple-hostB
+ // Export-Package: org.jboss.test.osgi.fragments.subA
+ // Private-Package: org.jboss.test.osgi.fragments.hostB
+ Bundle hostB = context.installBundle(getTestArchivePath("fragments-simple-hostB.jar"));
+ assertBundleState(Bundle.INSTALLED, hostB.getState());
+
+ // Bundle-SymbolicName: simple-fragB
+ // Import-Package: org.jboss.test.osgi.fragments.subA
+ // Fragment-Host: simple-hostA
+ Bundle fragB = context.installBundle(getTestArchivePath("fragments-simple-fragB.jar"));
+ assertBundleState(Bundle.INSTALLED, fragB.getState());
+
+ hostA.start();
+ assertBundleState(Bundle.ACTIVE, hostA.getState());
+ assertBundleState(Bundle.RESOLVED, fragB.getState());
+
+ // The fragment contains an overwrites Private-Package with Import-Package
+ // The SubBeanA is expected to come from HostB, which exports that package
+ assertBundleLoadClass(hostB, SubBeanA.class.getName(), true);
+
+ hostA.uninstall();
+ assertBundleState(Bundle.UNINSTALLED, hostA.getState());
+ assertBundleState(Bundle.RESOLVED, fragB.getState());
+
+ hostB.uninstall();
+ assertBundleState(Bundle.UNINSTALLED, hostB.getState());
+
+ fragB.uninstall();
+ assertBundleState(Bundle.UNINSTALLED, fragB.getState());
+ }
+
+ @Test
+ public void testFragmentExportsPackage() throws Exception
+ {
+ if (framework != null)
+ {
+ System.out.println("FIXME [JBOSGI-245] Framework fragments");
+ return;
+ }
+
+ // Bundle-SymbolicName: simple-hostA
+ // Private-Package: org.jboss.test.osgi.fragments.hostA, org.jboss.test.osgi.fragments.subA
+ Bundle hostA = context.installBundle(getTestArchivePath("fragments-simple-hostA.jar"));
+ assertBundleState(Bundle.INSTALLED, hostA.getState());
+
+ // Bundle-SymbolicName: simple-hostC
+ // Import-Package: org.jboss.test.osgi.fragments.fragA
+ // Private-Package: org.jboss.test.osgi.fragments.hostC
+ Bundle hostC = context.installBundle(getTestArchivePath("fragments-simple-hostC.jar"));
+ assertBundleState(Bundle.INSTALLED, hostA.getState());
+
+ hostA.start();
+ assertBundleState(Bundle.ACTIVE, hostA.getState());
+
+ try
+ {
+ // HostA does not export the package needed by HostC
+ hostC.start();
+ fail("Unresolved constraint expected");
+ }
+ catch (BundleException ex)
+ {
+ assertBundleState(Bundle.INSTALLED, hostC.getState());
+ }
+
+ // Bundle-SymbolicName: simple-fragA
+ // Export-Package: org.jboss.test.osgi.fragments.fragA
+ // Include-Resource: resources/resource.txt=resource.txt
+ // Fragment-Host: simple-hostA
+ Bundle fragA = context.installBundle(getTestArchivePath("fragments-simple-fragA.jar"));
+ assertBundleState(Bundle.INSTALLED, fragA.getState());
+
+ try
+ {
+ // FragA does not attach to the aleady resolved HostA
+ // HostA does not export the package needed by HostC
+ hostC.start();
+ fail("Unresolved constraint expected");
+ }
+ catch (BundleException ex)
+ {
+ assertBundleState(Bundle.INSTALLED, hostC.getState());
+ }
+
+ // Refreshing HostA causes the FragA to get attached
+ ServiceReference sref = context.getServiceReference(PackageAdmin.class.getName());
+ PackageAdmin packageAdmin = (PackageAdmin)context.getService(sref);
+ packageAdmin.refreshPackages(new Bundle[] { hostA });
+
+ // Wait for the fragment to get attached
+ int timeout = 2000;
+ while (timeout > 0 && fragA.getState() != Bundle.RESOLVED)
+ {
+ Thread.sleep(200);
+ timeout -= 200;
+ }
+
+ // HostC should now resolve and start
+ hostC.start();
+ assertBundleState(Bundle.ACTIVE, hostC.getState());
+
+ hostA.uninstall();
+ assertBundleState(Bundle.UNINSTALLED, hostA.getState());
+
+ hostC.uninstall();
+ assertBundleState(Bundle.UNINSTALLED, hostC.getState());
+
+ fragA.uninstall();
+ assertBundleState(Bundle.UNINSTALLED, fragA.getState());
+ }
+
+ @Test
+ public void testFragmentRequireBundle() throws Exception
+ {
+ if (framework != null)
+ {
+ System.out.println("FIXME [JBOSGI-245] Framework fragments");
+ return;
+ }
+
+ // Bundle-SymbolicName: simple-hostA
+ // Private-Package: org.jboss.test.osgi.fragments.hostA, org.jboss.test.osgi.fragments.subA
+ Bundle hostA = context.installBundle(getTestArchivePath("fragments-simple-hostA.jar"));
+ assertBundleState(Bundle.INSTALLED, hostA.getState());
+
+ // Bundle-SymbolicName: simple-fragC
+ // Export-Package: org.jboss.test.osgi.fragments.fragC
+ // Require-Bundle: simple-hostB
+ // Fragment-Host: simple-hostA
+ Bundle fragC = context.installBundle(getTestArchivePath("fragments-simple-fragC.jar"));
+ assertBundleState(Bundle.INSTALLED, fragC.getState());
+
+ try
+ {
+ // The attached FragA requires bundle HostB, which is not yet installed
+ hostA.start();
+
+ // Clarify error behaviour when fragments fail to attach
+ // https://www.osgi.org/members/bugzilla/show_bug.cgi?id=1524
+ //
+ // Felix: Merges FragC Require-Bundle into HostA and fails to resolve
+ // Equinox: Resolves HostA but does not attach FragA
+ if (hostA.getState() == Bundle.ACTIVE)
+ assertBundleState(Bundle.INSTALLED, fragC.getState());
+ }
+ catch (BundleException ex)
+ {
+ assertBundleState(Bundle.INSTALLED, hostA.getState());
+ }
+
+ // Bundle-SymbolicName: simple-hostB
+ // Export-Package: org.jboss.test.osgi.fragments.subA
+ // Private-Package: org.jboss.test.osgi.fragments.hostB
+ Bundle hostB = context.installBundle(getTestArchivePath("fragments-simple-hostB.jar"));
+ assertBundleState(Bundle.INSTALLED, hostB.getState());
+
+ // HostA should resolve and start after HostB got installed
+ hostA.start();
+ assertBundleState(Bundle.ACTIVE, hostA.getState());
+
+ hostA.uninstall();
+ assertBundleState(Bundle.UNINSTALLED, hostA.getState());
+
+ fragC.uninstall();
+ assertBundleState(Bundle.UNINSTALLED, fragC.getState());
+ }
+}
\ No newline at end of file
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/fragA (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/fragments/fragA)
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/fragB (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/fragments/fragB)
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/fragC (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/fragments/fragC)
Deleted: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/hostA/FragmentHostActivator.java
===================================================================
--- projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/fragments/hostA/FragmentHostActivator.java 2010-01-08 15:37:37 UTC (rev 99165)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/hostA/FragmentHostActivator.java 2010-01-12 17:29:06 UTC (rev 99304)
@@ -1,38 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.test.osgi.fragments.hostA;
-
-//$Id$
-
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-public class FragmentHostActivator implements BundleActivator
-{
- public void start(BundleContext context)
- {
- }
-
- public void stop(BundleContext context)
- {
- }
-}
\ No newline at end of file
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/hostA/HostAActivator.java (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/fragments/hostA/HostAActivator.java)
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/hostA/HostAActivator.java (rev 0)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/hostA/HostAActivator.java 2010-01-12 17:29:06 UTC (rev 99304)
@@ -0,0 +1,41 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.osgi.fragments.hostA;
+
+//$Id$
+
+import org.jboss.test.osgi.fragments.subA.SubBeanA;
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class HostAActivator implements BundleActivator
+{
+ public void start(BundleContext context)
+ {
+ SubBeanA subBean = new SubBeanA();
+ subBean.getProvider(context);
+ }
+
+ public void stop(BundleContext context)
+ {
+ }
+}
\ No newline at end of file
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/hostB (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/fragments/hostB)
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/hostC (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/fragments/hostC)
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/java/org/jboss/test/osgi/fragments/subA (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/java/org/jboss/test/osgi/fragments/subA)
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments (from rev 99165, projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/fragments)
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-fragA.bnd (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/fragments/simple-fragA.bnd)
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-fragA.bnd (rev 0)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-fragA.bnd 2010-01-12 17:29:06 UTC (rev 99304)
@@ -0,0 +1,9 @@
+# bnd build -classpath target/test-classes -output target/test-libs/fragments-simple-fragA.jar src/test/resources/fragments/simple-fragA.bnd
+
+Bundle-SymbolicName: simple-fragA
+Export-Package: org.jboss.test.osgi.fragments.fragA
+Include-Resource: resources/resource.txt=resource.txt
+Fragment-Host: simple-hostA
+
+-removeheaders: Include-Resource
+
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-fragB.bnd (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/fragments/simple-fragB.bnd)
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-fragB.bnd (rev 0)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-fragB.bnd 2010-01-12 17:29:06 UTC (rev 99304)
@@ -0,0 +1,6 @@
+# bnd build -classpath target/test-classes -output target/test-libs/fragments-simple-fragB.jar src/test/resources/fragments/simple-fragB.bnd
+
+Bundle-SymbolicName: simple-fragB
+Export-Package: org.jboss.test.osgi.fragments.fragB
+Import-Package: org.jboss.test.osgi.fragments.subA
+Fragment-Host: simple-hostA
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-fragC.bnd (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/fragments/simple-fragC.bnd)
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-fragC.bnd (rev 0)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-fragC.bnd 2010-01-12 17:29:06 UTC (rev 99304)
@@ -0,0 +1,6 @@
+# bnd build -classpath target/test-classes -output target/test-libs/fragments-simple-fragC.jar src/test/resources/fragments/simple-fragC.bnd
+
+Bundle-SymbolicName: simple-fragC
+Export-Package: org.jboss.test.osgi.fragments.fragC
+Require-Bundle: simple-hostB
+Fragment-Host: simple-hostA
Deleted: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-frgmA.bnd
===================================================================
--- projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/fragments/simple-frgmA.bnd 2010-01-08 15:37:37 UTC (rev 99165)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-frgmA.bnd 2010-01-12 17:29:06 UTC (rev 99304)
@@ -1,9 +0,0 @@
-# bnd build -classpath target/test-classes -output target/test-libs/fragments-simple-frgmA.jar src/test/resources/fragments/simple-frgmA.bnd
-
-Bundle-SymbolicName: simple-frgmA
-Fragment-Host: simple-hostA
-Export-Package: org.jboss.test.osgi.fragments.frgmA
-Include-Resource: resources/resource.txt=resource.txt
-
--removeheaders: Include-Resource
-
Deleted: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostA.bnd
===================================================================
--- projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/fragments/simple-hostA.bnd 2010-01-08 15:37:37 UTC (rev 99165)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostA.bnd 2010-01-12 17:29:06 UTC (rev 99304)
@@ -1,6 +0,0 @@
-# bnd build -classpath target/test-classes -output target/test-libs/fragments-simple-hostA.jar src/test/resources/fragments/simple-hostA.bnd
-
-Bundle-SymbolicName: simple-hostA
-Bundle-Activator: org.jboss.test.osgi.fragments.hostA.FragmentHostActivator
-Private-Package: org.jboss.test.osgi.fragments.hostA
-
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostA.bnd (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/fragments/simple-hostA.bnd)
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostA.bnd (rev 0)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostA.bnd 2010-01-12 17:29:06 UTC (rev 99304)
@@ -0,0 +1,6 @@
+# bnd build -classpath target/test-classes -output target/test-libs/fragments-simple-hostA.jar src/test/resources/fragments/simple-hostA.bnd
+
+Bundle-SymbolicName: simple-hostA
+Bundle-Activator: org.jboss.test.osgi.fragments.hostA.HostAActivator
+Private-Package: org.jboss.test.osgi.fragments.hostA, org.jboss.test.osgi.fragments.subA
+
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostB.bnd (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/fragments/simple-hostB.bnd)
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostB.bnd (rev 0)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostB.bnd 2010-01-12 17:29:06 UTC (rev 99304)
@@ -0,0 +1,7 @@
+# bnd build -classpath target/test-classes -output target/test-libs/fragments-simple-hostB.jar src/test/resources/fragments/simple-hostB.bnd
+
+Bundle-SymbolicName: simple-hostB
+Bundle-Activator: org.jboss.test.osgi.fragments.hostB.HostBActivator
+Export-Package: org.jboss.test.osgi.fragments.subA
+Private-Package: org.jboss.test.osgi.fragments.hostB
+
Copied: projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostC.bnd (from rev 99284, projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/fragments/simple-hostC.bnd)
===================================================================
--- projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostC.bnd (rev 0)
+++ projects/jboss-osgi/projects/runtime/framework/trunk/src/test/resources/fragments/simple-hostC.bnd 2010-01-12 17:29:06 UTC (rev 99304)
@@ -0,0 +1,7 @@
+# bnd build -classpath target/test-classes -output target/test-libs/fragments-simple-hostC.jar src/test/resources/fragments/simple-hostC.bnd
+
+Bundle-SymbolicName: simple-hostC
+Bundle-Activator: org.jboss.test.osgi.fragments.hostC.HostCActivator
+Private-Package: org.jboss.test.osgi.fragments.hostC
+Import-Package: org.osgi.framework, org.jboss.test.osgi.fragments.fragA
+
Modified: projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/META-INF/jboss-osgi-bootstrap.xml
===================================================================
--- projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/META-INF/jboss-osgi-bootstrap.xml 2010-01-12 17:01:54 UTC (rev 99303)
+++ projects/jboss-osgi/trunk/testsuite/functional/src/test/resources/META-INF/jboss-osgi-bootstrap.xml 2010-01-12 17:29:06 UTC (rev 99304)
@@ -106,9 +106,6 @@
<bean name="LifecycleInterceptorService" class="org.jboss.osgi.framework.service.internal.LifecycleInterceptorServiceImpl">
<constructor><parameter><inject bean="OSGiBundleManager" /></parameter></constructor>
</bean>
- <bean name="MessageBoardService" class="org.jboss.osgi.framework.service.internal.MessageBoardServiceImpl">
- <constructor><parameter><inject bean="OSGiBundleManager" /></parameter></constructor>
- </bean>
<!--
********************************
More information about the jboss-osgi-commits
mailing list