aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAaron Whiteside2012-04-04 22:41:28 (EDT)
committerGlyn Normington2012-05-21 09:13:54 (EDT)
commit401a2543b75cd1c0c3223484a0b3926bff0e3167 (patch)
treed9c92c80e472e89741496fc511ffad5cbfe48692
parent0ea40a99c2c60dd35d7b51f6a12cc32afcea48a2 (diff)
downloadorg.eclipse.gemini.blueprint-401a2543b75cd1c0c3223484a0b3926bff0e3167.zip
org.eclipse.gemini.blueprint-401a2543b75cd1c0c3223484a0b3926bff0e3167.tar.gz
org.eclipse.gemini.blueprint-401a2543b75cd1c0c3223484a0b3926bff0e3167.tar.bz2
- Fixed up cglib typo in testing docbook, should be 2.2.0 instead of 2.1.3.
- Added relativePath to extender/pom.xml and used correct compendium groupId, artifactId and version in extender/pom.xml - Added relativePath to integration-test/bundles/blueprint/config.bundles/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/blueprint/error.bundles/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/blueprint/simple.bundles/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/blueprint/waiting.bundles/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/blueprint/pom.xml, removed unnecessary <properties/>, <dependencies/> and <plugins/> as they are declared in the parent. - Added relativePath to integration-test/bundles/cardinality.0to1.bundle/pom.xml, removed unnecessary groupId definition and replaced deprecated maven property ${project.parent.version} with ${project.version}. - Added relativePath to integration-test/bundles/config.bundle/async.nowait.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/config.bundle/async.wait.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/config.bundle/no.publish.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/config.bundle/sync.nowait.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/config.bundle/sync.tail.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/config.bundle/sync.wait.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/config.bundle/config.bundle/pom.xml, removed unnecessary groupId definition, removed unnecessary <properties/>, <dependencies/> and <plugins/> as they are declared in the parent. - Added relativePath to integration-test/bundles/config.file.with.dots.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/configuration.test.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/deadlock.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/dependency.factory.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/dependency.test.bundle/pom.xml, removed unnecessary groupId definition and replaced deprecated maven property ${project.parent.version} with ${project.version}. - Added relativePath to integration-test/bundles/embedded.ns.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/error.bundle/pom.xml, removed unnecessary groupId definition and replaced deprecated maven property ${project.parent.version} with ${project.version}. - Added relativePath to integration-test/bundles/export.import.dependency.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/extender.fragment.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/extender.listener.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/extender.version.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/io.fragment.1.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/io.fragment.2.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/jdk.proxy.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/jdk5/component.scan.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/jdk5/pom.xml, removed unnecessary groupId definition, fixed up parent groupId, removed unnecessary <properties/>, <dependencies/> and <plugins/> as they are declared in the parent. - Added relativePath to integration-test/bundles/lifecycle.test.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/namespace.own.consumer.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/proxy.creator.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/proxy.destruction.test.bundle/pom.xml, removed unnecessary groupId definition and replaced deprecated maven property ${project.parent.version} with ${project.version}. - Added relativePath to integration-test/bundles/proxy.listener/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/reference.test.bundle/pom.xml, removed unnecessary groupId definition and replaced deprecated maven property ${project.parent.version} with ${project.version}. - Added relativePath to integration-test/bundles/scoped.a.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/scoped.b.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/scoped.common.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/service.listener.bundle/pom.xml, removed unnecessary groupId definition and replaced deprecated maven property ${project.parent.version} with ${project.version}. - Added relativePath to integration-test/bundles/simple.service.2.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/simple.service.3.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/simple.service.bundle.2.identical/pom.xml, removed unnecessary groupId definition and replaced deprecated maven property ${project.parent.version} with ${project.version}. - Added relativePath to integration-test/bundles/simple.service.bundle.identical/pom.xml, removed unnecessary groupId definition and replaced deprecated maven property ${project.parent.version} with ${project.version}. - Added relativePath to integration-test/bundles/simple.service.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/tccl.bundle/pom.xml, removed unnecessary groupId definition and replaced deprecated maven property ${project.parent.version} with ${project.version}. - Added relativePath to integration-test/bundles/tccl.intf.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/trivial.bundle/pom.xml and removed unnecessary groupId definition. - Added relativePath to integration-test/bundles/trivial.test.bundle/pom.xml, removed unnecessary groupId definition and replaced deprecated maven property ${project.parent.version} with ${project.version}. - Added relativePath to integration-test/bundles/pom.xml, removed unnecessary groupId definition, removed commented out and no longer existing modules, removed the declaration of the maven-deploy-plugin (not needed since the packaging type is pom), moved the declaration of the maven-jar-plugin to the pluginManagement section and replaced the deprecated maven property ${pom.artifactId} with ${project.artifactId}. - Updated the constant in CallingResourceOnDifferentBundlesTest that referrers to the spring-core artifact name as we are now using the official spring dependency. - Added support for NonOSGiLoaderProxyTest to compile using java 7, missing method in javax.sql.DataSource. - Fixed type in integration-tests/tests/src/test/resources/log4j.properties, looked like a copy and paste mistake. - Added relativePath to integration-test/tests/pom.xml, removed unnecessary groupId definition, removed <properties/> (already present in the parent), corrected the artifactId for the osgi compendium dependency, removed all the no longer needed web dependencies, removed maven-deploy-plugin definition (already declared in the parent) and updated the test framework system property from spring to blueprint. - Added relativePath to integration-test/pom.xml, removed unnecessary groupId definition, moved the maven-deploy-plugin declaration to the pluginManagement section and renamed the groupId from *module to *parent. - Added relativePath to io/pom.xml, removed unnecessary groupId definition, update spring dependency to the official artifactId. - Updated lib/readme.txt with the correct version of dependencies currently in use in the project, removed no longer used dependencies. - Added relativePath to mock/pom.xml and removed unnecessary groupId definition. - Updated EquinoxPlatform to put all temporary files under the test-support modules target directory (as is standard maven practice). - Updated AbstractConfigurableOsgiTests to remove the spring specific deprecated osgi framework selector system property, now only uses the blueprint specific property. - Fixed spelling typo in AbstractOnTheFlyBundleCreatorTests. - Updated boot-bundles.properties with newer dependency versions, updated some dependencies to the official artifactId's (spring and slf4j) and replaced commons-logging with jcl-over-slf4j. - Added relativePath to test-support/pom.xml, removed unnecessary groupId definition, fixed typo in jarjar.dep property, updated junit dependency version, updated spring dependencies to the official artifactIds, updated knopflerfish dependency to the official groupId, moved the maven-surefire-plugin to the pluginManagement section. - Updated /pom.xml - Made maven 3.0.3 a prerequisite for running the build. - Added missing source encoding property. - Added missing env.* property's, without which the build won't run. - Use the official knopflerfish version (don't worry - the same exact binary as before) - The gemini.blueprint.version.range.nq property now uses the maven property ${project.version} instead of a custom one with exactly the same value. - Removed a bunch of commented out modules, that don't exist anyway. - Removed some no longer existent dependencies (gemini-blueprint-web, gemini-blueprint-annotation, spring-osgi-web-extender) which were causing the build the fail. - Replaced all spring dependency artifactId's with the official ones, as the official spring dependencies have long contained the correct osgi metadata. - Excluded all references to commons-logging, replaced by jcl-over-slf4j. - Removed a bunch of spring web dependencies, that are no longer used. - Updated the dependency on osgi compendium to the official artifactId and version. - Added the org.osgi.core dependency, so that unit tests (not including integration tests) will compile, run and pass. You no longer need to specify a osgi implementation profile. The API is standard and exists separate from the containers we test with, so why not use it. - Updated junit to version 4.9.0. - Updated log4j to the latest version and now uses the official groupId and artifactId, as the official binaries contain the correct osgi metadata. - Added missing version info for the maven-compiler-plugin. - Updated jarjar dependency to the official groupId, artifactId and version. - Cleaned up usages of maven property's in the bundlor plugin. - Tried to update to the latest version of the bundlor plugin - fixed up the config, and I can see it is producing the "correct" osgi metadata (the current plugin isn't) but it does not run, so left it commented out to come back to later. Not even sure how the current version of the plugin works as the metadata is products is incorrect (or so I think..) - Removed no longer existent samples profile/module. - Specify versions for the reporting plugins. - Added knopflerfish maven repo to the list of repositories, needed to use the official dependency.
-rw-r--r--core/pom.xml159
-rw-r--r--docs/pom.xml167
-rw-r--r--docs/src/docbkx/reference/testing.xml2
-rw-r--r--extender/pom.xml103
-rw-r--r--integration-tests/bundles/blueprint/config.bundle/pom.xml10
-rw-r--r--integration-tests/bundles/blueprint/error.bundle/pom.xml10
-rw-r--r--integration-tests/bundles/blueprint/pom.xml80
-rw-r--r--integration-tests/bundles/blueprint/simple.bundle/pom.xml10
-rw-r--r--integration-tests/bundles/blueprint/waiting.bundle/pom.xml10
-rw-r--r--integration-tests/bundles/cardinality.0to1.bundle/pom.xml15
-rw-r--r--integration-tests/bundles/config.bundle/async.nowait.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/config.bundle/async.wait.bundle/pom.xml13
-rw-r--r--integration-tests/bundles/config.bundle/no.publish.bundle/pom.xml13
-rw-r--r--integration-tests/bundles/config.bundle/pom.xml98
-rw-r--r--integration-tests/bundles/config.bundle/sync.nowait.bundle/pom.xml13
-rw-r--r--integration-tests/bundles/config.bundle/sync.tail.bundle/pom.xml13
-rw-r--r--integration-tests/bundles/config.bundle/sync.wait.bundle/pom.xml13
-rw-r--r--integration-tests/bundles/config.file.with.dots.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/configuration.test.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/deadlock.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/dependency.factory.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/dependency.test.bundle/pom.xml17
-rw-r--r--integration-tests/bundles/embedded.ns.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/error.bundle/pom.xml15
-rw-r--r--integration-tests/bundles/export.import.dependency.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/extender.fragment.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/extender.listener.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/extender.version.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/io.fragment.1.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/io.fragment.2.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/jdk.proxy.bundle/pom.xml18
-rw-r--r--integration-tests/bundles/jdk5/component.scan.bundle/pom.xml16
-rw-r--r--integration-tests/bundles/jdk5/pom.xml90
-rw-r--r--integration-tests/bundles/lifecycle.test.bundle/pom.xml19
-rw-r--r--integration-tests/bundles/namespace.own.consumer.bundle/pom.xml15
-rw-r--r--integration-tests/bundles/pom.xml178
-rw-r--r--integration-tests/bundles/proxy.creator.bundle/pom.xml16
-rw-r--r--integration-tests/bundles/proxy.destruction.test.bundle/pom.xml14
-rw-r--r--integration-tests/bundles/proxy.listener/pom.xml12
-rw-r--r--integration-tests/bundles/reference.test.bundle/pom.xml14
-rw-r--r--integration-tests/bundles/scoped.a.bundle/pom.xml16
-rw-r--r--integration-tests/bundles/scoped.b.bundle/pom.xml18
-rw-r--r--integration-tests/bundles/scoped.common.bundle/pom.xml16
-rw-r--r--integration-tests/bundles/service.listener.bundle/pom.xml15
-rw-r--r--integration-tests/bundles/simple.service.2.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/simple.service.3.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/simple.service.bundle.2.identical/pom.xml14
-rw-r--r--integration-tests/bundles/simple.service.bundle.identical/pom.xml14
-rw-r--r--integration-tests/bundles/simple.service.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/tccl.bundle/pom.xml14
-rw-r--r--integration-tests/bundles/tccl.intf.bundle/pom.xml12
-rw-r--r--integration-tests/bundles/trivial.bundle/pom.xml34
-rw-r--r--integration-tests/bundles/trivial.test.bundle/pom.xml67
-rw-r--r--integration-tests/pom.xml77
-rw-r--r--integration-tests/tests/pom.xml280
-rw-r--r--integration-tests/tests/src/test/java/org/eclipse/gemini/blueprint/iandt/compliance/io/CallingResourceOnDifferentBundlesTest.java268
-rw-r--r--integration-tests/tests/src/test/java/org/eclipse/gemini/blueprint/iandt/nonosgicl/NonOSGiLoaderProxyTest.java215
-rw-r--r--integration-tests/tests/src/test/resources/log4j.properties2
-rw-r--r--io/pom.xml75
-rw-r--r--lib/readme.txt205
-rw-r--r--mock/pom.xml44
-rw-r--r--pom.xml1983
-rw-r--r--test-support/pom.xml297
-rw-r--r--test-support/src/main/java/org/eclipse/gemini/blueprint/test/AbstractConfigurableOsgiTests.java368
-rw-r--r--test-support/src/main/java/org/eclipse/gemini/blueprint/test/AbstractOnTheFlyBundleCreatorTests.java1100
-rw-r--r--test-support/src/main/java/org/eclipse/gemini/blueprint/test/platform/EquinoxPlatform.java180
-rw-r--r--test-support/src/main/resources/org/eclipse/gemini/blueprint/test/internal/boot-bundles.properties153
67 files changed, 3323 insertions, 3477 deletions
diff --git a/core/pom.xml b/core/pom.xml
index bdf1a44..3b08633 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -1,79 +1,84 @@
-<?xml version="1.0"?>
-<project>
- <parent>
- <artifactId>gemini-blueprint</artifactId>
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <artifactId>gemini-blueprint</artifactId>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
<groupId>org.eclipse.gemini.blueprint</groupId>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-core</artifactId>
- <packaging>jar</packaging>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
- <name>Gemini Blueprint Core</name>
- <description>
- Eclipse Gemini Blueprint core classes. Offers OSGi-based application context and importer/exporter functionality.
- </description>
-
-
- <properties>
- <javadoc.loc>${basedir}/../docs/src/javadoc</javadoc.loc>
- <spring.osgi.symbolic.name>${symName.prefix}.core</spring.osgi.symbolic.name>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-io</artifactId>
- </dependency>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-mock</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.aop</artifactId>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.beans</artifactId>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.context</artifactId>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.core</artifactId>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.test</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.aopalliance</groupId>
- <artifactId>com.springsource.org.aopalliance</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>osgi_R4_compendium</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>multithreadedtc</groupId>
- <artifactId>multithreadedtc</artifactId>
- <version>1.01</version>
- <scope>test</scope>
- <exclusions>
- <exclusion>
- <groupId>backport-util-concurrent</groupId>
- <artifactId>backport-util-concurrent</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- </dependencies>
-
+ <artifactId>gemini-blueprint-core</artifactId>
+ <packaging>jar</packaging>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+ <name>Gemini Blueprint Core</name>
+ <description>
+ Eclipse Gemini Blueprint core classes. Offers OSGi-based application context and importer/exporter
+ functionality.
+ </description>
+
+ <properties>
+ <javadoc.loc>${basedir}/../docs/src/javadoc</javadoc.loc>
+ <spring.osgi.symbolic.name>${symName.prefix}.core</spring.osgi.symbolic.name>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-io</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-mock</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-aop</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-beans</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-context</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-test</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.aopalliance</groupId>
+ <artifactId>com.springsource.org.aopalliance</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.compendium</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>multithreadedtc</groupId>
+ <artifactId>multithreadedtc</artifactId>
+ <version>1.01</version>
+ <scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>backport-util-concurrent</groupId>
+ <artifactId>backport-util-concurrent</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ </dependencies>
+
</project> \ No newline at end of file
diff --git a/docs/pom.xml b/docs/pom.xml
index 9ba8b4b..eff98ff 100644
--- a/docs/pom.xml
+++ b/docs/pom.xml
@@ -1,73 +1,76 @@
- <?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint</artifactId>
- <packaging>pom</packaging>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- <name>Eclipse Gemini Blueprint</name>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
-
- <build>
- <plugins>
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint</artifactId>
+ <packaging>pom</packaging>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <name>Eclipse Gemini Blueprint</name>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+
+ <build>
+ <plugins>
<plugin>
<groupId>com.agilejava.docbkx</groupId>
<artifactId>docbkx-maven-plugin</artifactId>
<version>2.0.7</version>
- <executions>
- <execution>
- <id>single-page</id>
- <goals>
- <goal>generate-html</goal>
- </goals>
- <configuration>
- <chunkedOutput>false</chunkedOutput>
- <htmlCustomization>src/docbkx/resources/xsl/html.xsl</htmlCustomization>
- <postProcess>
- <copy todir="${basedir}/target/site/reference/html-single">
- <fileset dir="${basedir}/target/docbkx/html">
- <include name="**/*.html" />
- </fileset>
- </copy>
- <copy todir="${basedir}/target/site/reference/html-single">
- <fileset dir="${basedir}/src/docbkx/resources">
- <include name="**/*.css" />
- <include name="**/*.png" />
- <include name="**/*.gif" />
- <include name="**/*.jpg" />
- </fileset>
- </copy>
- </postProcess>
- </configuration>
- <phase>pre-site</phase>
- </execution>
- <execution>
- <id>multi-page</id>
- <goals>
- <goal>generate-html</goal>
- </goals>
- <configuration>
- <chunkedOutput>true</chunkedOutput>
- <htmlCustomization>src/docbkx/resources/xsl/html_chunk.xsl</htmlCustomization>
- <postProcess>
- <copy todir="${basedir}/target/site/reference">
- <fileset dir="${basedir}/target/docbkx">
- <include name="**/*.html" />
- </fileset>
- </copy>
- <copy todir="${basedir}/target/site/reference/html">
- <fileset dir="${basedir}/src/docbkx/resources">
- <include name="**/*.css" />
- <include name="**/*.png" />
- <include name="**/*.gif" />
- <include name="**/*.jpg" />
- </fileset>
- </copy>
- </postProcess>
- </configuration>
- <phase>pre-site</phase>
- </execution>
- </executions>
+ <executions>
+ <execution>
+ <id>single-page</id>
+ <goals>
+ <goal>generate-html</goal>
+ </goals>
+ <configuration>
+ <chunkedOutput>false</chunkedOutput>
+ <htmlCustomization>src/docbkx/resources/xsl/html.xsl</htmlCustomization>
+ <postProcess>
+ <copy todir="${basedir}/target/site/reference/html-single">
+ <fileset dir="${basedir}/target/docbkx/html">
+ <include name="**/*.html"/>
+ </fileset>
+ </copy>
+ <copy todir="${basedir}/target/site/reference/html-single">
+ <fileset dir="${basedir}/src/docbkx/resources">
+ <include name="**/*.css"/>
+ <include name="**/*.png"/>
+ <include name="**/*.gif"/>
+ <include name="**/*.jpg"/>
+ </fileset>
+ </copy>
+ </postProcess>
+ </configuration>
+ <phase>pre-site</phase>
+ </execution>
+ <execution>
+ <id>multi-page</id>
+ <goals>
+ <goal>generate-html</goal>
+ </goals>
+ <configuration>
+ <chunkedOutput>true</chunkedOutput>
+ <htmlCustomization>src/docbkx/resources/xsl/html_chunk.xsl</htmlCustomization>
+ <postProcess>
+ <copy todir="${basedir}/target/site/reference">
+ <fileset dir="${basedir}/target/docbkx">
+ <include name="**/*.html"/>
+ </fileset>
+ </copy>
+ <copy todir="${basedir}/target/site/reference/html">
+ <fileset dir="${basedir}/src/docbkx/resources">
+ <include name="**/*.css"/>
+ <include name="**/*.png"/>
+ <include name="**/*.gif"/>
+ <include name="**/*.jpg"/>
+ </fileset>
+ </copy>
+ </postProcess>
+ </configuration>
+ <phase>pre-site</phase>
+ </execution>
+ </executions>
<dependencies>
<dependency>
<groupId>org.docbook</groupId>
@@ -95,22 +98,22 @@
</entities>
</configuration>
</plugin>
- </plugins>
-</build>
+ </plugins>
+ </build>
- <pluginRepositories>
- <pluginRepository>
- <id>agilejava</id>
- <url>http://agilejava.com/maven/</url>
- </pluginRepository>
- </pluginRepositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>agilejava</id>
+ <url>http://agilejava.com/maven/</url>
+ </pluginRepository>
+ </pluginRepositories>
- <distributionManagement>
- <downloadUrl>http://www.springframework.org/osgi/</downloadUrl>
- <site>
- <id>static.springframework.org</id>
- <name>SpringFramework.org</name>
- <url>scp://static.springframework.org/var/www/domains/springframework.org/static/htdocs/spring-osgi/snapshot-site/</url>
- </site>
- </distributionManagement>
+ <distributionManagement>
+ <downloadUrl>http://www.springframework.org/osgi/</downloadUrl>
+ <site>
+ <id>static.springframework.org</id>
+ <name>SpringFramework.org</name>
+ <url>scp://static.springframework.org/var/www/domains/springframework.org/static/htdocs/spring-osgi/snapshot-site/</url>
+ </site>
+ </distributionManagement>
</project> \ No newline at end of file
diff --git a/docs/src/docbkx/reference/testing.xml b/docs/src/docbkx/reference/testing.xml
index 63deb8f..343922c 100644
--- a/docs/src/docbkx/reference/testing.xml
+++ b/docs/src/docbkx/reference/testing.xml
@@ -263,7 +263,7 @@ Reason: Missing Constraint: Import-Package: org.apache.commons.lang.time; versio
<para>Let's fix our integration test by installing the required bundle (and some extra osgi libraries):</para>
<programlisting language="java"><![CDATA[protected String[] getTestBundlesNames() {
- return new String[] { "net.sourceforge.cglib, com.springsource.net.sf.cglib, 2.1.3",
+ return new String[] { "net.sourceforge.cglib, com.springsource.net.sf.cglib, 2.2.0",
"javax.transaction, com.springsource.javax.transaction, 1.1.0",
"commons-lang, commons-lang, 2.4" };
};
diff --git a/extender/pom.xml b/extender/pom.xml
index c6a624c..fb61719 100644
--- a/extender/pom.xml
+++ b/extender/pom.xml
@@ -1,52 +1,57 @@
-<?xml version="1.0"?>
-<project>
- <parent>
- <artifactId>gemini-blueprint</artifactId>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-extender</artifactId>
- <packaging>jar</packaging>
- <name>Gemini Blueprint Extender</name>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
- <description>
- Eclipse Gemini Blueprint extender. Listens for and bootstraps OSGi 4.2 Blueprint and Spring-powered OSGi bundles.
- </description>
-
- <properties>
- <javadoc.loc>${basedir}/../docs/src/javadoc</javadoc.loc>
- <spring.osgi.symbolic.name>${symName.prefix}.extender</spring.osgi.symbolic.name>
- </properties>
-
-
- <dependencies>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-mock</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-core</artifactId>
- </dependency>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-io</artifactId>
- </dependency>
- <dependency>
- <groupId>org.aopalliance</groupId>
- <artifactId>com.springsource.org.aopalliance</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.osgi.compendium</artifactId>
- <version>1.0.1</version>
- <scope>provided</scope>
- </dependency>
- </dependencies>
+ <parent>
+ <artifactId>gemini-blueprint</artifactId>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-extender</artifactId>
+ <packaging>jar</packaging>
+ <name>Gemini Blueprint Extender</name>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+
+ <description>
+ Eclipse Gemini Blueprint extender. Listens for and bootstraps OSGi 4.2 Blueprint and Spring-powered OSGi
+ bundles.
+ </description>
+
+ <properties>
+ <javadoc.loc>${basedir}/../docs/src/javadoc</javadoc.loc>
+ <spring.osgi.symbolic.name>${symName.prefix}.extender</spring.osgi.symbolic.name>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-mock</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-io</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.aopalliance</groupId>
+ <artifactId>com.springsource.org.aopalliance</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.compendium</artifactId>
+ <version>4.2.0</version>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
</project> \ No newline at end of file
diff --git a/integration-tests/bundles/blueprint/config.bundle/pom.xml b/integration-tests/bundles/blueprint/config.bundle/pom.xml
index 994413d..a088d44 100644
--- a/integration-tests/bundles/blueprint/config.bundle/pom.xml
+++ b/integration-tests/bundles/blueprint/config.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
<groupId>org.eclipse.gemini.blueprint.iandt.blueprint</groupId>
<artifactId>bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt.blueprint</groupId>
+
<artifactId>config.bundle</artifactId>
<packaging>jar</packaging>
<name>Eclipse Gemini Blueprint Test Bundle: Configuration test bundle</name>
diff --git a/integration-tests/bundles/blueprint/error.bundle/pom.xml b/integration-tests/bundles/blueprint/error.bundle/pom.xml
index 8aa30ec..7539634 100644
--- a/integration-tests/bundles/blueprint/error.bundle/pom.xml
+++ b/integration-tests/bundles/blueprint/error.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
<groupId>org.eclipse.gemini.blueprint.iandt.blueprint</groupId>
<artifactId>bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt.blueprint</groupId>
+
<artifactId>error.bundle</artifactId>
<packaging>jar</packaging>
<name>Eclipse Gemini Blueprint Test Bundle: Error bundle</name>
diff --git a/integration-tests/bundles/blueprint/pom.xml b/integration-tests/bundles/blueprint/pom.xml
index 3110148..c63ceed 100644
--- a/integration-tests/bundles/blueprint/pom.xml
+++ b/integration-tests/bundles/blueprint/pom.xml
@@ -1,61 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project>
- <parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- </parent>
-
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt.blueprint</groupId>
- <artifactId>bundles</artifactId>
- <packaging>pom</packaging>
- <name>Gemini Blueprint Integration Testing Bundles</name>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
-
- <properties>
- <!-- root, empty package -->
- <!-- plugin not yet enabled to avoid further problems -->
- <spring.osgi.import.pkg>!org.springframework.osgi.blueprint.iandt, *</spring.osgi.import.pkg>
- <spring.osgi.export.pkg>${pom.artifactId}*</spring.osgi.export.pkg>
- <clover.skip>true</clover.skip>
- </properties>
-
- <!-- shared dependencies -->
- <dependencies>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-core</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <modules>
- <module>simple.bundle</module>
- <module>error.bundle</module>
- <module>waiting.bundle</module>
- <module>config.bundle</module>
- </modules>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-deploy-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <archive>
- <manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile>
- </archive>
- </configuration>
- </plugin>
- </plugins>
-
- </build>
+ <parent>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
+ <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <groupId>org.eclipse.gemini.blueprint.iandt.blueprint</groupId>
+ <artifactId>bundles</artifactId>
+ <packaging>pom</packaging>
+ <name>Gemini Blueprint Integration Testing Bundles</name>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+
+ <modules>
+ <module>simple.bundle</module>
+ <module>error.bundle</module>
+ <module>waiting.bundle</module>
+ <module>config.bundle</module>
+ </modules>
</project>
diff --git a/integration-tests/bundles/blueprint/simple.bundle/pom.xml b/integration-tests/bundles/blueprint/simple.bundle/pom.xml
index 2198f00..6afd7f0 100644
--- a/integration-tests/bundles/blueprint/simple.bundle/pom.xml
+++ b/integration-tests/bundles/blueprint/simple.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
<groupId>org.eclipse.gemini.blueprint.iandt.blueprint</groupId>
<artifactId>bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt.blueprint</groupId>
+
<artifactId>simple.bundle</artifactId>
<packaging>jar</packaging>
<name>Eclipse Gemini Blueprint Test Bundle: Simple service test bundle</name>
diff --git a/integration-tests/bundles/blueprint/waiting.bundle/pom.xml b/integration-tests/bundles/blueprint/waiting.bundle/pom.xml
index 87fe1fc..e41272b 100644
--- a/integration-tests/bundles/blueprint/waiting.bundle/pom.xml
+++ b/integration-tests/bundles/blueprint/waiting.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
<groupId>org.eclipse.gemini.blueprint.iandt.blueprint</groupId>
<artifactId>bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt.blueprint</groupId>
+
<artifactId>waiting.bundle</artifactId>
<packaging>jar</packaging>
<name>Eclipse Gemini Blueprint Test Bundle: Waiting bundle</name>
diff --git a/integration-tests/bundles/cardinality.0to1.bundle/pom.xml b/integration-tests/bundles/cardinality.0to1.bundle/pom.xml
index 734cb90..e8d04f9 100644
--- a/integration-tests/bundles/cardinality.0to1.bundle/pom.xml
+++ b/integration-tests/bundles/cardinality.0to1.bundle/pom.xml
@@ -1,15 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
-
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>cardinality0to1</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Spring context service reference cardinality 0..1 bundle</name>
@@ -20,7 +21,7 @@
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>simple.service</artifactId>
- <version>${project.parent.version}</version>
+ <version>${project.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
diff --git a/integration-tests/bundles/config.bundle/async.nowait.bundle/pom.xml b/integration-tests/bundles/config.bundle/async.nowait.bundle/pom.xml
index 64706cb..889343b 100644
--- a/integration-tests/bundles/config.bundle/async.nowait.bundle/pom.xml
+++ b/integration-tests/bundles/config.bundle/async.nowait.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>config.bundle</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>config.bundle</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>async-nowait-bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Async-NoWait-Bundle</name>
diff --git a/integration-tests/bundles/config.bundle/async.wait.bundle/pom.xml b/integration-tests/bundles/config.bundle/async.wait.bundle/pom.xml
index 5096339..1786038 100644
--- a/integration-tests/bundles/config.bundle/async.wait.bundle/pom.xml
+++ b/integration-tests/bundles/config.bundle/async.wait.bundle/pom.xml
@@ -1,15 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>config.bundle</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>config.bundle</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
-
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>async-wait-bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Async-Wait-Bundle</name>
diff --git a/integration-tests/bundles/config.bundle/no.publish.bundle/pom.xml b/integration-tests/bundles/config.bundle/no.publish.bundle/pom.xml
index e747a1b..17db9e4 100644
--- a/integration-tests/bundles/config.bundle/no.publish.bundle/pom.xml
+++ b/integration-tests/bundles/config.bundle/no.publish.bundle/pom.xml
@@ -1,15 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>config.bundle</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>config.bundle</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
-
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>nopublish-bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: NoPublish-Bundle</name>
diff --git a/integration-tests/bundles/config.bundle/pom.xml b/integration-tests/bundles/config.bundle/pom.xml
index 7900e9f..601ddd7 100644
--- a/integration-tests/bundles/config.bundle/pom.xml
+++ b/integration-tests/bundles/config.bundle/pom.xml
@@ -1,80 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project>
- <parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <artifactId>config.bundle</artifactId>
- <packaging>pom</packaging>
- <name>Gemini Blueprint Test Bundle: Integration testing bundles for configuration options</name>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
-
- <properties>
- <!-- root, empty package -->
- <!-- plugin not yet enabled to avoid further problems -->
- <spring.osgi.import.pkg>!org.eclipse.gemini.blueprint.iandt, *</spring.osgi.import.pkg>
- <spring.osgi.export.pkg>${pom.artifactId}*</spring.osgi.export.pkg>
- </properties>
-
- <!-- shared dependencies -->
- <dependencies>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-core</artifactId>
- <version>${project.parent.version}</version>
- <type>jar</type>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <modules>
- <module>no.publish.bundle</module>
- <module>async.nowait.bundle</module>
- <module>async.wait.bundle</module>
- <module>sync.nowait.bundle</module>
- <module>sync.tail.bundle</module>
- <module>sync.wait.bundle</module>
- </modules>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <archive>
- <manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile>
- </archive>
- </configuration>
- </plugin>
- </plugins>
-
- </build>
+ <artifactId>config.bundle</artifactId>
+ <packaging>pom</packaging>
+ <name>Gemini Blueprint Test Bundle: Integration testing bundles for configuration options</name>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+
+ <modules>
+ <module>no.publish.bundle</module>
+ <module>async.nowait.bundle</module>
+ <module>async.wait.bundle</module>
+ <module>sync.nowait.bundle</module>
+ <module>sync.tail.bundle</module>
+ <module>sync.wait.bundle</module>
+ </modules>
- <!-- the above doesn't work, so we spell it out in full below
- <reporting>
- <excludeDefaults>true</excludeDefaults>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-project-info-reports-plugin</artifactId>
- <inherited>true</inherited>
- <reportSets>
- <reportSet></reportSet>
- </reportSets>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <configuration>
- <excludePackageNames>*</excludePackageNames>
- </configuration>
- </plugin>
- </plugins>
- </reporting>
- -->
</project>
diff --git a/integration-tests/bundles/config.bundle/sync.nowait.bundle/pom.xml b/integration-tests/bundles/config.bundle/sync.nowait.bundle/pom.xml
index cc3a66c..9e77cc4 100644
--- a/integration-tests/bundles/config.bundle/sync.nowait.bundle/pom.xml
+++ b/integration-tests/bundles/config.bundle/sync.nowait.bundle/pom.xml
@@ -1,15 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>config.bundle</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>config.bundle</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
-
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>sync-nowait-bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Sync-NoWait-Bundle</name>
diff --git a/integration-tests/bundles/config.bundle/sync.tail.bundle/pom.xml b/integration-tests/bundles/config.bundle/sync.tail.bundle/pom.xml
index 5be564e..9433c19 100644
--- a/integration-tests/bundles/config.bundle/sync.tail.bundle/pom.xml
+++ b/integration-tests/bundles/config.bundle/sync.tail.bundle/pom.xml
@@ -1,15 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>config.bundle</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>config.bundle</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
-
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>sync-tail-bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Sync-Tail-Bundle</name>
diff --git a/integration-tests/bundles/config.bundle/sync.wait.bundle/pom.xml b/integration-tests/bundles/config.bundle/sync.wait.bundle/pom.xml
index 2435739..6456706 100644
--- a/integration-tests/bundles/config.bundle/sync.wait.bundle/pom.xml
+++ b/integration-tests/bundles/config.bundle/sync.wait.bundle/pom.xml
@@ -1,15 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>config.bundle</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>config.bundle</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
-
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>sync-wait-bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Sync-Wait-Bundle</name>
diff --git a/integration-tests/bundles/config.file.with.dots.bundle/pom.xml b/integration-tests/bundles/config.file.with.dots.bundle/pom.xml
index e81141b..8075d95 100644
--- a/integration-tests/bundles/config.file.with.dots.bundle/pom.xml
+++ b/integration-tests/bundles/config.file.with.dots.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>config-with-dots.bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Config File With Dots bundle</name>
diff --git a/integration-tests/bundles/configuration.test.bundle/pom.xml b/integration-tests/bundles/configuration.test.bundle/pom.xml
index 446d956..5e3f1a7 100644
--- a/integration-tests/bundles/configuration.test.bundle/pom.xml
+++ b/integration-tests/bundles/configuration.test.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>configuration</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Configuration test bundle</name>
diff --git a/integration-tests/bundles/deadlock.bundle/pom.xml b/integration-tests/bundles/deadlock.bundle/pom.xml
index 42327af..ce24321 100644
--- a/integration-tests/bundles/deadlock.bundle/pom.xml
+++ b/integration-tests/bundles/deadlock.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>deadlock</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Deadlock bundle</name>
diff --git a/integration-tests/bundles/dependency.factory.bundle/pom.xml b/integration-tests/bundles/dependency.factory.bundle/pom.xml
index 685d731..23034a5 100644
--- a/integration-tests/bundles/dependency.factory.bundle/pom.xml
+++ b/integration-tests/bundles/dependency.factory.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>dependendencies.factory</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Simple service created by a factory which has a non trivial delay in createObject()</name>
diff --git a/integration-tests/bundles/dependency.test.bundle/pom.xml b/integration-tests/bundles/dependency.test.bundle/pom.xml
index 5e4a18b..98cee0c 100644
--- a/integration-tests/bundles/dependency.test.bundle/pom.xml
+++ b/integration-tests/bundles/dependency.test.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>dependencies</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Spring context dependencies test bundle</name>
@@ -16,17 +18,16 @@
<url>http://www.eclipse.org/gemini/blueprint/</url>
<dependencies>
-
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>simple.service</artifactId>
- <version>${project.parent.version}</version>
+ <version>${project.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>simple.service2</artifactId>
- <version>${project.parent.version}</version>
+ <version>${project.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
diff --git a/integration-tests/bundles/embedded.ns.bundle/pom.xml b/integration-tests/bundles/embedded.ns.bundle/pom.xml
index 25bafd2..811d991 100644
--- a/integration-tests/bundles/embedded.ns.bundle/pom.xml
+++ b/integration-tests/bundles/embedded.ns.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>ns.embedded</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: namespace test bundle</name>
diff --git a/integration-tests/bundles/error.bundle/pom.xml b/integration-tests/bundles/error.bundle/pom.xml
index ae95ade..7ccbb10 100644
--- a/integration-tests/bundles/error.bundle/pom.xml
+++ b/integration-tests/bundles/error.bundle/pom.xml
@@ -1,26 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>error</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Error bundle</name>
<description>An OSGi bundle with an error in imports which will force an error</description>
<url>http://www.eclipse.org/gemini/blueprint/</url>
-
<dependencies>
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>simple.service</artifactId>
- <version>${project.parent.version}</version>
+ <version>${project.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
diff --git a/integration-tests/bundles/export.import.dependency.bundle/pom.xml b/integration-tests/bundles/export.import.dependency.bundle/pom.xml
index e1185f3..eb45a34 100644
--- a/integration-tests/bundles/export.import.dependency.bundle/pom.xml
+++ b/integration-tests/bundles/export.import.dependency.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>export-import-dependency-bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Export Import Dependency Bundle</name>
diff --git a/integration-tests/bundles/extender.fragment.bundle/pom.xml b/integration-tests/bundles/extender.fragment.bundle/pom.xml
index dfee9cf..2714bc0 100644
--- a/integration-tests/bundles/extender.fragment.bundle/pom.xml
+++ b/integration-tests/bundles/extender.fragment.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>extender-fragment-bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Extender Configuration Fragment Bundle</name>
diff --git a/integration-tests/bundles/extender.listener.bundle/pom.xml b/integration-tests/bundles/extender.listener.bundle/pom.xml
index 7f9bb34..364dd28 100644
--- a/integration-tests/bundles/extender.listener.bundle/pom.xml
+++ b/integration-tests/bundles/extender.listener.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>extender.listener.bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Extender Event listener bundle Bundle</name>
diff --git a/integration-tests/bundles/extender.version.bundle/pom.xml b/integration-tests/bundles/extender.version.bundle/pom.xml
index 8c2fda9..6adfdfe 100644
--- a/integration-tests/bundles/extender.version.bundle/pom.xml
+++ b/integration-tests/bundles/extender.version.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>extender-version-bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: ExtenderVersion-Test-Bundle</name>
diff --git a/integration-tests/bundles/io.fragment.1.bundle/pom.xml b/integration-tests/bundles/io.fragment.1.bundle/pom.xml
index 0eaf6a5..dfc3139 100644
--- a/integration-tests/bundles/io.fragment.1.bundle/pom.xml
+++ b/integration-tests/bundles/io.fragment.1.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>io.fragment.1.bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: IO fragment 1 bundle</name>
diff --git a/integration-tests/bundles/io.fragment.2.bundle/pom.xml b/integration-tests/bundles/io.fragment.2.bundle/pom.xml
index dc65952..f794e4c 100644
--- a/integration-tests/bundles/io.fragment.2.bundle/pom.xml
+++ b/integration-tests/bundles/io.fragment.2.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>io.fragment.2.bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: IO fragment 2 bundle</name>
diff --git a/integration-tests/bundles/jdk.proxy.bundle/pom.xml b/integration-tests/bundles/jdk.proxy.bundle/pom.xml
index 21872b2..777c1ec 100644
--- a/integration-tests/bundles/jdk.proxy.bundle/pom.xml
+++ b/integration-tests/bundles/jdk.proxy.bundle/pom.xml
@@ -1,21 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
-
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>jdk.proxy</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: JDK proxy test</name>
<description>An OSGi bundle for JDK proxy testing</description>
<url>http://www.eclipse.org/gemini/blueprint/</url>
-
-
-</project>
-
+</project> \ No newline at end of file
diff --git a/integration-tests/bundles/jdk5/component.scan.bundle/pom.xml b/integration-tests/bundles/jdk5/component.scan.bundle/pom.xml
index 7692ce4..b845fae 100644
--- a/integration-tests/bundles/jdk5/component.scan.bundle/pom.xml
+++ b/integration-tests/bundles/jdk5/component.scan.bundle/pom.xml
@@ -1,19 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>spring-osgi-jdk5-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>spring-osgi-jdk5-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>component.scan.bundle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: @Component beans bundle</name>
<description>An OSGi bundle with Spring annotated components</description>
<url>http://www.eclipse.org/gemini/blueprint/</url>
-
-</project>
-
+</project> \ No newline at end of file
diff --git a/integration-tests/bundles/jdk5/pom.xml b/integration-tests/bundles/jdk5/pom.xml
index 55d9527..0b6c421 100644
--- a/integration-tests/bundles/jdk5/pom.xml
+++ b/integration-tests/bundles/jdk5/pom.xml
@@ -1,73 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project>
- <parent>
- <artifactId>gemini-blueprint</artifactId>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>spring-osgi-jdk5-integration-test-bundles</artifactId>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <packaging>pom</packaging>
- <name>Eclipse Gemini Blueprint JDK5 Integration Testing Bundles</name>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
-
- <properties>
-
- <bundlor.enabled>false</bundlor.enabled>
- </properties>
-
- <!-- shared dependencies -->
- <dependencies>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-core</artifactId>
- <version>${project.parent.version}</version>
- <type>jar</type>
- <scope>provided</scope>
- </dependency>
- <!--
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-annotation</artifactId>
- <version>${project.parent.version}</version>
- <scope>provided</scope>
- </dependency>
- -->
- </dependencies>
-
- <modules>
- <!--
- <module>annotation.dependency.test.bundle</module>
- <module>annotation.test.bundle</module>
- -->
- <module>component.scan.bundle</module>
- </modules>
-
-
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-compiler-plugin</artifactId>
- <groupId>org.apache.maven.plugins</groupId>
- <configuration>
- <source>1.5</source>
- <target>1.5</target>
- <debug>true</debug>
- </configuration>
- </plugin>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <archive>
- <manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile>
- </archive>
- </configuration>
- </plugin>
- </plugins>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <artifactId>spring-osgi-jdk5-integration-test-bundles</artifactId>
+ <packaging>pom</packaging>
+ <name>Eclipse Gemini Blueprint JDK5 Integration Testing Bundles</name>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+
+ <modules>
+ <module>component.scan.bundle</module>
+ </modules>
- </build>
-
</project>
diff --git a/integration-tests/bundles/lifecycle.test.bundle/pom.xml b/integration-tests/bundles/lifecycle.test.bundle/pom.xml
index 70782bc..0cafcb2 100644
--- a/integration-tests/bundles/lifecycle.test.bundle/pom.xml
+++ b/integration-tests/bundles/lifecycle.test.bundle/pom.xml
@@ -1,22 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>lifecycle</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Spring context lifecycle test bundle</name>
<description>An OSGi bundle that tests the lifecycle of the Spring Application context</description>
<url>http://www.eclipse.org/gemini/blueprint/</url>
-
- <dependencies>
-
- </dependencies>
-</project>
-
+</project> \ No newline at end of file
diff --git a/integration-tests/bundles/namespace.own.consumer.bundle/pom.xml b/integration-tests/bundles/namespace.own.consumer.bundle/pom.xml
index b022297..a3c934b 100644
--- a/integration-tests/bundles/namespace.own.consumer.bundle/pom.xml
+++ b/integration-tests/bundles/namespace.own.consumer.bundle/pom.xml
@@ -1,18 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>ns.own.consumer</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: namespace provider and consumer bundle</name>
<description>A simple namespace bundle that provides and uses its own namespace</description>
<url>http://www.eclipse.org/gemini/blueprint/</url>
-</project>
-
+</project> \ No newline at end of file
diff --git a/integration-tests/bundles/pom.xml b/integration-tests/bundles/pom.xml
index 53a30b8..e0e8fde 100644
--- a/integration-tests/bundles/pom.xml
+++ b/integration-tests/bundles/pom.xml
@@ -1,104 +1,94 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project>
- <parent>
- <artifactId>gemini-blueprint</artifactId>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <packaging>pom</packaging>
- <name>Eclipse Gemini Blueprint Integration Testing Bundles</name>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
-
- <properties>
- <!-- root, empty package -->
- <!-- plugin not yet enabled to avoid further problems -->
- <spring.osgi.import.pkg>!org.eclipse.gemini.blueprint.iandt, *</spring.osgi.import.pkg>
- <spring.osgi.export.pkg>${pom.artifactId}*</spring.osgi.export.pkg>
- <clover.skip>true</clover.skip>
- <bundlor.enabled>false</bundlor.enabled>
- </properties>
-
- <!-- shared dependencies -->
- <dependencies>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-tests-parent</artifactId>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
+ <packaging>pom</packaging>
+ <name>Eclipse Gemini Blueprint Integration Testing Bundles</name>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+
+ <properties>
+ <!-- root, empty package -->
+ <!-- plugin not yet enabled to avoid further problems -->
+ <spring.osgi.import.pkg>!org.eclipse.gemini.blueprint.iandt, *</spring.osgi.import.pkg>
+ <spring.osgi.export.pkg>${project.artifactId}*</spring.osgi.export.pkg>
+ <clover.skip>true</clover.skip>
+ <bundlor.enabled>false</bundlor.enabled>
+ </properties>
+
+ <!-- shared dependencies -->
+ <dependencies>
<dependency>
<groupId>org.eclipse.gemini.blueprint</groupId>
<artifactId>gemini-blueprint-core</artifactId>
<scope>provided</scope>
</dependency>
- </dependencies>
-
- <modules>
- <module>simple.service.bundle</module>
- <module>simple.service.bundle.identical</module>
- <module>simple.service.bundle.2.identical</module>
- <module>simple.service.2.bundle</module>
- <module>simple.service.3.bundle</module>
- <module>dependency.factory.bundle</module>
- <module>trivial.bundle</module>
- <module>trivial.test.bundle</module>
- <module>lifecycle.test.bundle</module>
- <module>service.listener.bundle</module>
- <module>reference.test.bundle</module>
- <module>proxy.destruction.test.bundle</module>
- <module>dependency.test.bundle</module>
- <module>cardinality.0to1.bundle</module>
- <module>scoped.a.bundle</module>
- <module>scoped.b.bundle</module>
- <module>scoped.common.bundle</module>
- <module>io.fragment.1.bundle</module>
- <module>io.fragment.2.bundle</module>
- <module>error.bundle</module>
- <module>deadlock.bundle</module>
- <module>configuration.test.bundle</module>
- <module>extender.version.bundle</module>
- <module>config.bundle</module>
- <module>tccl.intf.bundle</module>
- <module>tccl.bundle</module>
- <module>config.file.with.dots.bundle</module>
- <module>proxy.creator.bundle</module>
- <module>extender.fragment.bundle</module>
- <module>jdk.proxy.bundle</module>
- <module>extender.listener.bundle</module>
- <module>namespace.own.consumer.bundle</module>
- <module>proxy.listener</module>
- <module>export.import.dependency.bundle</module>
- <!--
- <module>web.bundles</module>
- -->
- <module>jdk5</module>
+ </dependencies>
+
+ <modules>
+ <module>simple.service.bundle</module>
+ <module>simple.service.bundle.identical</module>
+ <module>simple.service.bundle.2.identical</module>
+ <module>simple.service.2.bundle</module>
+ <module>simple.service.3.bundle</module>
+ <module>dependency.factory.bundle</module>
+ <module>trivial.bundle</module>
+ <module>trivial.test.bundle</module>
+ <module>lifecycle.test.bundle</module>
+ <module>service.listener.bundle</module>
+ <module>reference.test.bundle</module>
+ <module>proxy.destruction.test.bundle</module>
+ <module>dependency.test.bundle</module>
+ <module>cardinality.0to1.bundle</module>
+ <module>scoped.a.bundle</module>
+ <module>scoped.b.bundle</module>
+ <module>scoped.common.bundle</module>
+ <module>io.fragment.1.bundle</module>
+ <module>io.fragment.2.bundle</module>
+ <module>error.bundle</module>
+ <module>deadlock.bundle</module>
+ <module>configuration.test.bundle</module>
+ <module>extender.version.bundle</module>
+ <module>config.bundle</module>
+ <module>tccl.intf.bundle</module>
+ <module>tccl.bundle</module>
+ <module>config.file.with.dots.bundle</module>
+ <module>proxy.creator.bundle</module>
+ <module>extender.fragment.bundle</module>
+ <module>jdk.proxy.bundle</module>
+ <module>extender.listener.bundle</module>
+ <module>namespace.own.consumer.bundle</module>
+ <module>proxy.listener</module>
+ <module>export.import.dependency.bundle</module>
+ <module>jdk5</module>
- <!-- lazy bundles
- <module>lazy.companion.bundle</module>
- <module>lazy.basic</module>
- <module>lazy.export.no.import</module>
- <module>lazy.export.import</module>
- -->
- <!-- blueprint bundles -->
- <module>blueprint</module>
- </modules>
+ <!-- blueprint bundles -->
+ <module>blueprint</module>
+ </modules>
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-deploy-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <archive>
- <manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile>
- </archive>
- </configuration>
- </plugin>
- </plugins>
-
- </build>
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <archive>
+ <manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile>
+ </archive>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
</project> \ No newline at end of file
diff --git a/integration-tests/bundles/proxy.creator.bundle/pom.xml b/integration-tests/bundles/proxy.creator.bundle/pom.xml
index eb94eef..ce76202 100644
--- a/integration-tests/bundles/proxy.creator.bundle/pom.xml
+++ b/integration-tests/bundles/proxy.creator.bundle/pom.xml
@@ -1,20 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
-
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>proxy.creator</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Spring Proxy Creator bundle</name>
<description>An OSGi bundle that creates proxies internally and is updated</description>
<url>http://www.eclipse.org/gemini/blueprint/</url>
-</project>
-
+</project> \ No newline at end of file
diff --git a/integration-tests/bundles/proxy.destruction.test.bundle/pom.xml b/integration-tests/bundles/proxy.destruction.test.bundle/pom.xml
index 94cc9d0..ff4fae6 100644
--- a/integration-tests/bundles/proxy.destruction.test.bundle/pom.xml
+++ b/integration-tests/bundles/proxy.destruction.test.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>proxy.destruction</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Spring context service reference destruction test bundle</name>
@@ -19,7 +21,7 @@
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>simple.service</artifactId>
- <version>${project.parent.version}</version>
+ <version>${project.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
diff --git a/integration-tests/bundles/proxy.listener/pom.xml b/integration-tests/bundles/proxy.listener/pom.xml
index cbf9816..ef7fd85 100644
--- a/integration-tests/bundles/proxy.listener/pom.xml
+++ b/integration-tests/bundles/proxy.listener/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>proxy.listener</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Just a listener exported as a service</name>
diff --git a/integration-tests/bundles/reference.test.bundle/pom.xml b/integration-tests/bundles/reference.test.bundle/pom.xml
index 47cdc83..7f609ba 100644
--- a/integration-tests/bundles/reference.test.bundle/pom.xml
+++ b/integration-tests/bundles/reference.test.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>reference.proxy</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Spring context service reference lifecycle test bundle</name>
@@ -19,7 +21,7 @@
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>simple.service</artifactId>
- <version>${project.parent.version}</version>
+ <version>${project.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
diff --git a/integration-tests/bundles/scoped.a.bundle/pom.xml b/integration-tests/bundles/scoped.a.bundle/pom.xml
index 217c5b3..57bde81 100644
--- a/integration-tests/bundles/scoped.a.bundle/pom.xml
+++ b/integration-tests/bundles/scoped.a.bundle/pom.xml
@@ -1,22 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>scoped.bundle.a</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Bundle scoping test bundle - A</name>
<description>An OSGi bundle which tests 'bundle' scoped beans</description>
<url>http://www.eclipse.org/gemini/blueprint/</url>
-
- <dependencies>
-
- </dependencies>
</project>
diff --git a/integration-tests/bundles/scoped.b.bundle/pom.xml b/integration-tests/bundles/scoped.b.bundle/pom.xml
index ce7f008..8015f80 100644
--- a/integration-tests/bundles/scoped.b.bundle/pom.xml
+++ b/integration-tests/bundles/scoped.b.bundle/pom.xml
@@ -1,22 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>scoped.bundle.b</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Bundle scoping test bundle - B</name>
<description>An OSGi bundle which tests 'bundle' scoped beans</description>
<url>http://www.eclipse.org/gemini/blueprint/</url>
- <dependencies>
-
- </dependencies>
-</project>
-
+</project> \ No newline at end of file
diff --git a/integration-tests/bundles/scoped.common.bundle/pom.xml b/integration-tests/bundles/scoped.common.bundle/pom.xml
index 2070619..c5a367c 100644
--- a/integration-tests/bundles/scoped.common.bundle/pom.xml
+++ b/integration-tests/bundles/scoped.common.bundle/pom.xml
@@ -1,22 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>scoped.bundle.common</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Bundle scoping test bundle - Common</name>
<description>An OSGi bundle which tests 'bundle' scoped beans</description>
<url>http://www.eclipse.org/gemini/blueprint/</url>
-
- <dependencies>
-
- </dependencies>
</project>
diff --git a/integration-tests/bundles/service.listener.bundle/pom.xml b/integration-tests/bundles/service.listener.bundle/pom.xml
index 714b78a..c7c56b7 100644
--- a/integration-tests/bundles/service.listener.bundle/pom.xml
+++ b/integration-tests/bundles/service.listener.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>service.listener</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Spring context service listener test bundle</name>
@@ -16,11 +18,10 @@
<url>http://www.eclipse.org/gemini/blueprint/</url>
<dependencies>
-
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>simple.service</artifactId>
- <version>${project.parent.version}</version>
+ <version>${project.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
diff --git a/integration-tests/bundles/simple.service.2.bundle/pom.xml b/integration-tests/bundles/simple.service.2.bundle/pom.xml
index 837c951..0bbdefd 100644
--- a/integration-tests/bundles/simple.service.2.bundle/pom.xml
+++ b/integration-tests/bundles/simple.service.2.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>simple.service2</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Simple service test bundle 2</name>
diff --git a/integration-tests/bundles/simple.service.3.bundle/pom.xml b/integration-tests/bundles/simple.service.3.bundle/pom.xml
index 6e79efe..462ceac 100644
--- a/integration-tests/bundles/simple.service.3.bundle/pom.xml
+++ b/integration-tests/bundles/simple.service.3.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>simple.service3</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Simple service test bundle 3</name>
diff --git a/integration-tests/bundles/simple.service.bundle.2.identical/pom.xml b/integration-tests/bundles/simple.service.bundle.2.identical/pom.xml
index 3872b89..33717dd 100644
--- a/integration-tests/bundles/simple.service.bundle.2.identical/pom.xml
+++ b/integration-tests/bundles/simple.service.bundle.2.identical/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>simple.service.2.identical</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Simple service test bundle (impl differs)</name>
@@ -19,7 +21,7 @@
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>simple.service</artifactId>
- <version>${project.parent.version}</version>
+ <version>${project.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
diff --git a/integration-tests/bundles/simple.service.bundle.identical/pom.xml b/integration-tests/bundles/simple.service.bundle.identical/pom.xml
index ef0b70a..151208a 100644
--- a/integration-tests/bundles/simple.service.bundle.identical/pom.xml
+++ b/integration-tests/bundles/simple.service.bundle.identical/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>simple.service.identical</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Simple service test bundle (impl differs)</name>
@@ -19,7 +21,7 @@
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>simple.service</artifactId>
- <version>${project.parent.version}</version>
+ <version>${project.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
diff --git a/integration-tests/bundles/simple.service.bundle/pom.xml b/integration-tests/bundles/simple.service.bundle/pom.xml
index c14a45f..f027132 100644
--- a/integration-tests/bundles/simple.service.bundle/pom.xml
+++ b/integration-tests/bundles/simple.service.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>simple.service</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Simple service test bundle</name>
diff --git a/integration-tests/bundles/tccl.bundle/pom.xml b/integration-tests/bundles/tccl.bundle/pom.xml
index 2915ca0..e5e8bdf 100644
--- a/integration-tests/bundles/tccl.bundle/pom.xml
+++ b/integration-tests/bundles/tccl.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>tccl</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Spring service TCCL management test bundle</name>
@@ -19,7 +21,7 @@
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>tccl.intf</artifactId>
- <version>${project.parent.version}</version>
+ <version>${project.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
diff --git a/integration-tests/bundles/tccl.intf.bundle/pom.xml b/integration-tests/bundles/tccl.intf.bundle/pom.xml
index babe1bf..63063ba 100644
--- a/integration-tests/bundles/tccl.intf.bundle/pom.xml
+++ b/integration-tests/bundles/tccl.intf.bundle/pom.xml
@@ -1,14 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
- http://maven.apache.org/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+
<artifactId>tccl.intf</artifactId>
<packaging>jar</packaging>
<name>Gemini Blueprint Test Bundle: Spring service TCCL management inteface test bundle</name>
diff --git a/integration-tests/bundles/trivial.bundle/pom.xml b/integration-tests/bundles/trivial.bundle/pom.xml
index b1f4289..71c6e07 100644
--- a/integration-tests/bundles/trivial.bundle/pom.xml
+++ b/integration-tests/bundles/trivial.bundle/pom.xml
@@ -1,16 +1,20 @@
-<?xml version="1.0"?><project>
- <parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <artifactId>trivial</artifactId>
- <packaging>jar</packaging>
- <name>Gemini Blueprint Test Bundle: Trivial OSGi bundle</name>
- <description>An OSGi bundle that contains and exports just one class
- </description>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
-
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <artifactId>trivial</artifactId>
+ <packaging>jar</packaging>
+ <name>Gemini Blueprint Test Bundle: Trivial OSGi bundle</name>
+ <description>An OSGi bundle that contains and exports just one class</description>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+
</project> \ No newline at end of file
diff --git a/integration-tests/bundles/trivial.test.bundle/pom.xml b/integration-tests/bundles/trivial.test.bundle/pom.xml
index a236cfe..5706b98 100644
--- a/integration-tests/bundles/trivial.test.bundle/pom.xml
+++ b/integration-tests/bundles/trivial.test.bundle/pom.xml
@@ -1,33 +1,40 @@
-<?xml version="1.0"?><project>
- <parent>
- <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <artifactId>trivial.tests</artifactId>
- <packaging>jar</packaging>
- <name>Gemini Blueprint Test Bundle: Simple test that uses trivial bundle</name>
- <description>Contains a single test case that exercises function in
- org.springframework.osgi.trivial bundle. Used as a basic proof of
- concept for the test harness support.</description>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
- <dependencies>
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <artifactId>trivial</artifactId>
- <version>${project.parent.version}</version>
- <scope>provided</scope>
- </dependency>
-
- <!-- JUnit is required at build time not just test time -->
- <dependency>
- <groupId>org.junit</groupId>
- <artifactId>com.springsource.junit</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
+ <parent>
+ <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-test-bundles</artifactId>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <artifactId>trivial.tests</artifactId>
+ <packaging>jar</packaging>
+ <name>Gemini Blueprint Test Bundle: Simple test that uses trivial bundle</name>
+ <description>Contains a single test case that exercises function in
+ org.springframework.osgi.trivial bundle. Used as a basic proof of
+ concept for the test harness support.
+ </description>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>trivial</artifactId>
+ <version>${project.version}</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <!-- JUnit is required at build time not just test time -->
+ <dependency>
+ <groupId>org.junit</groupId>
+ <artifactId>com.springsource.org.junit</artifactId>
+ <version>4.9.0</version>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
</project> \ No newline at end of file
diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml
index 2ca336a..96182d4 100644
--- a/integration-tests/pom.xml
+++ b/integration-tests/pom.xml
@@ -1,36 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project>
- <parent>
- <artifactId>gemini-blueprint</artifactId>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <artifactId>gemini-blueprint-integration-tests-module</artifactId>
- <packaging>pom</packaging>
- <name>Eclipse Gemini Blueprint Integration Tests Module</name>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
-
- <properties>
- <clover.skip>true</clover.skip>
- <bundlor.enabled>false</bundlor.enabled>
- </properties>
-
- <modules>
- <module>bundles</module>
- <module>tests</module>
- </modules>
-
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-deploy-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
-</project>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint</artifactId>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-tests-parent</artifactId>
+ <packaging>pom</packaging>
+ <name>Eclipse Gemini Blueprint Integration Tests Parent</name>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+
+ <properties>
+ <clover.skip>true</clover.skip>
+ <bundlor.enabled>false</bundlor.enabled>
+ </properties>
+
+ <modules>
+ <module>bundles</module>
+ <module>tests</module>
+ </modules>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+</project> \ No newline at end of file
diff --git a/integration-tests/tests/pom.xml b/integration-tests/tests/pom.xml
index 56d605f..53ffb50 100644
--- a/integration-tests/tests/pom.xml
+++ b/integration-tests/tests/pom.xml
@@ -1,111 +1,105 @@
-<?xml version="1.0"?>
-<project>
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
<parent>
- <artifactId>gemini-blueprint</artifactId>
- <groupId>org.eclipse.gemini.blueprint</groupId>
+ <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
+ <artifactId>gemini-blueprint-integration-tests-parent</artifactId>
<version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint</groupId>
+
<artifactId>gemini-blueprint-integration-tests</artifactId>
<packaging>jar</packaging>
<name>Eclipse Gemini Blueprint Integration Tests</name>
<url>http://www.eclipse.org/gemini/blueprint/</url>
- <properties>
- <bundlor.enabled>false</bundlor.enabled>
- </properties>
-
<dependencies>
<!-- config admin (from Felix) -->
<dependency>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.configadmin</artifactId>
- <version>1.2.4</version>
- <scope>provided</scope>
- <exclusions>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.osgi.core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.osgi.compendium</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.configadmin</artifactId>
+ <version>1.2.4</version>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.compendium</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <!-- metatype service -->
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.metatype</artifactId>
+ <version>1.0.2</version>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.compendium</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
- <!-- metatype service -->
<dependency>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.metatype</artifactId>
- <version>1.0.2</version>
- <scope>provided</scope>
- <exclusions>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.osgi.core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.osgi.compendium</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
-
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.eventadmin</artifactId>
+ <version>1.0.0</version>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.compendium</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
<dependency>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.eventadmin</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- <exclusions>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.osgi.core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.osgi.compendium</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
<groupId>net.sourceforge.cglib</groupId>
<artifactId>com.springsource.net.sf.cglib</artifactId>
<version>2.2.0</version>
<scope>provided</scope>
- </dependency>
-
+ </dependency>
+
<dependency>
<groupId>org.eclipse.gemini.blueprint</groupId>
<artifactId>gemini-blueprint-core</artifactId>
<scope>provided</scope>
</dependency>
+
<dependency>
<groupId>org.eclipse.gemini.blueprint</groupId>
<artifactId>gemini-blueprint-extender</artifactId>
<scope>provided</scope>
</dependency>
-
+
<dependency>
<groupId>org.eclipse.gemini.blueprint</groupId>
<artifactId>gemini-blueprint-test</artifactId>
<scope>provided</scope>
- </dependency>
-<!--
+ </dependency>
+
<dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-annotation</artifactId>
+ <groupId>org.aopalliance</groupId>
+ <artifactId>com.springsource.org.aopalliance</artifactId>
<scope>provided</scope>
</dependency>
--->
- <dependency>
- <groupId>org.aopalliance</groupId>
- <artifactId>com.springsource.org.aopalliance</artifactId>
- <scope>provided</scope>
- </dependency>
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
@@ -113,68 +107,77 @@
<version>${project.parent.version}</version>
<scope>provided</scope>
</dependency>
+
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>lifecycle</artifactId>
<version>${project.parent.version}</version>
<scope>provided</scope>
</dependency>
+
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>reference.proxy</artifactId>
<version>${project.parent.version}</version>
<scope>provided</scope>
</dependency>
+
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>simple.service</artifactId>
<version>${project.parent.version}</version>
<scope>provided</scope>
</dependency>
+
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>simple.service2</artifactId>
<version>${project.parent.version}</version>
<scope>provided</scope>
</dependency>
-
+
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>cardinality0to1</artifactId>
<version>${project.parent.version}</version>
<scope>provided</scope>
</dependency>
+
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>scoped.bundle.a</artifactId>
<version>${project.parent.version}</version>
<scope>provided</scope>
</dependency>
+
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>scoped.bundle.b</artifactId>
<version>${project.parent.version}</version>
<scope>provided</scope>
</dependency>
+
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>scoped.bundle.common</artifactId>
<version>${project.parent.version}</version>
<scope>provided</scope>
</dependency>
+
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>configuration</artifactId>
<version>${project.parent.version}</version>
<scope>provided</scope>
</dependency>
+
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>dependencies</artifactId>
<version>${project.parent.version}</version>
<scope>provided</scope>
</dependency>
-
+
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>tccl.intf</artifactId>
@@ -189,123 +192,24 @@
<scope>provided</scope>
</dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>osgi_R4_compendium</artifactId>
- <scope>provided</scope>
- </dependency>
-
-
-
- <!-- this dependency exists only to test clogging 1.0.4 behaviour -->
- <!-- slf4j is strongly recommended as a replacement for clogging at least for OSGi environments
- <dependency>
- <groupId>org.eclipse.bundles</groupId>
- <artifactId>commons-logging</artifactId>
- <version>20070611</version>
- <scope>provided</scope>
- </dependency>
- -->
-
- <!--
- web artifacts
- -->
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>com.springsource.javax.servlet</artifactId>
- <version>2.4.0</version>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.springframework.osgi</groupId>
- <artifactId>jsp-api.osgi</artifactId>
- <version>2.0-SNAPSHOT</version>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>net.sourceforge.mx4j</groupId>
- <artifactId>com.springsource.mx4j</artifactId>
- <version>3.0.2</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.springframework.osgi</groupId>
- <artifactId>jasper.osgi</artifactId>
- <version>5.5.23-SNAPSHOT</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.springframework.osgi</groupId>
- <artifactId>commons-el.osgi</artifactId>
- <version>1.0-SNAPSHOT</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.springframework.osgi</groupId>
- <artifactId>jstl.osgi</artifactId>
- <version>1.1.2-SNAPSHOT</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.springframework.osgi</groupId>
- <artifactId>catalina.osgi</artifactId>
- <version>5.5.23-SNAPSHOT</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.springframework.osgi</groupId>
- <artifactId>catalina.start.osgi</artifactId>
- <version>1.0.0</version>
- <scope>test</scope>
- </dependency>
- <!--
-
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-web</artifactId>
- <scope>test</scope>
- </dependency>
<dependency>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <artifactId>annotation.proxy</artifactId>
- <version>${project.parent.version}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint.iandt</groupId>
- <artifactId>annotation.proxy</artifactId>
- <version>${project.parent.version}</version>
- <scope>compile</scope>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.compendium</artifactId>
+ <scope>provided</scope>
</dependency>
- -->
-
+
<dependency>
<groupId>org.eclipse.gemini.blueprint.iandt</groupId>
<artifactId>component.scan.bundle</artifactId>
<version>${project.parent.version}</version>
<scope>compile</scope>
</dependency>
-
- </dependencies>
+ </dependencies>
<build>
<plugins>
- <plugin>
- <artifactId>maven-deploy-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
-
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
@@ -317,14 +221,14 @@
<name>com.gatespace.bundle.cm.store</name>
<value>test-config</value>
</property>
- <property>
- <name>org.springframework.osgi.test.framework</name>
- <value>${osgi.test.platform}</value>
- </property>
- <property>
- <name>org.springframework.osgi.integration.testing.clover</name>
- <value>${clover.enabled}</value>
- </property>
+ <property>
+ <name>org.eclipse.gemini.blueprint.test.framework</name>
+ <value>${osgi.test.platform}</value>
+ </property>
+ <property>
+ <name>org.springframework.osgi.integration.testing.clover</name>
+ <value>${clover.enabled}</value>
+ </property>
</systemProperties>
<argLine>${clover.argLine} ${security.argLine}</argLine>
<!--argLine>-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=2111,server=y,suspend=y</argLine-->
@@ -332,4 +236,4 @@
</plugin>
</plugins>
</build>
-</project>
+</project> \ No newline at end of file
diff --git a/integration-tests/tests/src/test/java/org/eclipse/gemini/blueprint/iandt/compliance/io/CallingResourceOnDifferentBundlesTest.java b/integration-tests/tests/src/test/java/org/eclipse/gemini/blueprint/iandt/compliance/io/CallingResourceOnDifferentBundlesTest.java
index 46ffd31..f7d6c4d 100644
--- a/integration-tests/tests/src/test/java/org/eclipse/gemini/blueprint/iandt/compliance/io/CallingResourceOnDifferentBundlesTest.java
+++ b/integration-tests/tests/src/test/java/org/eclipse/gemini/blueprint/iandt/compliance/io/CallingResourceOnDifferentBundlesTest.java
@@ -1,135 +1,135 @@
-/******************************************************************************
- * Copyright (c) 2006, 2010 VMware Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * and Apache License v2.0 which accompanies this distribution.
- * The Eclipse Public License is available at
- * http://www.eclipse.org/legal/epl-v10.html and the Apache License v2.0
- * is available at http://www.opensource.org/licenses/apache2.0.php.
- * You may elect to redistribute this code under either of these licenses.
- *
- * Contributors:
- * VMware Inc.
- *****************************************************************************/
-
-package org.eclipse.gemini.blueprint.iandt.compliance.io;
-
-import java.io.IOException;
-import java.net.URL;
-import java.util.Enumeration;
-import java.util.List;
-
-import org.eclipse.gemini.blueprint.iandt.BaseIntegrationTest;
-import org.osgi.framework.AdminPermission;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleEvent;
-import org.osgi.framework.SynchronousBundleListener;
-import org.eclipse.gemini.blueprint.test.platform.Platforms;
-import org.eclipse.gemini.blueprint.util.OsgiBundleUtils;
-import org.eclipse.gemini.blueprint.util.OsgiStringUtils;
-import org.springframework.util.ObjectUtils;
-
-/**
- *
- * http://sourceforge.net/tracker/index.php?func=detail&aid=1581187&group_id=82798&atid=567241 ClassCastException from
- * Bundle.getResource when called on Bundle passed to the caller
- *
- *
- * @author Costin Leau
- *
- */
-public class CallingResourceOnDifferentBundlesTest extends BaseIntegrationTest {
-
- private static final String LOCATION = "META-INF/";
-
- public void testCallGetResourceOnADifferentBundle() throws Exception {
- // find bundles
- Bundle[] bundles = bundleContext.getBundles();
- for (int i = 1; i < bundles.length; i++) {
- Bundle bundle = bundles[i];
- logger.debug("calling #getResource on bundle " + OsgiStringUtils.nullSafeNameAndSymName(bundle));
- URL url = bundle.getResource(LOCATION);
- if (!OsgiBundleUtils.isFragment(bundle))
- assertNotNull("bundle " + OsgiStringUtils.nullSafeNameAndSymName(bundle) + " contains no META-INF/",
- url);
- }
- }
-
- public void testCallGetResourcesOnADifferentBundle() throws Exception {
- // find bundles
- Bundle[] bundles = bundleContext.getBundles();
- for (int i = 1; i < bundles.length; i++) {
- Bundle bundle = bundles[i];
- logger.debug("calling #getResources on bundle " + OsgiStringUtils.nullSafeNameAndSymName(bundle));
- Enumeration enm = bundle.getResources(LOCATION);
- if (!OsgiBundleUtils.isFragment(bundle))
- assertNotNull("bundle " + OsgiStringUtils.nullSafeNameAndSymName(bundle) + " contains no META-INF/",
- enm);
- }
- }
-
- public void testCallGetResourceOnADifferentBundleRetrievedThroughBundleEvent() throws Exception {
- String EXTRA_BUNDLE = "org.springframework.core";
-
- Bundle[] bundles = bundleContext.getBundles();
- Bundle bundle = null;
- // find cglib library as we don't use it
- for (int i = 1; bundle == null && i < bundles.length; i++) {
- String location = bundles[i].getLocation();
- if (location != null && location.indexOf(EXTRA_BUNDLE) > -1)
- bundle = bundles[i];
- }
-
- assertNotNull("no bundle found", bundle);
- final Bundle sampleBundle = bundle;
-
- final boolean[] listenerCalled = new boolean[] { false };
-
- // register listener
- bundleContext.addBundleListener(new SynchronousBundleListener() {
-
- public void bundleChanged(BundleEvent event) {
- // call getResource
- event.getBundle().getResource(LOCATION);
- // call getResources
- try {
- event.getBundle().getResources(LOCATION);
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
-
- listenerCalled[0] = true;
- }
- });
-
- // update
- sampleBundle.stop();
-
- assertTrue("bundle listener hasn't been called", listenerCalled[0]);
- }
-
- protected boolean isDisabledInThisEnvironment(String testMethodName) {
- return ("testCallGetResourceOnADifferentBundle".equals(testMethodName) || "testCallGetResourcesOnADifferentBundle"
- .equals(testMethodName))
- && (isFelix() || isKF());
- }
-
- private boolean isFelix() {
- String platformName = getPlatformName();
- System.out.println("Platform name is " + platformName);
- return (platformName.indexOf("Felix") > -1);
- }
-
- private boolean isKF() {
- return (getPlatformName().indexOf("Knopflerfish") > -1);
- }
-
- protected List getTestPermissions() {
- List list = super.getTestPermissions();
- list.add(new AdminPermission("*", AdminPermission.METADATA));
- list.add(new AdminPermission("*", AdminPermission.LISTENER));
- list.add(new AdminPermission("*", AdminPermission.EXECUTE));
- list.add(new AdminPermission("*", AdminPermission.RESOURCE));
- return list;
- }
+/******************************************************************************
+ * Copyright (c) 2006, 2010 VMware Inc.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * and Apache License v2.0 which accompanies this distribution.
+ * The Eclipse Public License is available at
+ * http://www.eclipse.org/legal/epl-v10.html and the Apache License v2.0
+ * is available at http://www.opensource.org/licenses/apache2.0.php.
+ * You may elect to redistribute this code under either of these licenses.
+ *
+ * Contributors:
+ * VMware Inc.
+ *****************************************************************************/
+
+package org.eclipse.gemini.blueprint.iandt.compliance.io;
+
+import java.io.IOException;
+import java.net.URL;
+import java.util.Enumeration;
+import java.util.List;
+
+import org.eclipse.gemini.blueprint.iandt.BaseIntegrationTest;
+import org.osgi.framework.AdminPermission;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.BundleEvent;
+import org.osgi.framework.SynchronousBundleListener;
+import org.eclipse.gemini.blueprint.test.platform.Platforms;
+import org.eclipse.gemini.blueprint.util.OsgiBundleUtils;
+import org.eclipse.gemini.blueprint.util.OsgiStringUtils;
+import org.springframework.util.ObjectUtils;
+
+/**
+ *
+ * http://sourceforge.net/tracker/index.php?func=detail&aid=1581187&group_id=82798&atid=567241 ClassCastException from
+ * Bundle.getResource when called on Bundle passed to the caller
+ *
+ *
+ * @author Costin Leau
+ *
+ */
+public class CallingResourceOnDifferentBundlesTest extends BaseIntegrationTest {
+
+ private static final String LOCATION = "META-INF/";
+
+ public void testCallGetResourceOnADifferentBundle() throws Exception {
+ // find bundles
+ Bundle[] bundles = bundleContext.getBundles();
+ for (int i = 1; i < bundles.length; i++) {
+ Bundle bundle = bundles[i];
+ logger.debug("calling #getResource on bundle " + OsgiStringUtils.nullSafeNameAndSymName(bundle));
+ URL url = bundle.getResource(LOCATION);
+ if (!OsgiBundleUtils.isFragment(bundle))
+ assertNotNull("bundle " + OsgiStringUtils.nullSafeNameAndSymName(bundle) + " contains no META-INF/",
+ url);
+ }
+ }
+
+ public void testCallGetResourcesOnADifferentBundle() throws Exception {
+ // find bundles
+ Bundle[] bundles = bundleContext.getBundles();
+ for (int i = 1; i < bundles.length; i++) {
+ Bundle bundle = bundles[i];
+ logger.debug("calling #getResources on bundle " + OsgiStringUtils.nullSafeNameAndSymName(bundle));
+ Enumeration enm = bundle.getResources(LOCATION);
+ if (!OsgiBundleUtils.isFragment(bundle))
+ assertNotNull("bundle " + OsgiStringUtils.nullSafeNameAndSymName(bundle) + " contains no META-INF/",
+ enm);
+ }
+ }
+
+ public void testCallGetResourceOnADifferentBundleRetrievedThroughBundleEvent() throws Exception {
+ String EXTRA_BUNDLE = "spring-core";
+
+ Bundle[] bundles = bundleContext.getBundles();
+ Bundle bundle = null;
+ // find cglib library as we don't use it
+ for (int i = 1; bundle == null && i < bundles.length; i++) {
+ String location = bundles[i].getLocation();
+ if (location != null && location.indexOf(EXTRA_BUNDLE) > -1)
+ bundle = bundles[i];
+ }
+
+ assertNotNull("no bundle found", bundle);
+ final Bundle sampleBundle = bundle;
+
+ final boolean[] listenerCalled = new boolean[] { false };
+
+ // register listener
+ bundleContext.addBundleListener(new SynchronousBundleListener() {
+
+ public void bundleChanged(BundleEvent event) {
+ // call getResource
+ event.getBundle().getResource(LOCATION);
+ // call getResources
+ try {
+ event.getBundle().getResources(LOCATION);
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+
+ listenerCalled[0] = true;
+ }
+ });
+
+ // update
+ sampleBundle.stop();
+
+ assertTrue("bundle listener hasn't been called", listenerCalled[0]);
+ }
+
+ protected boolean isDisabledInThisEnvironment(String testMethodName) {
+ return ("testCallGetResourceOnADifferentBundle".equals(testMethodName) || "testCallGetResourcesOnADifferentBundle"
+ .equals(testMethodName))
+ && (isFelix() || isKF());
+ }
+
+ private boolean isFelix() {
+ String platformName = getPlatformName();
+ System.out.println("Platform name is " + platformName);
+ return (platformName.indexOf("Felix") > -1);
+ }
+
+ private boolean isKF() {
+ return (getPlatformName().indexOf("Knopflerfish") > -1);
+ }
+
+ protected List getTestPermissions() {
+ List list = super.getTestPermissions();
+ list.add(new AdminPermission("*", AdminPermission.METADATA));
+ list.add(new AdminPermission("*", AdminPermission.LISTENER));
+ list.add(new AdminPermission("*", AdminPermission.EXECUTE));
+ list.add(new AdminPermission("*", AdminPermission.RESOURCE));
+ return list;
+ }
} \ No newline at end of file
diff --git a/integration-tests/tests/src/test/java/org/eclipse/gemini/blueprint/iandt/nonosgicl/NonOSGiLoaderProxyTest.java b/integration-tests/tests/src/test/java/org/eclipse/gemini/blueprint/iandt/nonosgicl/NonOSGiLoaderProxyTest.java
index 54e2eb1..a5de720 100644
--- a/integration-tests/tests/src/test/java/org/eclipse/gemini/blueprint/iandt/nonosgicl/NonOSGiLoaderProxyTest.java
+++ b/integration-tests/tests/src/test/java/org/eclipse/gemini/blueprint/iandt/nonosgicl/NonOSGiLoaderProxyTest.java
@@ -1,105 +1,110 @@
-/******************************************************************************
- * Copyright (c) 2006, 2010 VMware Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * and Apache License v2.0 which accompanies this distribution.
- * The Eclipse Public License is available at
- * http://www.eclipse.org/legal/epl-v10.html and the Apache License v2.0
- * is available at http://www.opensource.org/licenses/apache2.0.php.
- * You may elect to redistribute this code under either of these licenses.
- *
- * Contributors:
- * VMware Inc.
- *****************************************************************************/
-
-package org.eclipse.gemini.blueprint.iandt.nonosgicl;
-
-import java.io.PrintWriter;
-import java.sql.Connection;
-import java.sql.SQLException;
-import java.util.Comparator;
-import java.util.Hashtable;
-
-import javax.sql.DataSource;
-
-import org.eclipse.gemini.blueprint.iandt.BaseIntegrationTest;
-import org.osgi.framework.Constants;
-import org.springframework.beans.factory.InitializingBean;
-import org.springframework.context.ConfigurableApplicationContext;
-import org.eclipse.gemini.blueprint.context.support.OsgiBundleXmlApplicationContext;
-
-/**
- * Integration test that checks whether the non-osgi classloader for JDK/OSGi
- * classes are properly considered when creating service proxies.
- *
- * @author Costin Leau
- */
-public class NonOSGiLoaderProxyTest extends BaseIntegrationTest {
-
- // a service that implements several custom classes
- private class Service implements DataSource, Comparator, InitializingBean, Constants {
-
- public Connection getConnection() throws SQLException {
- return null;
- }
-
- public Connection getConnection(String username, String password) throws SQLException {
- return null;
- }
-
- public int getLoginTimeout() throws SQLException {
- return 0;
- }
-
- public PrintWriter getLogWriter() throws SQLException {
- return null;
- }
-
- public void setLoginTimeout(int seconds) throws SQLException {
- }
-
- public void setLogWriter(PrintWriter out) throws SQLException {
- }
-
- public void afterPropertiesSet() throws Exception {
- }
-
- public int compare(Object arg0, Object arg1) {
- return 0;
- }
-
- public boolean isWrapperFor(Class<?> iface) {
- return false;
- }
-
- public <T> T unwrap(Class<T> iface) throws SQLException {
- return null;
- }
- }
-
-
- public void testProxy() throws Exception {
- // publish service
- bundleContext.registerService(new String[] { DataSource.class.getName(), Comparator.class.getName(),
- InitializingBean.class.getName(), Constants.class.getName() }, new Service(), new Hashtable());
-
- ConfigurableApplicationContext ctx = getNestedContext();
- assertNotNull(ctx);
- Object proxy = ctx.getBean("service");
- assertNotNull(proxy);
- assertTrue(proxy instanceof DataSource);
- assertTrue(proxy instanceof Comparator);
- assertTrue(proxy instanceof Constants);
- assertTrue(proxy instanceof InitializingBean);
- ctx.close();
- }
-
- private ConfigurableApplicationContext getNestedContext() throws Exception {
- OsgiBundleXmlApplicationContext ctx = new OsgiBundleXmlApplicationContext(
- new String[] { "org/eclipse/gemini/blueprint/iandt/nonosgicl/context.xml" });
-
- ctx.setBundleContext(bundleContext);
- ctx.refresh();
- return ctx;
- }
-}
+/******************************************************************************
+ * Copyright (c) 2006, 2010 VMware Inc.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * and Apache License v2.0 which accompanies this distribution.
+ * The Eclipse Public License is available at
+ * http://www.eclipse.org/legal/epl-v10.html and the Apache License v2.0
+ * is available at http://www.opensource.org/licenses/apache2.0.php.
+ * You may elect to redistribute this code under either of these licenses.
+ *
+ * Contributors:
+ * VMware Inc.
+ *****************************************************************************/
+
+package org.eclipse.gemini.blueprint.iandt.nonosgicl;
+
+import java.io.PrintWriter;
+import java.sql.Connection;
+import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.util.Comparator;
+import java.util.Hashtable;
+import java.util.logging.Logger;
+
+import javax.sql.DataSource;
+
+import org.eclipse.gemini.blueprint.iandt.BaseIntegrationTest;
+import org.osgi.framework.Constants;
+import org.springframework.beans.factory.InitializingBean;
+import org.springframework.context.ConfigurableApplicationContext;
+import org.eclipse.gemini.blueprint.context.support.OsgiBundleXmlApplicationContext;
+
+/**
+ * Integration test that checks whether the non-osgi classloader for JDK/OSGi
+ * classes are properly considered when creating service proxies.
+ *
+ * @author Costin Leau
+ */
+public class NonOSGiLoaderProxyTest extends BaseIntegrationTest {
+
+ // a service that implements several custom classes
+ private class Service implements DataSource, Comparator, InitializingBean, Constants {
+
+ public Connection getConnection() throws SQLException {
+ return null;
+ }
+
+ public Connection getConnection(String username, String password) throws SQLException {
+ return null;
+ }
+
+ public int getLoginTimeout() throws SQLException {
+ return 0;
+ }
+
+ public PrintWriter getLogWriter() throws SQLException {
+ return null;
+ }
+
+ public void setLoginTimeout(int seconds) throws SQLException {
+ }
+
+ public void setLogWriter(PrintWriter out) throws SQLException {
+ }
+
+ public void afterPropertiesSet() throws Exception {
+ }
+
+ public int compare(Object arg0, Object arg1) {
+ return 0;
+ }
+
+ public boolean isWrapperFor(Class<?> iface) {
+ return false;
+ }
+
+ public <T> T unwrap(Class<T> iface) throws SQLException {
+ return null;
+ }
+
+ public Logger getParentLogger() throws SQLFeatureNotSupportedException {
+ return null;
+ }
+ }
+
+ public void testProxy() throws Exception {
+ // publish service
+ bundleContext.registerService(new String[] { DataSource.class.getName(), Comparator.class.getName(),
+ InitializingBean.class.getName(), Constants.class.getName() }, new Service(), new Hashtable());
+
+ ConfigurableApplicationContext ctx = getNestedContext();
+ assertNotNull(ctx);
+ Object proxy = ctx.getBean("service");
+ assertNotNull(proxy);
+ assertTrue(proxy instanceof DataSource);
+ assertTrue(proxy instanceof Comparator);
+ assertTrue(proxy instanceof Constants);
+ assertTrue(proxy instanceof InitializingBean);
+ ctx.close();
+ }
+
+ private ConfigurableApplicationContext getNestedContext() throws Exception {
+ OsgiBundleXmlApplicationContext ctx = new OsgiBundleXmlApplicationContext(
+ new String[] { "org/eclipse/gemini/blueprint/iandt/nonosgicl/context.xml" });
+
+ ctx.setBundleContext(bundleContext);
+ ctx.refresh();
+ return ctx;
+ }
+} \ No newline at end of file
diff --git a/integration-tests/tests/src/test/resources/log4j.properties b/integration-tests/tests/src/test/resources/log4j.properties
index 0d39fc6..c823438 100644
--- a/integration-tests/tests/src/test/resources/log4j.properties
+++ b/integration-tests/tests/src/test/resources/log4j.properties
@@ -6,7 +6,7 @@ log4j.appender.stdout.threshold=TRACE
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=out.log
-log4j.appender.stdout.threshold=TRACE
+log4j.appender.file.threshold=TRACE
log4j.appender.file.MaxFileSize=100KB
# Keep one backup file
log4j.appender.file.MaxBackupIndex=2
diff --git a/io/pom.xml b/io/pom.xml
index 0bec8f1..eac497b 100644
--- a/io/pom.xml
+++ b/io/pom.xml
@@ -1,37 +1,42 @@
-<?xml version="1.0"?>
-<project>
- <parent>
- <artifactId>gemini-blueprint</artifactId>
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <artifactId>gemini-blueprint</artifactId>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
<groupId>org.eclipse.gemini.blueprint</groupId>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-io</artifactId>
- <packaging>jar</packaging>
- <name>Gemini Blueprint IO</name>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
- <description>
- Eclipse Gemini Blueprint IO abstract classes. Provides Resource, ResourceLoader and ResourcePatternResolver for OSGi environments.
- </description>
-
-
- <properties>
- <javadoc.loc>${basedir}/../docs/src/javadoc</javadoc.loc>
- <spring.osgi.symbolic.name>${symName.prefix}.io</spring.osgi.symbolic.name>
- <bundlor.enabled>true</bundlor.enabled>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-mock</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.core</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
+ <artifactId>gemini-blueprint-io</artifactId>
+ <packaging>jar</packaging>
+ <name>Gemini Blueprint IO</name>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+ <description>
+ Eclipse Gemini Blueprint IO abstract classes. Provides Resource, ResourceLoader and ResourcePatternResolver for
+ OSGi environments.
+ </description>
+
+ <properties>
+ <javadoc.loc>${basedir}/../docs/src/javadoc</javadoc.loc>
+ <spring.osgi.symbolic.name>${symName.prefix}.io</spring.osgi.symbolic.name>
+ <bundlor.enabled>true</bundlor.enabled>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-mock</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
</project>
diff --git a/lib/readme.txt b/lib/readme.txt
index 3b45819..e6d60b2 100644
--- a/lib/readme.txt
+++ b/lib/readme.txt
@@ -1,115 +1,90 @@
-The following libraries are used by the Gemini Blueprint distribution either for building
-or running the framework and its samples.
-
-Most (if not all) libraries are available from SpringSource Enterprise Bundle Repository:
-http://www.springsource.com/repository/app/
-
-Note that each
-of these libraries is subject to the respective license; check the respective project
-distribution/website before using any of them in your own applications.
-
-* aopalliance.jar
-- AOP Alliance 1.0 (http://aopalliance.sourceforge.net)
-- required for building the framework
-
-* asm.jar
-- ObjectWeb ASM bytecode library 2.2.3 (http://asm.objectweb.org)
-- required for building the testing framework
-- required for running the framework's test suite
-
-* catalina.jar
-- Apache Tomcat 5.5.23 (http://tomcat.apache.org)
-- required for building and (optionally) running Spring-DM web support
-
-* cglib-nodep-2.1_3.jar
-- CGLIB 2.1_3 with ObjectWeb ASM 1.5.3 (http://cglib.sourceforge.net)
-- required at runtime when proxying full target classes via Spring AOP
-
-* easymock.jar
-- EasyMock 1.2 (JDK 1.3 version) (http://www.easymock.org)
-- required for building and running the framework's test suite
-
-* framework.jar
-- Knopflerfish 3.x OSGi platform implementation (http://www.knopflerfish.org)
-- required for building and running the framework's test suite
-
-* jcl104-over-slf4j.jar
-- SLF4J 1.5.6 Jakarta Commons Logging wrapper (http://www.slf4j.org)
-- required for building and running the framework's test suite
-
-* jetty-6.1.9.jar
-- Jetty 6.1.9 (http://jetty.mortbay.org)
-- required for building and (optionally) running Spring-DM web support
-
-* jetty-util-6.1.9.jar
-- Jetty Util 6.1.9 (http://jetty.mortbay.org)
-- required for building and (optionally) running Spring-DM web support
-
-* junit-3.8.2.jar
-- JUnit 3.8.2 (http://www.junit.org)
-- required for building and running the framework's test suite
-
-* log4j-1.2.15.jar
-- Log4J 1.2.15 (http://logging.apache.org/log4j)
-- required for building running the framework's test suite
-
-* multithreadedtc.jar
-- MultithreadedTC framework 1.01 (http://code.google.com/p/multithreadedtc)
-- required for running the framework's test suite
-
-* org.apache.felix.main.jar
-- Apache Felix 2.x OSGi platform implementation (http://felix.apache.org)
-- required for building and running the framework's test suite
-
-* org.eclipse.osgi.jar
-- Eclipse Equinox 3.5.x OSGi platform implementation (http://www.eclipse.org/equinox)
-- required for building and running the framework's test suite
-
-* osgi_R4_compendium.jar
-- OSGi Compendium API 1.0 (http://www.osgi.org)
-- required for building and running the framework's test suite
-
-* servlet-api-2.5.jar
-- Servlet API version 2.5 (http://java.sun.com/products/servlet/)
-- required for building and running Spring-DM web support
-- compiled against JDK 1.4
-
-* slf4j-api.jar
-- SLF4J API 1.5.6 (http://www.slf4j.org)
-- required for building and running the framework's test suite
-
-* slf4j-log4j.jar
-- SLF4J 1.5.6 adapter for log4j (http://www.slf4j.org)
-- required for running the framework's test suite
-
-* spring-aop.jar
-- Spring Framework 3.0.x AOP library (http://www.springframework.org)
-- required for building and running the framework's test suite
-
-* spring-beans.jar
-- Spring Framework 3.0.x beans library (http://www.springframework.org)
-- required for building and running the framework's test suite
-
-* spring-context.jar
-- Spring Framework 3.0.x context library (http://www.springframework.org)
-- required for building and running the framework's test suite
-
-* spring-context-support.jar
-- Spring Framework 3.0.x context support library (http://www.springframework.org)
-- required for building and running the framework's test suite
-
-* spring-core.jar
-- Spring Framework 3.0.x core library (http://www.springframework.org)
-- required for building and running the framework's test suite
-
-* spring-test.jar
-- Spring Framework 3.0.x test library (http://www.springframework.org)
-- required for building and running the framework's test suite
-
-* spring-web.jar
-- Spring Framework 3.0.x web library (http://www.springframework.org)
-- required for running the samples and the framework's test suite
-
-* spring-webmvc.jar
-- Spring Framework 3.0.x mvc library (http://www.springframework.org)
-- required for running the samples and the framework's test suite
+The following libraries are used by the Gemini Blueprint distribution either for building
+or running the framework and its samples.
+
+Most (if not all) libraries are available from SpringSource Enterprise Bundle Repository:
+http://www.springsource.com/repository/app/
+
+Note that each
+of these libraries is subject to the respective license; check the respective project
+distribution/website before using any of them in your own applications.
+
+* aopalliance.jar
+- AOP Alliance 1.0 (http://aopalliance.sourceforge.net)
+- required for building the framework
+
+* asm.jar
+- ObjectWeb ASM bytecode library 2.2.3 (http://asm.objectweb.org)
+- required for building the testing framework
+- required for running the framework's test suite
+
+* cglib-2.2.0.jar
+- CGLIB 2.2.0 with ObjectWeb ASM 2.2.3 (http://cglib.sourceforge.net)
+- required at runtime when proxying full target classes via Spring AOP
+
+* easymock.jar
+- EasyMock 1.2 (JDK 1.3 version) (http://www.easymock.org)
+- required for building and running the framework's test suite
+
+* framework.jar
+- Knopflerfish 3.x OSGi platform implementation (http://www.knopflerfish.org)
+- required for building and running the framework's test suite
+
+* jcl-over-slf4j.jar
+- SLF4J 1.6.4 Jakarta Commons Logging wrapper (http://www.slf4j.org)
+- required for building and running the framework's test suite
+
+* junit-4.9.0.jar
+- JUnit 4.9.0 (http://www.junit.org)
+- required for building and running the framework's test suite
+
+* log4j-1.2.16.jar
+- Log4J 1.2.16 (http://logging.apache.org/log4j)
+- required for building running the framework's test suite
+
+* multithreadedtc.jar
+- MultithreadedTC framework 1.01 (http://code.google.com/p/multithreadedtc)
+- required for running the framework's test suite
+
+* org.apache.felix.main.jar
+- Apache Felix 2.x OSGi platform implementation (http://felix.apache.org)
+- required for building and running the framework's test suite
+
+* org.eclipse.osgi.jar
+- Eclipse Equinox 3.5.x OSGi platform implementation (http://www.eclipse.org/equinox)
+- required for building and running the framework's test suite
+
+* osgi_R4_compendium.jar
+- OSGi Compendium API 1.0 (http://www.osgi.org)
+- required for building and running the framework's test suite
+
+* slf4j-api.jar
+- SLF4J API 1.6.4 (http://www.slf4j.org)
+- required for building and running the framework's test suite
+
+* slf4j-log4j.jar
+- SLF4J 1.6.4 adapter for log4j (http://www.slf4j.org)
+- required for running the framework's test suite
+
+* spring-aop.jar
+- Spring Framework 3.0.x AOP library (http://www.springframework.org)
+- required for building and running the framework's test suite
+
+* spring-beans.jar
+- Spring Framework 3.0.x beans library (http://www.springframework.org)
+- required for building and running the framework's test suite
+
+* spring-context.jar
+- Spring Framework 3.0.x context library (http://www.springframework.org)
+- required for building and running the framework's test suite
+
+* spring-context-support.jar
+- Spring Framework 3.0.x context support library (http://www.springframework.org)
+- required for building and running the framework's test suite
+
+* spring-core.jar
+- Spring Framework 3.0.x core library (http://www.springframework.org)
+- required for building and running the framework's test suite
+
+* spring-test.jar
+- Spring Framework 3.0.x test library (http://www.springframework.org)
+- required for building and running the framework's test suite \ No newline at end of file
diff --git a/mock/pom.xml b/mock/pom.xml
index 39e9364..2e2d6f4 100644
--- a/mock/pom.xml
+++ b/mock/pom.xml
@@ -1,24 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project>
- <parent>
- <artifactId>gemini-blueprint</artifactId>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-mock</artifactId>
- <packaging>jar</packaging>
- <name>Gemini Blueprint Mocks</name>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
- <description>
- Mocks for OSGi interfaces.
- </description>
-
- <properties>
- <javadoc.loc>${basedir}/../docs/src/javadoc</javadoc.loc>
- <spring.osgi.symbolic.name>${symName.prefix}.mock</spring.osgi.symbolic.name>
- <bundlor.enabled>true</bundlor.enabled>
- </properties>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <artifactId>gemini-blueprint</artifactId>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <artifactId>gemini-blueprint-mock</artifactId>
+ <packaging>jar</packaging>
+ <name>Gemini Blueprint Mocks</name>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+ <description>Mocks for OSGi interfaces.</description>
+
+ <properties>
+ <javadoc.loc>${basedir}/../docs/src/javadoc</javadoc.loc>
+ <spring.osgi.symbolic.name>${symName.prefix}.mock</spring.osgi.symbolic.name>
+ <bundlor.enabled>true</bundlor.enabled>
+ </properties>
</project> \ No newline at end of file
diff --git a/pom.xml b/pom.xml
index b636ad8..a7d6a79 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,548 +1,528 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint</artifactId>
- <packaging>pom</packaging>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- <name>Gemini Blueprint</name>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
- <description>
- Eclipse Gemini Blueprint project makes it easy to build Java applications that run in an OSGi framework. By using Gemini Blueprint, applications benefit from using a
- better separation of modules, the ability to dynamically add, remove, and update modules in a running system, the ability to deploy multiple versions of a module
- simultaneously (and have clients automatically bind to the appropriate one), and a dynamic service model.
- </description>
-
- <properties>
- <!-- Spring version -->
- <spring.maven.artifact.version>3.0.6.RELEASE</spring.maven.artifact.version>
- <spring.base.version>3.0.0</spring.base.version>
-
- <!--- Gemini Blueprint packages imported version (respect the OSGi naming pattern)-->
- <gemini.blueprint.import.version>1.0.1.BUILD-SNAPSHOT</gemini.blueprint.import.version>
-
- <!--- Gemini Blueprint packages exported version -->
- <gemini.blueprint.export.version>1.0.1.BUILD-SNAPSHOT</gemini.blueprint.export.version>
- <gemini.blueprint.bundle.version>1.0.1.BUILD-SNAPSHOT</gemini.blueprint.bundle.version>
-
- <symName.prefix>org.eclipse.gemini.blueprint</symName.prefix>
- <spring.osgi.symbolic.name>${groupId}.${artifactId}</spring.osgi.symbolic.name>
-
- <spring.osgi.license.loc>..</spring.osgi.license.loc>
-
- <!-- other properties -->
- <slf4j.version>1.5.6</slf4j.version>
-
- <!-- platform versions -->
- <equinox.ver>3.6.2.R36x_v20110210</equinox.ver>
- <kf.ver>3.1.0</kf.ver>
- <felix.ver>2.0.5</felix.ver>
-
- <!-- javadoc configuration -->
- <javadoc.loc>${basedir}/docs/src/javadoc</javadoc.loc>
-
- <clover.ver>2.5.1</clover.ver>
- <clover.argLine></clover.argLine>
- <clover.skip>false</clover.skip>
-
- <findbugs.skip>false</findbugs.skip>
-
- <!-- security options for integration testing -->
- <security.argLine></security.argLine>
- <policy.url>..${file.separator}policy.all</policy.url>
-
- <!-- bundlor settings -->
- <bundlor.enabled>true</bundlor.enabled>
- <!-- common version ranges -->
- <spring.version.range.nq>[${spring.base.version},4.0)</spring.version.range.nq>
- <spring.version.range>"${spring.version.range.nq}"</spring.version.range>
- <gemini.blueprint.version.range.nq>[${gemini.blueprint.import.version},${gemini.blueprint.import.version}]</gemini.blueprint.version.range.nq>
- <gemini.blueprint.version.range>"${gemini.blueprint.version.range.nq}"</gemini.blueprint.version.range>
- <logging.version.range>"[1.0,2.0)"</logging.version.range>
- <!-- jarjar -->
- <jarjar.keep></jarjar.keep>
- <jarjar.dep></jarjar.dep>
- <jarjar.dep.1>${jarjar.dep}</jarjar.dep.1>
- <jarjar.dep.1.exclude>**/*</jarjar.dep.1.exclude>
- </properties>
-
- <!-- ============================================= -->
- <!-- Basic configuration: JIRA, SCM, CI, devs etc. -->
- <!-- ============================================= -->
-
- <issueManagement>
- <system>Bugzilla</system>
- <url>http://bugs.eclipse.org/bugs/buglist.cgi?product=Gemini.Blueprint</url>
- </issueManagement>
-
- <ciManagement>
- <system>bamboo</system>
- <url>http://build.springframework.org/browse/OSGI-TRUNK</url>
- <notifiers>
- <notifier>
- <type>mail</type>
- <configuration>
- <address>adrian.colyer@SpringSource.com</address>
- </configuration>
- </notifier>
- <notifier>
- <type>mail</type>
- <configuration>
- <address>costin.leau@SpringSource.com</address>
- </configuration>
- </notifier>
- </notifiers>
- </ciManagement>
-
- <scm>
- <connection>
- scm:svn:http://dev.eclipse.org/svnroot/rt/org.eclipse.gemini.blueprint/trunk
- </connection>
- <developerConnection>
- scm:svn:https://dev.eclipse.org/svnroot/rt/org.eclipse.gemini.blueprint/trunk
- </developerConnection>
- </scm>
-
- <inceptionYear>2006</inceptionYear>
-
- <developers>
- <developer>
- <id>adrian-colyer</id>
- <name>Adrian Colyer</name>
- <email>adrian.colyer at SpringSource.com</email>
- <organization>SpringSource, division of VMware</organization>
- <organizationUrl>http://www.SpringSource.com</organizationUrl>
- <roles>
- <role>Developer</role>
- </roles>
- <timezone>0</timezone>
- </developer>
- <developer>
- <id>jconstantine</id>
- <name>Hal Hildebrand</name>
- <email>hal.hildebrand at oracle.com</email>
- <organization>Oracle</organization>
- <organizationUrl>http://www.oracle.com</organizationUrl>
- <roles>
- <role>Developer</role>
- </roles>
- <timezone>-8</timezone>
- </developer>
- <developer>
- <id>costin_leau</id>
- <name>Costin Leau</name>
- <email>costin.leau at SpringSource.com</email>
- <organization>SpringSource, division of VMware </organization>
- <organizationUrl>http://www.SpringSource.com</organizationUrl>
- <roles>
- <role>Project Admin</role>
- <role>Developer</role>
- </roles>
- <timezone>+2</timezone>
- </developer>
- <developer>
- <id>andypiper</id>
- <name>Andy Piper</name>
- <email>andy at oracle.com</email>
- <organization>Oracle</organization>
- <organizationUrl>http://www.oracle.com</organizationUrl>
- <roles>
- <role>Developer</role>
- </roles>
- <timezone>0</timezone>
- </developer>
-
- </developers>
-
- <licenses>
- <license>
- <name>Eclipse Public License, Version 1.0</name>
- <url>http://www.eclipse.org/legal/epl-v10.html</url>
- </license>
- <license>
- <name>Apache License, Version 2.0</name>
- <url>http://www.apache.org/licenses/LICENSE-2.0</url>
- </license>
- </licenses>
-
- <!-- =================================================== -->
- <!-- Project Modules, Dependencies, Plugins and Profiles -->
- <!-- =================================================== -->
-
- <!-- modules for Spring-OSGi -->
- <modules>
- <module>mock</module>
- <module>io</module>
- <module>core</module>
- <module>extender</module>
- <module>test-support</module>
- <!--
- <module>web</module>
- <module>web-extender</module>
- <module>bundle-archetype</module>
- <module>annotation</module>
- -->
- <!-- unused at the moment
- <module>release</module>
- -->
- </modules>
-
-
- <dependencyManagement>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <prerequisites>
+ <maven>3.0.3</maven>
+ </prerequisites>
+
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint</artifactId>
+ <!-- Note: When updating the version, ensure it is a valid OSGi version -->
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <packaging>pom</packaging>
+ <name>Gemini Blueprint</name>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+ <description>
+ Eclipse Gemini Blueprint project makes it easy to build Java applications that run in an OSGi framework. By
+ using Gemini Blueprint, applications benefit from using a
+ better separation of modules, the ability to dynamically add, remove, and update modules in a running system,
+ the ability to deploy multiple versions of a module
+ simultaneously (and have clients automatically bind to the appropriate one), and a dynamic service model.
+ </description>
+ <inceptionYear>2006</inceptionYear>
+
+ <properties>
+ <!-- Source file encoding -->
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+
+ <!-- Spring version -->
+ <spring.maven.artifact.version>3.0.7.RELEASE</spring.maven.artifact.version>
+ <spring.base.version>3.0.0</spring.base.version>
+
+ <symName.prefix>org.eclipse.gemini.blueprint</symName.prefix>
+ <spring.osgi.symbolic.name>${project.groupId}.${project.artifactId}</spring.osgi.symbolic.name>
+
+ <spring.osgi.license.loc>..</spring.osgi.license.loc>
+
+ <!-- other properties -->
+ <slf4j.version>1.6.4</slf4j.version>
+ <env.buildPlan></env.buildPlan>
+ <env.buildNumber></env.buildNumber>
+ <env.svnRevision></env.svnRevision>
+
+ <!-- platform versions -->
+ <equinox.ver>3.6.2.R36x_v20110210</equinox.ver>
+ <!--<kf.ver>5.1.6</kf.ver> &lt;!&ndash; Knopflerfish 3.1 &ndash;&gt;-->
+ <kf.ver>5.1.14</kf.ver> <!-- Knopflerfish 3.2 -->
+ <felix.ver>2.0.5</felix.ver>
+
+ <!-- javadoc configuration -->
+ <javadoc.loc>${basedir}/docs/src/javadoc</javadoc.loc>
+
+ <clover.ver>2.5.1</clover.ver>
+ <clover.argLine></clover.argLine>
+ <clover.skip>false</clover.skip>
+
+ <findbugs.skip>false</findbugs.skip>
+
+ <!-- security options for integration testing -->
+ <security.argLine></security.argLine>
+ <policy.url>..${file.separator}policy.all</policy.url>
+
+ <!-- bundlor settings -->
+ <bundlor.enabled>true</bundlor.enabled>
+ <!-- common version ranges -->
+ <spring.version.range.nq>[${spring.base.version},4.0)</spring.version.range.nq>
+ <spring.version.range>"${spring.version.range.nq}"</spring.version.range>
+ <gemini.blueprint.version.range.nq>[${project.version},${project.version}]</gemini.blueprint.version.range.nq>
+ <gemini.blueprint.version.range>"${gemini.blueprint.version.range.nq}"</gemini.blueprint.version.range>
+ <logging.version.range>"[1.0,2.0)"</logging.version.range>
+ <!-- jarjar -->
+ <jarjar.keep></jarjar.keep>
+ <jarjar.dep></jarjar.dep>
+ <jarjar.dep.1>${jarjar.dep}</jarjar.dep.1>
+ <jarjar.dep.1.exclude>**/*</jarjar.dep.1.exclude>
+ </properties>
+
+ <!-- ============================================= -->
+ <!-- Basic configuration: JIRA, SCM, CI, devs etc. -->
+ <!-- ============================================= -->
+
+ <issueManagement>
+ <system>Bugzilla</system>
+ <url>http://bugs.eclipse.org/bugs/buglist.cgi?product=Gemini.Blueprint</url>
+ </issueManagement>
+
+ <ciManagement>
+ <system>bamboo</system>
+ <url>http://build.springframework.org/browse/OSGI-TRUNK</url>
+ <notifiers>
+ <notifier>
+ <type>mail</type>
+ <configuration>
+ <address>adrian.colyer@SpringSource.com</address>
+ </configuration>
+ </notifier>
+ <notifier>
+ <type>mail</type>
+ <configuration>
+ <address>costin.leau@SpringSource.com</address>
+ </configuration>
+ </notifier>
+ </notifiers>
+ </ciManagement>
+
+ <scm>
+ <connection>scm:svn:http://dev.eclipse.org/svnroot/rt/org.eclipse.gemini.blueprint/trunk</connection>
+ <developerConnection>scm:svn:https://dev.eclipse.org/svnroot/rt/org.eclipse.gemini.blueprint/trunk</developerConnection>
+ </scm>
+
+ <developers>
+ <developer>
+ <id>adrian-colyer</id>
+ <name>Adrian Colyer</name>
+ <email>adrian.colyer at SpringSource.com</email>
+ <organization>SpringSource, division of VMware</organization>
+ <organizationUrl>http://www.SpringSource.com</organizationUrl>
+ <roles>
+ <role>Developer</role>
+ </roles>
+ <timezone>0</timezone>
+ </developer>
+ <developer>
+ <id>jconstantine</id>
+ <name>Hal Hildebrand</name>
+ <email>hal.hildebrand at oracle.com</email>
+ <organization>Oracle</organization>
+ <organizationUrl>http://www.oracle.com</organizationUrl>
+ <roles>
+ <role>Developer</role>
+ </roles>
+ <timezone>-8</timezone>
+ </developer>
+ <developer>
+ <id>costin_leau</id>
+ <name>Costin Leau</name>
+ <email>costin.leau at SpringSource.com</email>
+ <organization>SpringSource, division of VMware</organization>
+ <organizationUrl>http://www.SpringSource.com</organizationUrl>
+ <roles>
+ <role>Project Admin</role>
+ <role>Developer</role>
+ </roles>
+ <timezone>+2</timezone>
+ </developer>
+ <developer>
+ <id>andypiper</id>
+ <name>Andy Piper</name>
+ <email>andy at oracle.com</email>
+ <organization>Oracle</organization>
+ <organizationUrl>http://www.oracle.com</organizationUrl>
+ <roles>
+ <role>Developer</role>
+ </roles>
+ <timezone>0</timezone>
+ </developer>
+
+ </developers>
+
+ <licenses>
+ <license>
+ <name>Eclipse Public License, Version 1.0</name>
+ <url>http://www.eclipse.org/legal/epl-v10.html</url>
+ </license>
+ <license>
+ <name>Apache License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0</url>
+ </license>
+ </licenses>
+
+ <!-- =================================================== -->
+ <!-- Project Modules, Dependencies, Plugins and Profiles -->
+ <!-- =================================================== -->
+
+ <!-- modules for Spring-OSGi -->
+ <modules>
+ <module>mock</module>
+ <module>io</module>
+ <module>core</module>
+ <module>extender</module>
+ <module>test-support</module>
+ </modules>
+
+ <dependencyManagement>
+ <dependencies>
+ <!-- Gemini Blueprint -->
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-mock</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-io</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-extender</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-test</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <!-- Spring -->
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-aop</artifactId>
+ <version>${spring.maven.artifact.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>aopalliance</groupId>
+ <artifactId>aopalliance</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-beans</artifactId>
+ <version>${spring.maven.artifact.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>${spring.maven.artifact.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-context</artifactId>
+ <version>${spring.maven.artifact.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-context-support</artifactId>
+ <version>${spring.maven.artifact.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-test</artifactId>
+ <version>${spring.maven.artifact.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.aopalliance</groupId>
+ <artifactId>com.springsource.org.aopalliance</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.compendium</artifactId>
+ <version>4.2.0</version>
+ </dependency>
+
+ </dependencies>
+
+ </dependencyManagement>
+
+ <!-- shared dependencies across modules -->
<dependencies>
- <!-- Spring-DM -->
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-mock</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-io</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-core</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-extender</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-test</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-web</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>spring-osgi-web-extender</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-annotation</artifactId>
- <version>${project.version}</version>
- </dependency>
- <!-- Spring -->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.aop</artifactId>
- <version>${spring.maven.artifact.version}</version>
- <exclusions>
- <exclusion>
- <groupId>org.apache.commons</groupId>
- <artifactId>com.springsource.org.apache.commons.logging</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.beans</artifactId>
- <version>${spring.maven.artifact.version}</version>
- <exclusions>
- <exclusion>
- <groupId>org.apache.commons</groupId>
- <artifactId>com.springsource.org.apache.commons.logging</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.core</artifactId>
- <version>${spring.maven.artifact.version}</version>
- <exclusions>
- <exclusion>
- <groupId>org.apache.commons</groupId>
- <artifactId>com.springsource.org.apache.commons.logging</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.context</artifactId>
- <version>${spring.maven.artifact.version}</version>
- <exclusions>
- <exclusion>
- <groupId>org.apache.commons</groupId>
- <artifactId>com.springsource.org.apache.commons.logging</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
<dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.context.support</artifactId>
- <version>${spring.maven.artifact.version}</version>
- <exclusions>
- <exclusion>
- <groupId>org.apache.commons</groupId>
- <artifactId>com.springsource.org.apache.commons.logging</artifactId>
- </exclusion>
- </exclusions>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.core</artifactId>
+ <version>4.2.0</version>
</dependency>
+
+ <!-- junit -->
<dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.test</artifactId>
- <version>${spring.maven.artifact.version}</version>
- <exclusions>
- <exclusion>
- <groupId>org.apache.commons</groupId>
- <artifactId>com.springsource.org.apache.commons.logging</artifactId>
- </exclusion>
- </exclusions>
+ <groupId>org.junit</groupId>
+ <artifactId>com.springsource.org.junit</artifactId>
+ <version>4.9.0</version>
+ <scope>test</scope>
</dependency>
+
<dependency>
- <groupId>org.aopalliance</groupId>
- <artifactId>com.springsource.org.aopalliance</artifactId>
- <version>1.0.0</version>
+ <groupId>easymock</groupId>
+ <artifactId>easymock</artifactId>
+ <version>1.2_Java1.3</version>
+ <scope>test</scope>
</dependency>
+
+ <!-- commons-logging in slf4j wrapper -->
<dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.web</artifactId>
- <version>${spring.maven.artifact.version}</version>
- <exclusions>
- <exclusion>
- <groupId>org.apache.commons</groupId>
- <artifactId>com.springsource.org.apache.commons.logging</artifactId>
- </exclusion>
- </exclusions>
+ <groupId>org.slf4j</groupId>
+ <artifactId>jcl-over-slf4j</artifactId>
+ <version>${slf4j.version}</version>
+ <scope>provided</scope>
</dependency>
+
<dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.web.servlet</artifactId>
- <version>${spring.maven.artifact.version}</version>
- <exclusions>
- <exclusion>
- <groupId>org.apache.commons</groupId>
- <artifactId>com.springsource.org.apache.commons.logging</artifactId>
- </exclusion>
- </exclusions>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>${slf4j.version}</version>
+ <scope>provided</scope>
</dependency>
+
<dependency>
- <groupId>org.osgi</groupId>
- <artifactId>osgi_R4_compendium</artifactId>
- <version>1.0</version>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ <version>${slf4j.version}</version>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
+
<dependency>
- <groupId>org.junit</groupId>
- <artifactId>com.springsource.junit</artifactId>
- <version>3.8.2</version>
- </dependency>
- </dependencies>
-
- </dependencyManagement>
-
- <!-- shared dependencies across modules -->
- <dependencies>
- <!-- junit -->
- <dependency>
- <groupId>org.junit</groupId>
- <artifactId>com.springsource.junit</artifactId>
- <version>3.8.2</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>easymock</groupId>
- <artifactId>easymock</artifactId>
- <version>1.2_Java1.3</version>
- <scope>test</scope>
- </dependency>
-
- <!-- commons-logging in slf4j wrapper -->
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>com.springsource.slf4j.org.apache.commons.logging</artifactId>
- <version>${slf4j.version}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>com.springsource.slf4j.api</artifactId>
- <version>${slf4j.version}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>com.springsource.slf4j.log4j</artifactId>
- <version>${slf4j.version}</version>
- <scope>provided</scope>
- <exclusions>
- <exclusion>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.log4j</groupId>
- <artifactId>com.springsource.org.apache.log4j</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.apache.log4j</groupId>
- <artifactId>com.springsource.org.apache.log4j</artifactId>
- <version>1.2.15</version>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
-
- <build>
- <extensions>
- <extension>
- <groupId>org.springframework.build.aws</groupId>
- <artifactId> org.springframework.build.aws.maven</artifactId>
- <version>2.0.0.RELEASE</version>
- </extension>
- </extensions>
-
- <resources>
- <resource>
- <filtering>true</filtering>
- <directory>src/main/resources</directory>
- </resource>
- <resource>
- <targetPath>META-INF</targetPath>
- <filtering>false</filtering>
- <directory>${spring.osgi.license.loc}</directory>
- <includes>
- <include>license.txt</include>
- <include>notice.txt</include>
- </includes>
- </resource>
- </resources>
-
- <pluginManagement>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-plugin-plugin</artifactId>
- <version>2.3</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-deploy-plugin</artifactId>
- <version>2.4</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <version>2.4.3</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <version>2.2</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-war-plugin</artifactId>
- <version>2.0.2</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <version>2.4</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jxr-plugin</artifactId>
- <version>2.1</version>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>jdepend-maven-plugin</artifactId>
- <version>2.0-beta1</version>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>findbugs-maven-plugin</artifactId>
- <version>2.1</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-antrun-plugin</artifactId>
- <version>1.3</version>
- </plugin>
- <plugin>
- <groupId>com.atlassian.maven.plugins</groupId>
- <artifactId>maven-clover2-plugin</artifactId>
- <version>${clover.ver}</version>
- </plugin>
- <plugin>
- <groupId>com.springsource.bundlor</groupId>
- <artifactId>com.springsource.bundlor.maven</artifactId>
- <version>1.0.0.M6</version>
- </plugin>
- </plugins>
- </pluginManagement>
-
- <plugins>
- <plugin>
- <artifactId>maven-antrun-plugin</artifactId>
- <executions>
- <execution>
- <id>jarjar</id>
- <phase>package</phase>
- <goals><goal>run</goal></goals>
- <configuration>
- <tasks if="jarjar.run">
- <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask"
- classpathref="maven.plugin.classpath"/>
- <property name="dep.jar" value="${jarjar.dep}"/>
- <property name="dep.1.jar" value="${jarjar.dep.1}"/>
- <jarjar jarfile="${project.build.directory}${file.separator}${project.build.finalName}.jar">
- <fileset dir="${project.build.outputDirectory}"/>
- <zipfileset src="${dep.jar}" includes="**/*.class" excludes="META-INF/**"/>
- <zipfileset src="${dep.1.jar}" includes="${jarjar.dep.1.include}" excludes="META-INF/**,${jarjar.dep.1.exclude}"/>
- <keep pattern="${jarjar.keep}"/>
- </jarjar>
- </tasks>
- </configuration>
- </execution>
- </executions>
- <dependencies>
- <dependency>
- <groupId>com.tonicsystems</groupId>
- <artifactId>jarjar</artifactId>
- <version>1.0</version>
- </dependency>
- </dependencies>
- </plugin>
-
- <plugin>
- <groupId>com.springsource.bundlor</groupId>
- <artifactId>com.springsource.bundlor.maven</artifactId>
- <executions>
- <execution>
- <id>bundlor</id>
- <goals>
- <goal>transform</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
+ <version>1.2.16</version>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <extensions>
+ <extension>
+ <groupId>org.springframework.build.aws</groupId>
+ <artifactId>org.springframework.build.aws.maven</artifactId>
+ <version>2.0.0.RELEASE</version>
+ </extension>
+ </extensions>
+
+ <resources>
+ <resource>
+ <filtering>true</filtering>
+ <directory>src/main/resources</directory>
+ </resource>
+ <resource>
+ <targetPath>META-INF</targetPath>
+ <filtering>false</filtering>
+ <directory>${spring.osgi.license.loc}</directory>
+ <includes>
+ <include>license.txt</include>
+ <include>notice.txt</include>
+ </includes>
+ </resource>
+ </resources>
+
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.3.2</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-plugin-plugin</artifactId>
+ <version>2.3</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <version>2.4</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.4.3</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <version>2.2</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-war-plugin</artifactId>
+ <version>2.0.2</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.4</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jxr-plugin</artifactId>
+ <version>2.1</version>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jdepend-maven-plugin</artifactId>
+ <version>2.0-beta1</version>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>findbugs-maven-plugin</artifactId>
+ <version>2.1</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.3</version>
+ </plugin>
+ <plugin>
+ <groupId>com.atlassian.maven.plugins</groupId>
+ <artifactId>maven-clover2-plugin</artifactId>
+ <version>${clover.ver}</version>
+ </plugin>
+ <plugin>
+ <groupId>com.springsource.bundlor</groupId>
+ <artifactId>com.springsource.bundlor.maven</artifactId>
+ <!--<version>1.0.0.RELEASE</version>-->
+ <version>1.0.0.M6</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>jarjar</id>
+ <phase>package</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <tasks if="jarjar.run">
+ <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask"
+ classpathref="maven.plugin.classpath"/>
+ <property name="dep.jar" value="${jarjar.dep}"/>
+ <property name="dep.1.jar" value="${jarjar.dep.1}"/>
+ <jarjar jarfile="${project.build.directory}${file.separator}${project.build.finalName}.jar">
+ <fileset dir="${project.build.outputDirectory}"/>
+ <zipfileset src="${dep.jar}" includes="**/*.class" excludes="META-INF/**"/>
+ <zipfileset src="${dep.1.jar}" includes="${jarjar.dep.1.include}"
+ excludes="META-INF/**,${jarjar.dep.1.exclude}"/>
+ <keep pattern="${jarjar.keep}"/>
+ </jarjar>
+ </tasks>
+ </configuration>
+ </execution>
+ </executions>
+ <dependencies>
+ <dependency>
+ <groupId>com.google.jarjar</groupId>
+ <artifactId>com.springsource.com.tonicsystems.jarjar</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+
+ <plugin>
+ <groupId>com.springsource.bundlor</groupId>
+ <artifactId>com.springsource.bundlor.maven</artifactId>
+ <executions>
+ <execution>
+ <id>bundlor</id>
+ <goals>
+ <goal>transform</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
<manifestTemplatePath>${basedir}/template.mf</manifestTemplatePath>
- <manifestHeaders><![CDATA[Bundle-Name: ${artifactId}
-Bundle-Version: ${gemini.blueprint.bundle.version}
+ <manifestHeaders><![CDATA[Bundle-Name: ${project.artifactId}
+Bundle-Version: ${project.version}
Bundle-SymbolicName: ${spring.osgi.symbolic.name}
Bundle-Vendor: Eclipse Foundation
Bundle-DocURL: http://www.eclipse.org/gemini/blueprint/
-Bundle-Description: ${pom.description}
+Bundle-Description: ${project.description}
Bundle-License: http://www.opensource.org/licenses/eclipse-1.0.php, http://www.opensource.org/licenses/apache2.0.php
Bundle-ManifestVersion: 2
Implementation-Title: Eclipse Gemini Blueprint
-Implementation-Version: ${pom.version}
+Implementation-Version: ${project.version}
Implementation-Vendor: Eclipse Foundation
Implementation-Vendor-Id: org.eclipse.gemini.blueprint
-Gemini-Blueprint-Version: ${pom.version}
+Gemini-Blueprint-Version: ${project.version}
Spring-Version: ${spring.maven.artifact.version}
Build-Jdk: ${java.version}
Build-Plan: ${env.buildPlan}
@@ -550,7 +530,7 @@ Build-Number: ${env.buildNumber}
SVN-Revision: ${env.svnRevision}
Unversioned-Imports: *
Excluded-Imports: com_cenqua_clover*
-Ignored-Existing-Headers:
+Ignored-Existing-Headers:
Ant-Version,
Archiver-Version,
Unversioned-Imports,
@@ -561,348 +541,401 @@ Ignored-Existing-Headers:
Bnd-LastModified,
Import-Package,
Export-Package
-]]></manifestHeaders>
- <packagings>
- <packaging>jar</packaging>
- </packagings>
- <enabled>${bundlor.enabled}</enabled>
- <failOnWarnings>false</failOnWarnings>
- <removeNullHeaders>true</removeNullHeaders>
- </configuration>
- </plugin>
-
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <systemProperties>
- <property>
- <name>org.springframework.osgi.test.framework</name>
- <value>${osgi.test.platform}</value>
- </property>
- </systemProperties>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.5</source>
- <target>1.5</target>
- <debug>true</debug>
- <fork>true</fork>
- </configuration>
- </plugin>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <configuration>
- <descriptors>
- <descriptor>release/src/assembly/bin.xml</descriptor>
- </descriptors>
- </configuration>
- </plugin>
-
- <!-- clover plug-in -->
- <plugin>
- <groupId>com.atlassian.maven.plugins</groupId>
- <artifactId>maven-clover2-plugin</artifactId>
- <configuration>
- <licenseLocation>${env.clover.licenseLocation}</licenseLocation>
- <generatePdf>false</generatePdf>
- <generateXml>true</generateXml>
- <generateHtml>true</generateHtml>
- <generateHistorical>false</generateHistorical>
- <!-- saving history is problematic since each module would override
- the previous unless a different folder is used for the root
- <historyDir>${basedir}/clover/history</historyDir>
- -->
- <jdk>1.5</jdk>
- <includesTestSourceRoots>false</includesTestSourceRoots>
- <skip>${clover.skip}</skip>
-
- <!-- exclusions -->
- <excludes>
- <!-- integration tests -->
- <exclude>org/eclipse/gemini/blueprint/iandt/**</exclude>
- <exclude>org/eclipse/gemini/blueprint/test/parsing/**</exclude>
- <!-- addressed in 1.2 -->
- <exclude>org/eclipse/gemini/blueprint/compendium/internal/**</exclude>
- </excludes>
- </configuration>
- </plugin>
-
- </plugins>
- </build>
-
- <!-- profiles for equinox, knoplerfish, and felix -->
- <!-- to use these profiles invoke maven with -Pprofile-name, e.g. -->
- <!-- mvn -Pfelix test -->
- <profiles>
- <profile>
- <id>equinox</id>
- <dependencies>
- <dependency>
- <groupId>org.eclipse.osgi</groupId>
- <artifactId>org.eclipse.osgi</artifactId>
- <version>${equinox.ver}</version>
- <type>jar</type>
- <scope>provided</scope>
- </dependency>
- </dependencies>
- <properties>
- <osgi.test.platform>org.eclipse.gemini.blueprint.test.platform.EquinoxPlatform</osgi.test.platform>
- <log4j.ignoreTCL>true</log4j.ignoreTCL>
- </properties>
- </profile>
-
- <profile>
- <id>knopflerfish</id>
- <dependencies>
- <dependency>
- <groupId>knopflerfish</groupId>
- <artifactId>framework</artifactId>
- <version>${kf.ver}</version>
- <type>jar</type>
- <scope>provided</scope>
- </dependency>
- </dependencies>
- <properties>
- <osgi.test.platform>org.eclipse.gemini.blueprint.test.platform.KnopflerfishPlatform</osgi.test.platform>
- <log4j.ignoreTCL>true</log4j.ignoreTCL>
- <org.knopflerfish.osgi.setcontextclassloader>true</org.knopflerfish.osgi.setcontextclassloader>
- </properties>
- </profile>
-
- <profile>
- <id>felix</id>
- <dependencies>
- <dependency>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.main</artifactId>
- <version>${felix.ver}</version>
- <type>jar</type>
- <scope>provided</scope>
- <!-- required to prevent felix to pull in stuff -->
- <exclusions>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.framework</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.shell</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.shell.tui</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.bundlerepository</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <!-- include the OSGi jar to allow PermissionAdmin API to be used -->
- <dependency>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.osgi.core</artifactId>
- <version>1.0.1</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
- <properties>
- <osgi.test.platform>org.eclipse.gemini.blueprint.test.platform.FelixPlatform</osgi.test.platform>
- <log4j.ignoreTCL>true</log4j.ignoreTCL>
- </properties>
- </profile>
-
- <!-- integration testing profile -->
- <profile>
- <id>it</id>
- <activation>
- <property>
- <name>env-test</name>
- </property>
- </activation>
- <modules>
- <module>integration-tests</module>
- </modules>
- </profile>
-
- <!-- samples profile -->
- <profile>
- <id>samples</id>
- <activation>
- <property>
- <name>env-samples</name>
- </property>
- </activation>
- <modules>
- <module>samples</module>
- </modules>
- </profile>
-
- <!-- Java 2 security enabled profile -->
- <profile>
- <id>security</id>
- <properties>
- <security.argLine>-Djava.security.manager -Djava.security.policy=${policy.url}</security.argLine>
- </properties>
- </profile>
-
- <!-- clover profile -->
- <profile>
- <id>clover</id>
- <properties>
- <clover.enabled>true</clover.enabled>
- <spring.decorate.osgi.import>!com_cenqua_clover*,${spring.osgi.import}</spring.decorate.osgi.import>
- <clover.argLine>-Xbootclasspath/a:"${settings.localRepository}${file.separator}com${file.separator}cenqua${file.separator}clover${file.separator}clover${file.separator}${clover.ver}${file.separator}clover-${clover.ver}.jar -Dansi.color"
- </clover.argLine>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>com.cenqua.clover</groupId>
- <artifactId>clover</artifactId>
- <version>${clover.ver}</version>
- <type>jar</type>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- </profile>
- </profiles>
-
-
- <!-- ======================================= -->
- <!-- Website and reporting -->
- <!-- ======================================= -->
-
- <reporting>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jxr-plugin</artifactId>
- <configuration>
- <aggregate>true</aggregate>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-report-plugin</artifactId>
- <configuration>
- <aggregate>true</aggregate>
- </configuration>
- </plugin>
-
- <!-- =============== -->
- <!-- Javadocs -->
- <!-- =============== -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <configuration>
- <aggregate>true</aggregate>
- <stylesheetfile>${javadoc.loc}/javadoc.css</stylesheetfile>
- <overview>${javadoc.loc}/overview.html</overview>
- <groups>
- <group>
- <title>OSGi Blueprint Service</title>
- <packages>org.osgi.service.blueprint*</packages>
- </group>
- <group>
- <title>Eclipse Gemini Blueprint Core</title>
- <packages>org.eclipse.gemini.blueprint*</packages>
- </group>
- <group>
- <title>Eclipse Gemini Blueprint Extender</title>
- <packages>org.eclipse.gemini.blueprint.extender*</packages>
- </group>
- <group>
- <title>Eclipse Gemini Blueprint IO</title>
- <packages>org.eclipse.gemini.blueprint.io*</packages>
- </group>
- <group>
- <title>Eclipse Gemini Blueprint Integration Testing Framework</title>
- <packages>org.eclipse.gemini.blueprint.test*</packages>
- </group>
- <group>
- <title>Eclipse Gemini Blueprint Mock</title>
- <packages>org.eclipse.gemini.blueprint.mock*</packages>
- </group>
- <group>
- <title>Samples</title>
- <packages>org.eclipse.gemini.blueprint.sample*</packages>
- </group>
- </groups>
- <excludePackageNames>*internal:*samples:org.eclipse.gemini.blueprint.config:org.eclipse.gemini.blueprint.compendium.config:org.eclipse.gemini.blueprint.blueprint.config:org.eclipse.gemini.blueprint.blueprint.compendium.cm.config:org.eclipse.gemini.blueprint.iandt*</excludePackageNames>
-
- <breakiterator>true</breakiterator>
- <quiet>true</quiet>
- <verbose>false</verbose>
- <show>protected</show>
- <source>1.5</source>
- <links>
- <link>http://download.oracle.com/javase/1.5.0/docs/api/</link>
- <link>
- http://static.springsource.org/spring/docs/3.0.x/javadoc-api/
- </link>
- <link>http://www2.osgi.org/javadoc/r4/</link>
- <link>http://asm.objectweb.org/asm223/javadoc/user</link>
- <link>http://cglib.sourceforge.net/apidocs</link>
- <link>http://logging.apache.org/log4j/docs/api/</link>
- <link>http://jakarta.apache.org/commons/logging/apidocs/</link>
- <link>http://junit.org/junit/javadoc/3.8.1/</link>
- <link>http://aopalliance.sourceforge.net/doc/</link>
- </links>
- </configuration>
- </plugin>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-project-info-reports-plugin</artifactId>
- </plugin>
-
- <!-- ============== -->
- <!-- FindBugs -->
- <!-- ============== -->
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>findbugs-maven-plugin</artifactId>
- <configuration>
- <!--
- <xmlOutput>true</xmlOutput>
- <xmlOutputDirectory>target</xmlOutputDirectory>
- -->
- <threshold>Normal</threshold>
- <effort>Default</effort>
- <!--
- <debug>true</debug>
- <relaxed>true</relaxed>
- -->
- <skip>${findbugs.skip}</skip>
- </configuration>
- </plugin>
-
- <!-- =========== -->
- <!-- PMD -->
- <!-- =========== -->
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-pmd-plugin</artifactId>
- </plugin>
-
- <!-- ============== -->
- <!-- jDepend -->
- <!-- ============== -->
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>jdepend-maven-plugin</artifactId>
- </plugin>
- </plugins>
- </reporting>
+]]></manifestHeaders>
+
+ <packagings>
+ <packaging>jar</packaging>
+ </packagings>
+
+ <enabled>${bundlor.enabled}</enabled>
+ <failOnWarnings>false</failOnWarnings>
+ <removeNullHeaders>true</removeNullHeaders>
+ </configuration>
+ </plugin>
+
+ <!--<plugin>-->
+ <!--<groupId>com.springsource.bundlor</groupId>-->
+ <!--<artifactId>com.springsource.bundlor.maven</artifactId>-->
+ <!--<executions>-->
+ <!--<execution>-->
+ <!--<id>bundlor</id>-->
+ <!--<goals>-->
+ <!--<goal>bundlor</goal>-->
+ <!--</goals>-->
+ <!--</execution>-->
+ <!--</executions>-->
+ <!--<configuration>-->
+ <!--<manifestTemplate><![CDATA[Bundle-Name: ${project.artifactId}-->
+<!--Bundle-Version: ${project.version}-->
+<!--Bundle-SymbolicName: ${spring.osgi.symbolic.name}-->
+<!--Bundle-Vendor: Eclipse Foundation-->
+<!--Bundle-DocURL: http://www.eclipse.org/gemini/blueprint/-->
+<!--Bundle-Description: ${project.description}-->
+<!--Bundle-License: http://www.opensource.org/licenses/eclipse-1.0.php, http://www.opensource.org/licenses/apache2.0.php-->
+<!--Bundle-ManifestVersion: 2-->
+<!--Implementation-Title: Eclipse Gemini Blueprint-->
+<!--Implementation-Version: ${project.version}-->
+<!--Implementation-Vendor: Eclipse Foundation-->
+<!--Implementation-Vendor-Id: org.eclipse.gemini.blueprint-->
+<!--Gemini-Blueprint-Version: ${project.version}-->
+<!--Spring-Version: ${spring.maven.artifact.version}-->
+<!--Build-Jdk: ${java.version}-->
+<!--Build-Plan: ${env.buildPlan}-->
+<!--Build-Number: ${env.buildNumber}-->
+<!--SVN-Revision: ${env.svnRevision}-->
+<!--Unversioned-Imports: *-->
+<!--Excluded-Imports: com_cenqua_clover*-->
+<!--Ignored-Existing-Headers:-->
+ <!--Ant-Version,-->
+ <!--Archiver-Version,-->
+ <!--Unversioned-Imports,-->
+ <!--Tool,-->
+ <!--Ignore-Package,-->
+ <!--Private-Package,-->
+ <!--Created-By,-->
+ <!--Bnd-LastModified,-->
+ <!--Import-Package,-->
+ <!--Export-Package-->
+<!--]]></manifestTemplate>-->
+
+ <!--&lt;!&ndash; Apparently this (<packagings/>) is valid config for the bundlor plugin, even through the plugin-->
+ <!--descriptor disagrees &ndash;&gt;-->
+ <!--<packagings>-->
+ <!--<packaging>jar</packaging>-->
+ <!--</packagings>-->
+
+ <!--<enabled>${bundlor.enabled}</enabled>-->
+ <!--<failOnWarnings>false</failOnWarnings>-->
+ <!--<removeNullHeaders>true</removeNullHeaders>-->
+ <!--</configuration>-->
+ <!--</plugin>-->
+
+
+ <!--<plugin>-->
+ <!--<groupId>org.apache.maven.plugins</groupId>-->
+ <!--<artifactId>maven-surefire-plugin</artifactId>-->
+ <!--<configuration>-->
+ <!--<systemProperties>-->
+ <!--<property>-->
+ <!--<name>org.eclipse.gemini.blueprint.test.framework</name>-->
+ <!--<value>${osgi.test.platform}</value>-->
+ <!--</property>-->
+ <!--</systemProperties>-->
+ <!--</configuration>-->
+ <!--</plugin>-->
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ <debug>true</debug>
+ <fork>true</fork>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <descriptors>
+ <descriptor>release/src/assembly/bin.xml</descriptor>
+ </descriptors>
+ </configuration>
+ </plugin>
+
+ <!-- clover plug-in -->
+ <plugin>
+ <groupId>com.atlassian.maven.plugins</groupId>
+ <artifactId>maven-clover2-plugin</artifactId>
+ <configuration>
+ <licenseLocation>${env.clover.licenseLocation}</licenseLocation>
+ <generatePdf>false</generatePdf>
+ <generateXml>true</generateXml>
+ <generateHtml>true</generateHtml>
+ <generateHistorical>false</generateHistorical>
+ <!-- saving history is problematic since each module would override
+ the previous unless a different folder is used for the root
+ <historyDir>${basedir}/clover/history</historyDir>
+ -->
+ <jdk>1.5</jdk>
+ <includesTestSourceRoots>false</includesTestSourceRoots>
+ <skip>${clover.skip}</skip>
+
+ <!-- exclusions -->
+ <excludes>
+ <!-- integration tests -->
+ <exclude>org/eclipse/gemini/blueprint/iandt/**</exclude>
+ <exclude>org/eclipse/gemini/blueprint/test/parsing/**</exclude>
+ <!-- addressed in 1.2 -->
+ <exclude>org/eclipse/gemini/blueprint/compendium/internal/**</exclude>
+ </excludes>
+ </configuration>
+ </plugin>
+
+ </plugins>
+ </build>
+
+ <!-- profiles for equinox, knoplerfish, and felix -->
+ <!-- to use these profiles invoke maven with -Pprofile-name, e.g. -->
+ <!-- mvn -Pfelix test -->
+ <profiles>
+ <profile>
+ <id>equinox</id>
+ <dependencies>
+ <dependency>
+ <groupId>org.eclipse.osgi</groupId>
+ <artifactId>org.eclipse.osgi</artifactId>
+ <version>${equinox.ver}</version>
+ <type>jar</type>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ <properties>
+ <osgi.test.platform>org.eclipse.gemini.blueprint.test.platform.EquinoxPlatform</osgi.test.platform>
+ <log4j.ignoreTCL>true</log4j.ignoreTCL>
+ </properties>
+ </profile>
+
+ <profile>
+ <id>knopflerfish</id>
+ <dependencies>
+ <dependency>
+ <groupId>org.knopflerfish</groupId>
+ <artifactId>framework</artifactId>
+ <version>${kf.ver}</version>
+ <type>jar</type>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ <properties>
+ <osgi.test.platform>org.eclipse.gemini.blueprint.test.platform.KnopflerfishPlatform</osgi.test.platform>
+ <log4j.ignoreTCL>true</log4j.ignoreTCL>
+ <org.knopflerfish.osgi.setcontextclassloader>true</org.knopflerfish.osgi.setcontextclassloader>
+ </properties>
+ </profile>
+
+ <profile>
+ <id>felix</id>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.main</artifactId>
+ <version>${felix.ver}</version>
+ <type>jar</type>
+ <scope>provided</scope>
+ <!-- required to prevent felix to pull in stuff -->
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.framework</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.shell</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.shell.tui</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.bundlerepository</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <!-- include the OSGi jar to allow PermissionAdmin API to be used -->
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.core</artifactId>
+ <version>1.0.1</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <properties>
+ <osgi.test.platform>org.eclipse.gemini.blueprint.test.platform.FelixPlatform</osgi.test.platform>
+ <log4j.ignoreTCL>true</log4j.ignoreTCL>
+ </properties>
+ </profile>
+
+ <!-- integration testing profile -->
+ <profile>
+ <id>it</id>
+ <activation>
+ <property>
+ <name>env-test</name>
+ </property>
+ </activation>
+ <modules>
+ <module>integration-tests</module>
+ </modules>
+ </profile>
+
+ <!-- Java 2 security enabled profile -->
+ <profile>
+ <id>security</id>
+ <properties>
+ <security.argLine>-Djava.security.manager -Djava.security.policy=${policy.url}</security.argLine>
+ </properties>
+ </profile>
+
+ <!-- clover profile -->
+ <profile>
+ <id>clover</id>
+ <properties>
+ <clover.enabled>true</clover.enabled>
+ <spring.decorate.osgi.import>!com_cenqua_clover*,${spring.osgi.import}</spring.decorate.osgi.import>
+ <clover.argLine>
+ -Xbootclasspath/a:"${settings.localRepository}${file.separator}com${file.separator}cenqua${file.separator}clover${file.separator}clover${file.separator}${clover.ver}${file.separator}clover-${clover.ver}.jar
+ -Dansi.color"
+ </clover.argLine>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>com.cenqua.clover</groupId>
+ <artifactId>clover</artifactId>
+ <version>${clover.ver}</version>
+ <type>jar</type>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+
+ </profile>
+ </profiles>
+
+
+ <!-- ======================================= -->
+ <!-- Website and reporting -->
+ <!-- ======================================= -->
+
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jxr-plugin</artifactId>
+ <version>2.1</version>
+ <configuration>
+ <aggregate>true</aggregate>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-report-plugin</artifactId>
+ <version>2.12</version>
+ <configuration>
+ <aggregate>true</aggregate>
+ </configuration>
+ </plugin>
+
+ <!-- =============== -->
+ <!-- Javadocs -->
+ <!-- =============== -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.4</version>
+ <configuration>
+ <aggregate>true</aggregate>
+ <stylesheetfile>${javadoc.loc}/javadoc.css</stylesheetfile>
+ <overview>${javadoc.loc}/overview.html</overview>
+ <groups>
+ <group>
+ <title>OSGi Blueprint Service</title>
+ <packages>org.osgi.service.blueprint*</packages>
+ </group>
+ <group>
+ <title>Eclipse Gemini Blueprint Core</title>
+ <packages>org.eclipse.gemini.blueprint*</packages>
+ </group>
+ <group>
+ <title>Eclipse Gemini Blueprint Extender</title>
+ <packages>org.eclipse.gemini.blueprint.extender*</packages>
+ </group>
+ <group>
+ <title>Eclipse Gemini Blueprint IO</title>
+ <packages>org.eclipse.gemini.blueprint.io*</packages>
+ </group>
+ <group>
+ <title>Eclipse Gemini Blueprint Integration Testing Framework</title>
+ <packages>org.eclipse.gemini.blueprint.test*</packages>
+ </group>
+ <group>
+ <title>Eclipse Gemini Blueprint Mock</title>
+ <packages>org.eclipse.gemini.blueprint.mock*</packages>
+ </group>
+ </groups>
+ <excludePackageNames>
+ *internal:org.eclipse.gemini.blueprint.config:org.eclipse.gemini.blueprint.compendium.config:org.eclipse.gemini.blueprint.blueprint.config:org.eclipse.gemini.blueprint.blueprint.compendium.cm.config:org.eclipse.gemini.blueprint.iandt*
+ </excludePackageNames>
+
+ <breakiterator>true</breakiterator>
+ <quiet>true</quiet>
+ <verbose>false</verbose>
+ <show>protected</show>
+ <source>1.5</source>
+ <links>
+ <link>http://download.oracle.com/javase/1.5.0/docs/api/</link>
+ <link>http://static.springsource.org/spring/docs/3.0.x/javadoc-api/</link>
+ <link>http://www2.osgi.org/javadoc/r4/</link>
+ <link>http://asm.objectweb.org/asm223/javadoc/user</link>
+ <link>http://cglib.sourceforge.net/apidocs</link>
+ <link>http://logging.apache.org/log4j/docs/api/</link>
+ <link>http://jakarta.apache.org/commons/logging/apidocs/</link>
+ <link>http://junit.org/junit/javadoc/4.9.0/</link>
+ <link>http://aopalliance.sourceforge.net/doc/</link>
+ </links>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-project-info-reports-plugin</artifactId>
+ <version>2.4</version>
+ </plugin>
+
+ <!-- ============== -->
+ <!-- FindBugs -->
+ <!-- ============== -->
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>findbugs-maven-plugin</artifactId>
+ <version>2.1</version>
+ <configuration>
+ <!--
+ <xmlOutput>true</xmlOutput>
+ <xmlOutputDirectory>target</xmlOutputDirectory>
+ -->
+ <threshold>Normal</threshold>
+ <effort>Default</effort>
+ <!--
+ <debug>true</debug>
+ <relaxed>true</relaxed>
+ -->
+ <skip>${findbugs.skip}</skip>
+ </configuration>
+ </plugin>
+
+ <!-- =========== -->
+ <!-- PMD -->
+ <!-- =========== -->
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-pmd-plugin</artifactId>
+ <version>2.7</version>
+ </plugin>
+
+ <!-- ============== -->
+ <!-- jDepend -->
+ <!-- ============== -->
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jdepend-maven-plugin</artifactId>
+ <version>2.0-beta-2</version>
+ </plugin>
+ </plugins>
+ </reporting>
<distributionManagement>
<downloadUrl>http://www.springframework.org/osgi/</downloadUrl>
@@ -915,7 +948,7 @@ Ignored-Existing-Headers:
<id>zodiac-milestone</id>
<name>Zodiac Milestone Repository</name>
<url>s3://zodiac.springsource.com/maven/bundles/milestone</url>
- </repository>
+ </repository>
<snapshotRepository>
<id>zodiac-snapshot</id>
<name>Zodiac Snapshot Repository</name>
@@ -924,119 +957,115 @@ Ignored-Existing-Headers:
</distributionManagement>
- <!-- ================================================ -->
- <!-- Repository Configuration -->
- <!-- ================================================ -->
-
- <pluginRepositories>
- <pluginRepository>
- <id>maven-repo</id>
- <name>maven repo</name>
- <url>http://repo1.maven.org/maven2/</url>
- </pluginRepository>
- <!-- clover repository -->
- <pluginRepository>
- <id>atlassian-m2-repository</id>
- <name>Atlassian Maven 2.x Repository</name>
- <url>http://repository.atlassian.com/maven2</url>
- </pluginRepository>
-
- <pluginRepository>
- <id>com.springsource.repository.bundles.release</id>
- <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Releases</name>
- <url>http://repository.springsource.com/maven/bundles/release/</url>
- </pluginRepository>
-
- <pluginRepository>
- <id>com.springsource.repository.bundles.milestone</id>
- <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Milestones</name>
- <url>http://repository.springsource.com/maven/bundles/milestone</url>
- </pluginRepository>
-
-
- <pluginRepository>
- <id>com.springsource.repository.bundles.snapshot</id>
- <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Snapshots</name>
- <url>http://repository.springsource.com/maven/bundles/snapshot</url>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- </pluginRepository>
-
- </pluginRepositories>
-
- <repositories>
- <!--
- <repository>
- <id>eclipse-repository</id>
- <name>Eclipse Repository</name>
- <url>http://repo1.maven.org/eclipse/</url>
- </repository>
- -->
- <repository>
- <id>com.springsource.repository.bundles.release</id>
- <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Releases</name>
- <url>http://repository.springsource.com/maven/bundles/release/</url>
- </repository>
- <repository>
- <id>com.springsource.repository.bundles.external</id>
- <name>SpringSource Enterprise Bundle Repository - External Bundle Release</name>
- <url>http://repository.springsource.com/maven/bundles/external</url>
- </repository>
- <repository>
- <id>com.springsource.repository.bundles.milestone</id>
- <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Milestones</name>
- <url>http://repository.springsource.com/maven/bundles/milestone</url>
- </repository>
- <repository>
- <id>com.springsource.repository.bundles.snapshot</id>
- <name>SpringSource Enterprise Bundle Repository - Snapshots</name>
- <url>http://repository.springsource.com/maven/bundles/snapshot</url>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- </repository>
-
- <repository>
- <id>spring-release</id>
- <name>Spring Portfolio Release Repository</name>
- <url>http://maven.springframework.org/release</url>
- </repository>
- <repository>
- <id>spring-external</id>
- <name>Spring Portfolio External Repository</name>
- <url>http://maven.springframework.org/external</url>
- </repository>
- <repository>
- <id>spring-milestone</id>
- <name>Spring Portfolio Milestone Repository</name>
- <url>http://maven.springframework.org/milestone</url>
- </repository>
- <repository>
- <id>spring-ext</id>
- <name>Spring External Dependencies Repository</name>
- <url>
- http://springframework.svn.sourceforge.net/svnroot/springframework/repos/repo-ext/
- </url>
- </repository>
- <!-- used when building against Spring snapshots -->
- <repository>
- <id>spring-snapshot</id>
- <name>Spring Portfolio Milestone Repository</name>
- <url>http://maven.springframework.org/snapshot</url>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- </repository>
-
- <repository>
- <id>i21-s3-osgi-repo</id>
- <name>i21 osgi artifacts repo</name>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- <url>http://maven.springframework.org/osgi</url>
- </repository>
- </repositories>
+ <!-- ================================================ -->
+ <!-- Repository Configuration -->
+ <!-- ================================================ -->
+
+ <pluginRepositories>
+ <pluginRepository>
+ <id>maven-repo</id>
+ <name>maven repo</name>
+ <url>http://repo1.maven.org/maven2/</url>
+ </pluginRepository>
+ <!-- clover repository -->
+ <pluginRepository>
+ <id>atlassian-m2-repository</id>
+ <name>Atlassian Maven 2.x Repository</name>
+ <url>http://repository.atlassian.com/maven2</url>
+ </pluginRepository>
+
+ <pluginRepository>
+ <id>com.springsource.repository.bundles.release</id>
+ <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Releases</name>
+ <url>http://repository.springsource.com/maven/bundles/release/</url>
+ </pluginRepository>
+
+ <pluginRepository>
+ <id>com.springsource.repository.bundles.milestone</id>
+ <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Milestones</name>
+ <url>http://repository.springsource.com/maven/bundles/milestone</url>
+ </pluginRepository>
+
+ <pluginRepository>
+ <id>com.springsource.repository.bundles.snapshot</id>
+ <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Snapshots</name>
+ <url>http://repository.springsource.com/maven/bundles/snapshot</url>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+
+ </pluginRepositories>
+
+ <repositories>
+ <repository>
+ <id>com.springsource.repository.bundles.release</id>
+ <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Releases</name>
+ <url>http://repository.springsource.com/maven/bundles/release/</url>
+ </repository>
+ <repository>
+ <id>com.springsource.repository.bundles.external</id>
+ <name>SpringSource Enterprise Bundle Repository - External Bundle Release</name>
+ <url>http://repository.springsource.com/maven/bundles/external</url>
+ </repository>
+ <repository>
+ <id>com.springsource.repository.bundles.milestone</id>
+ <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Milestones</name>
+ <url>http://repository.springsource.com/maven/bundles/milestone</url>
+ </repository>
+ <repository>
+ <id>com.springsource.repository.bundles.snapshot</id>
+ <name>SpringSource Enterprise Bundle Repository - Snapshots</name>
+ <url>http://repository.springsource.com/maven/bundles/snapshot</url>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+
+ <repository>
+ <id>spring-release</id>
+ <name>Spring Portfolio Release Repository</name>
+ <url>http://maven.springframework.org/release</url>
+ </repository>
+ <repository>
+ <id>spring-external</id>
+ <name>Spring Portfolio External Repository</name>
+ <url>http://maven.springframework.org/external</url>
+ </repository>
+ <repository>
+ <id>spring-milestone</id>
+ <name>Spring Portfolio Milestone Repository</name>
+ <url>http://maven.springframework.org/milestone</url>
+ </repository>
+ <repository>
+ <id>spring-ext</id>
+ <name>Spring External Dependencies Repository</name>
+ <url>http://springframework.svn.sourceforge.net/svnroot/springframework/repos/repo-ext/</url>
+ </repository>
+ <!-- used when building against Spring snapshots -->
+ <repository>
+ <id>spring-snapshot</id>
+ <name>Spring Portfolio Milestone Repository</name>
+ <url>http://maven.springframework.org/snapshot</url>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+
+ <repository>
+ <id>knopflerfish-repo</id>
+ <name>Official Knopflerfish Repository</name>
+ <url>http://www.knopflerfish.org/maven2/</url>
+ </repository>
+
+ <repository>
+ <id>i21-s3-osgi-repo</id>
+ <name>i21 osgi artifacts repo</name>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ <url>http://maven.springframework.org/osgi</url>
+ </repository>
+ </repositories>
</project> \ No newline at end of file
diff --git a/test-support/pom.xml b/test-support/pom.xml
index e5e80f5..7137562 100644
--- a/test-support/pom.xml
+++ b/test-support/pom.xml
@@ -1,149 +1,154 @@
-<?xml version="1.0"?><project>
- <parent>
- <artifactId>gemini-blueprint</artifactId>
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <artifactId>gemini-blueprint</artifactId>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <version>1.0.1.BUILD-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
<groupId>org.eclipse.gemini.blueprint</groupId>
- <version>1.0.1.BUILD-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-test</artifactId>
- <packaging>jar</packaging>
- <name>Gemini Blueprint Testing Framework</name>
- <url>http://www.eclipse.org/gemini/blueprint/</url>
- <description>
- Eclipse Gemini Blueprint testing framework. Provides JUnit based integration testing inside OSGi containers.
- </description>
-
-
- <properties>
- <javadoc.loc>${basedir}/../docs/src/javadoc</javadoc.loc>
-
- <spring.osgi.symbolic.name>${symName.prefix}.test</spring.osgi.symbolic.name>
-
- <jarjar.run>on</jarjar.run>
- <jarjar.keep>org.eclipse.gemini.blueprint.test.**</jarjar.keep>
- <jarjar.dep>${maven.dependency.org.eclipse.gemini.blueprint.gemini-blueprint-extender..jar.path}</jarjar.dep>
-
- </properties>
-
- <dependencies>
-
- <!-- make junit a mandatory dependency -->
- <dependency>
- <groupId>org.junit</groupId>
- <artifactId>com.springsource.junit</artifactId>
- <version>3.8.2</version>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>org.springframework.test</artifactId>
- <version>${spring.maven.artifact.version}</version>
- <exclusions>
- <!-- exclude spring-test junit (3.8.1) -->
- <exclusion>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- </exclusion>
- <exclusion>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.objectweb.asm</groupId>
- <artifactId>com.springsource.org.objectweb.asm</artifactId>
- <version>2.2.3</version>
- </dependency>
-
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-core</artifactId>
- <version>${project.parent.version}</version>
- </dependency>
-
- <!-- used for getting Counter util in -->
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-extender</artifactId>
- <version>${project.parent.version}</version>
- <classifier></classifier>
- <optional>true</optional>
- </dependency>
-
- <dependency>
- <groupId>org.eclipse.osgi</groupId>
- <artifactId>org.eclipse.osgi</artifactId>
- <version>${equinox.ver}</version>
- <type>jar</type>
- <scope>provided</scope>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>knopflerfish</groupId>
- <artifactId>framework</artifactId>
- <version>${kf.ver}</version>
- <type>jar</type>
- <scope>provided</scope>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.main</artifactId>
- <version>${felix.ver}</version>
- <type>jar</type>
- <scope>provided</scope>
- <optional>true</optional>
- <exclusions>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.framework</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.shell</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.shell.tui</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.bundlerepository</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <!-- for testing -->
- <dependency>
- <groupId>org.eclipse.gemini.blueprint</groupId>
- <artifactId>gemini-blueprint-mock</artifactId>
- <version>${project.parent.version}</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
-
- <build>
- <plugins>
- <!-- required since starting multiple osgi platforms inside the same VM might is not recommended -->
- <!-- (for example multiple URL stream factories might be registered) -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <forkMode>pertest</forkMode>
-
- <systemProperties>
- <property>
- <name>org.eclipse.gemini.blueprint.test.framework</name>
- <value>${osgi.test.platform}</value>
- </property>
- </systemProperties>
- </configuration>
- </plugin>
- </plugins>
- </build>
+ <artifactId>gemini-blueprint-test</artifactId>
+ <packaging>jar</packaging>
+ <name>Gemini Blueprint Testing Framework</name>
+ <url>http://www.eclipse.org/gemini/blueprint/</url>
+ <description>
+ Eclipse Gemini Blueprint testing framework. Provides JUnit based integration testing inside OSGi containers.
+ </description>
+
+
+ <properties>
+ <javadoc.loc>${basedir}/../docs/src/javadoc</javadoc.loc>
+
+ <spring.osgi.symbolic.name>${symName.prefix}.test</spring.osgi.symbolic.name>
+
+ <jarjar.run>on</jarjar.run>
+ <jarjar.keep>org.eclipse.gemini.blueprint.test.**</jarjar.keep>
+ <jarjar.dep>${maven.dependency.org.eclipse.gemini.blueprint.gemini-blueprint-extender.jar.path}</jarjar.dep>
+ </properties>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>org.junit</groupId>
+ <artifactId>com.springsource.org.junit</artifactId>
+ <version>4.9.0</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-test</artifactId>
+ <version>${spring.maven.artifact.version}</version>
+ <exclusions>
+ <!-- exclude spring-test junit (3.8.1) -->
+ <exclusion>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.objectweb.asm</groupId>
+ <artifactId>com.springsource.org.objectweb.asm</artifactId>
+ <version>2.2.3</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-core</artifactId>
+ <version>${project.parent.version}</version>
+ </dependency>
+
+ <!-- used for getting Counter util in -->
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-extender</artifactId>
+ <version>${project.parent.version}</version>
+ <optional>true</optional>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.osgi</groupId>
+ <artifactId>org.eclipse.osgi</artifactId>
+ <version>${equinox.ver}</version>
+ <type>jar</type>
+ <scope>provided</scope>
+ <optional>true</optional>
+ </dependency>
+ <dependency>
+ <groupId>org.knopflerfish</groupId>
+ <artifactId>framework</artifactId>
+ <version>${kf.ver}</version>
+ <type>jar</type>
+ <scope>provided</scope>
+ <optional>true</optional>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.main</artifactId>
+ <version>${felix.ver}</version>
+ <type>jar</type>
+ <scope>provided</scope>
+ <optional>true</optional>
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.framework</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.shell</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.shell.tui</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.bundlerepository</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <!-- for testing -->
+ <dependency>
+ <groupId>org.eclipse.gemini.blueprint</groupId>
+ <artifactId>gemini-blueprint-mock</artifactId>
+ <version>${project.parent.version}</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <!-- required since starting multiple osgi platforms inside the same VM might is not recommended -->
+ <!-- (for example multiple URL stream factories might be registered) -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <forkMode>pertest</forkMode>
+
+ <systemProperties>
+ <property>
+ <name>org.eclipse.gemini.blueprint.test.framework</name>
+ <value>${osgi.test.platform}</value>
+ </property>
+ </systemProperties>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
</project>
diff --git a/test-support/src/main/java/org/eclipse/gemini/blueprint/test/AbstractConfigurableOsgiTests.java b/test-support/src/main/java/org/eclipse/gemini/blueprint/test/AbstractConfigurableOsgiTests.java
index 9030b52..2e84306 100644
--- a/test-support/src/main/java/org/eclipse/gemini/blueprint/test/AbstractConfigurableOsgiTests.java
+++ b/test-support/src/main/java/org/eclipse/gemini/blueprint/test/AbstractConfigurableOsgiTests.java
@@ -1,192 +1,178 @@
-/******************************************************************************
- * Copyright (c) 2006, 2010 VMware Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * and Apache License v2.0 which accompanies this distribution.
- * The Eclipse Public License is available at
- * http://www.eclipse.org/legal/epl-v10.html and the Apache License v2.0
- * is available at http://www.opensource.org/licenses/apache2.0.php.
- * You may elect to redistribute this code under either of these licenses.
- *
- * Contributors:
- * VMware Inc.
- *****************************************************************************/
-
-package org.eclipse.gemini.blueprint.test;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Properties;
-
-import org.eclipse.gemini.blueprint.test.platform.EquinoxPlatform;
-import org.eclipse.gemini.blueprint.test.platform.OsgiPlatform;
-import org.eclipse.gemini.blueprint.test.platform.Platforms;
-import org.osgi.framework.Constants;
-import org.springframework.util.ClassUtils;
-import org.springframework.util.StringUtils;
-
-/**
- * Abstract JUnit super class which configures an {@link OsgiPlatform}. <p/>
- * This class offers more hooks for programmatic and declarative configuration
- * of the underlying OSGi platform used when running the test suite.
- *
- * @author Costin Leau
- *
- */
-public abstract class AbstractConfigurableOsgiTests extends AbstractOsgiTests {
-
- /**
- *
- * Default constructor. Constructs a new
- * <code>AbstractConfigurableOsgiTests</code> instance.
- */
- public AbstractConfigurableOsgiTests() {
- super();
- }
-
- /**
- * Constructs a new <code>AbstractConfigurableOsgiTests</code> instance.
- *
- * @param name test name
- */
- public AbstractConfigurableOsgiTests(String name) {
- super(name);
- }
-
-
- /**
- * System property for selecting the appropriate OSGi implementation.
- */
- public static final String OSGI_FRAMEWORK_SELECTOR = "org.eclipse.gemini.blueprint.test.framework";
-
- /**
- * Spring DM system property for selecting the appropriate OSGi implementation (used as fallback).
- */
- public static final String SPRING_DM_OSGI_FRAMEWORK_SELECTOR = "org.springframework.osgi.test.framework";
-
-
- /**
- * {@inheritDoc}
- *
- * <p/>This implementation determines and creates the OSGi platform used by
- * the test suite (Equinox by default). It will try to create a Platform
- * instance based on the <code>getPlatformName</code>, falling back to
- * Equinox in case of a failure.
- *
- * @see #getPlatformName() for an easier alternative.
- */
- protected OsgiPlatform createPlatform() {
- boolean trace = logger.isTraceEnabled();
- String platformClassName = getPlatformName();
-
- OsgiPlatform platform = null;
- ClassLoader currentCL = getClass().getClassLoader();
-
- if (StringUtils.hasText(platformClassName)) {
- if (ClassUtils.isPresent(platformClassName, currentCL)) {
- Class<?> platformClass = ClassUtils.resolveClassName(platformClassName, currentCL);
- if (OsgiPlatform.class.isAssignableFrom(platformClass)) {
- if (trace)
- logger.trace("Instantiating platform wrapper...");
- try {
- platform = (OsgiPlatform) platformClass.newInstance();
- }
- catch (Exception ex) {
- logger.warn("cannot instantiate class [" + platformClass + "]; using default");
- }
- }
- else
- logger.warn("Class [" + platformClass + "] does not implement " + OsgiPlatform.class.getName()
- + " interface; falling back to defaults");
- }
- else {
- logger.warn("OSGi platform starter [" + platformClassName + "] not found; using default");
- }
-
- }
- else
- logger.trace("No platform specified; using default");
-
- // fall back
- if (platform == null)
- platform = new EquinoxPlatform();
-
- Properties config = platform.getConfigurationProperties();
- // add boot delegation
- config.setProperty(Constants.FRAMEWORK_BOOTDELEGATION,
- getBootDelegationPackageString());
-
- return platform;
- }
-
- /**
- * Indicates what OSGi platform should be used by the test suite. By
- * default, {@link #OSGI_FRAMEWORK_SELECTOR} system property is used.
- * If not present, {@link #SPRING_DM_OSGI_FRAMEWORK_SELECTOR} system property is checked.
- * Subclasses can override this and provide directly the OSGi platform name.
- * By default, the platform name holds the fully qualified name of the OSGi
- * platform class.
- *
- * @return platform platform name
- * @see Platforms
- */
- protected String getPlatformName() {
- String systemProperty = System.getProperty(OSGI_FRAMEWORK_SELECTOR);
- if (logger.isTraceEnabled())
- logger.trace("System property [" + OSGI_FRAMEWORK_SELECTOR + "] has value=" + systemProperty);
-
- if (!StringUtils.hasText(systemProperty)) {
- systemProperty = System.getProperty(SPRING_DM_OSGI_FRAMEWORK_SELECTOR);
- }
-
- if (logger.isTraceEnabled())
- logger.trace("System property [" + SPRING_DM_OSGI_FRAMEWORK_SELECTOR + "] has value=" + systemProperty);
-
- return (!StringUtils.hasText(systemProperty) ? Platforms.EQUINOX : systemProperty);
- }
-
- /**
- * Returns a String representation of the boot delegation packages list.
- *
- * @return boot delegation path
- */
- private String getBootDelegationPackageString() {
- StringBuilder buf = new StringBuilder();
-
- for (Iterator iter = getBootDelegationPackages().iterator(); iter.hasNext();) {
- buf.append(((String) iter.next()).trim());
- if (iter.hasNext()) {
- buf.append(",");
- }
- }
-
- return buf.toString();
- }
-
- /**
- * Returns the list of OSGi packages that are delegated to the boot
- * classpath. See the OSGi specification regarding the format of the package
- * string representation.
- *
- * @return the list of strings representing the packages that the OSGi
- * platform will delegate to the boot class path.
- */
- protected List getBootDelegationPackages() {
- List defaults = new ArrayList();
- // javax packages
- defaults.add("javax.*");
- // XML API available in JDK 1.4
- defaults.add("org.w3c.*");
- defaults.add("org.xml.*");
-
- // sun packages
- defaults.add("sun.*");
- defaults.add("com.sun.*");
-
- // FIXME: the JAXP package (for 1.4 VMs) should be discovered in an OSGi
- // manner
- defaults.add("org.apache.xerces.jaxp.*");
- return defaults;
- }
+/******************************************************************************
+ * Copyright (c) 2006, 2010 VMware Inc.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * and Apache License v2.0 which accompanies this distribution.
+ * The Eclipse Public License is available at
+ * http://www.eclipse.org/legal/epl-v10.html and the Apache License v2.0
+ * is available at http://www.opensource.org/licenses/apache2.0.php.
+ * You may elect to redistribute this code under either of these licenses.
+ *
+ * Contributors:
+ * VMware Inc.
+ *****************************************************************************/
+
+package org.eclipse.gemini.blueprint.test;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Properties;
+
+import org.eclipse.gemini.blueprint.test.platform.EquinoxPlatform;
+import org.eclipse.gemini.blueprint.test.platform.OsgiPlatform;
+import org.eclipse.gemini.blueprint.test.platform.Platforms;
+import org.osgi.framework.Constants;
+import org.springframework.util.ClassUtils;
+import org.springframework.util.StringUtils;
+
+/**
+ * Abstract JUnit super class which configures an {@link OsgiPlatform}. <p/>
+ * This class offers more hooks for programmatic and declarative configuration
+ * of the underlying OSGi platform used when running the test suite.
+ *
+ * @author Costin Leau
+ *
+ */
+public abstract class AbstractConfigurableOsgiTests extends AbstractOsgiTests {
+
+ /**
+ *
+ * Default constructor. Constructs a new
+ * <code>AbstractConfigurableOsgiTests</code> instance.
+ */
+ public AbstractConfigurableOsgiTests() {
+ super();
+ }
+
+ /**
+ * Constructs a new <code>AbstractConfigurableOsgiTests</code> instance.
+ *
+ * @param name test name
+ */
+ public AbstractConfigurableOsgiTests(String name) {
+ super(name);
+ }
+
+
+ /**
+ * System property for selecting the appropriate OSGi implementation.
+ */
+ public static final String OSGI_FRAMEWORK_SELECTOR = "org.eclipse.gemini.blueprint.test.framework";
+
+ /**
+ * {@inheritDoc}
+ *
+ * <p/>This implementation determines and creates the OSGi platform used by
+ * the test suite (Equinox by default). It will try to create a Platform
+ * instance based on the <code>getPlatformName</code>, falling back to
+ * Equinox in case of a failure.
+ *
+ * @see #getPlatformName() for an easier alternative.
+ */
+ protected OsgiPlatform createPlatform() {
+ boolean trace = logger.isTraceEnabled();
+ String platformClassName = getPlatformName();
+
+ OsgiPlatform platform = null;
+ ClassLoader currentCL = getClass().getClassLoader();
+
+ if (StringUtils.hasText(platformClassName)) {
+ if (ClassUtils.isPresent(platformClassName, currentCL)) {
+ Class<?> platformClass = ClassUtils.resolveClassName(platformClassName, currentCL);
+ if (OsgiPlatform.class.isAssignableFrom(platformClass)) {
+ if (trace)
+ logger.trace("Instantiating platform wrapper...");
+ try {
+ platform = (OsgiPlatform) platformClass.newInstance();
+ }
+ catch (Exception ex) {
+ logger.warn("cannot instantiate class [" + platformClass + "]; using default");
+ }
+ }
+ else
+ logger.warn("Class [" + platformClass + "] does not implement " + OsgiPlatform.class.getName()
+ + " interface; falling back to defaults");
+ }
+ else {
+ logger.warn("OSGi platform starter [" + platformClassName + "] not found; using default");
+ }
+
+ }
+ else
+ logger.trace("No platform specified; using default");
+
+ // fall back
+ if (platform == null)
+ platform = new EquinoxPlatform();
+
+ Properties config = platform.getConfigurationProperties();
+ // add boot delegation
+ config.setProperty(Constants.FRAMEWORK_BOOTDELEGATION,
+ getBootDelegationPackageString());
+
+ return platform;
+ }
+
+ /**
+ * Indicates what OSGi platform should be used by the test suite. By
+ * default, {@link #OSGI_FRAMEWORK_SELECTOR} system property is used.
+ * Subclasses can override this and provide directly the OSGi platform name.
+ * By default, the platform name holds the fully qualified name of the OSGi
+ * platform class.
+ *
+ * @return platform platform name
+ * @see Platforms
+ */
+ protected String getPlatformName() {
+ String systemProperty = System.getProperty(OSGI_FRAMEWORK_SELECTOR);
+ if (logger.isTraceEnabled())
+ logger.trace("System property [" + OSGI_FRAMEWORK_SELECTOR + "] has value=" + systemProperty);
+
+ return (!StringUtils.hasText(systemProperty) ? Platforms.EQUINOX : systemProperty);
+ }
+
+ /**
+ * Returns a String representation of the boot delegation packages list.
+ *
+ * @return boot delegation path
+ */
+ private String getBootDelegationPackageString() {
+ StringBuilder buf = new StringBuilder();
+
+ for (Iterator iter = getBootDelegationPackages().iterator(); iter.hasNext();) {
+ buf.append(((String) iter.next()).trim());
+ if (iter.hasNext()) {
+ buf.append(",");
+ }
+ }
+
+ return buf.toString();
+ }
+
+ /**
+ * Returns the list of OSGi packages that are delegated to the boot
+ * classpath. See the OSGi specification regarding the format of the package
+ * string representation.
+ *
+ * @return the list of strings representing the packages that the OSGi
+ * platform will delegate to the boot class path.
+ */
+ protected List getBootDelegationPackages() {
+ List defaults = new ArrayList();
+ // javax packages
+ defaults.add("javax.*");
+ // XML API available in JDK 1.4
+ defaults.add("org.w3c.*");
+ defaults.add("org.xml.*");
+
+ // sun packages
+ defaults.add("sun.*");
+ defaults.add("com.sun.*");
+
+ // FIXME: the JAXP package (for 1.4 VMs) should be discovered in an OSGi
+ // manner
+ defaults.add("org.apache.xerces.jaxp.*");
+ return defaults;
+ }
} \ No newline at end of file
diff --git a/test-support/src/main/java/org/eclipse/gemini/blueprint/test/AbstractOnTheFlyBundleCreatorTests.java b/test-support/src/main/java/org/eclipse/gemini/blueprint/test/AbstractOnTheFlyBundleCreatorTests.java
index 37e1e0f..4b49d10 100644
--- a/test-support/src/main/java/org/eclipse/gemini/blueprint/test/AbstractOnTheFlyBundleCreatorTests.java
+++ b/test-support/src/main/java/org/eclipse/gemini/blueprint/test/AbstractOnTheFlyBundleCreatorTests.java
@@ -1,550 +1,550 @@
-/******************************************************************************
- * Copyright (c) 2006, 2010 VMware Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * and Apache License v2.0 which accompanies this distribution.
- * The Eclipse Public License is available at
- * http://www.eclipse.org/legal/epl-v10.html and the Apache License v2.0
- * is available at http://www.opensource.org/licenses/apache2.0.php.
- * You may elect to redistribute this code under either of these licenses.
- *
- * Contributors:
- * VMware Inc.
- *****************************************************************************/
-
-package org.eclipse.gemini.blueprint.test;
-
-import java.io.IOException;
-import java.security.AccessController;
-import java.security.PrivilegedAction;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.LinkedHashMap;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.jar.Attributes;
-import java.util.jar.Manifest;
-
-import org.eclipse.gemini.blueprint.test.internal.util.DependencyVisitor;
-import org.eclipse.gemini.blueprint.test.internal.util.jar.JarCreator;
-import org.eclipse.gemini.blueprint.util.OsgiStringUtils;
-import org.objectweb.asm.ClassReader;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.Constants;
-import org.springframework.core.io.DefaultResourceLoader;
-import org.springframework.core.io.InputStreamResource;
-import org.springframework.core.io.Resource;
-import org.springframework.util.Assert;
-import org.springframework.util.ClassUtils;
-import org.springframework.util.CollectionUtils;
-import org.springframework.util.ObjectUtils;
-import org.springframework.util.StringUtils;
-
-/**
- * Enhanced subclass of {@link AbstractDependencyManagerTests} that facilitates
- * OSGi testing by creating at runtime, on the fly, a jar using the indicated
- * manifest and resource patterns (by default all files found under the root
- * path).
- *
- * <p/>The test class can automatically determine the imports required by the
- * test, create the OSGi bundle manifest and pack the test and its resources in
- * a jar that can be installed inside an OSGi platform.
- *
- * <p/>Additionally, a valid OSGi manifest is automatically created for the
- * resulting test if the user does not provide one. The classes present in the
- * archive are analyzed and based on their byte-code, the required
- * <code>Import-Package</code> entries (for packages not found in the bundle)
- * are created.
- *
- * Please see the reference documentation for an in-depth explanation and usage
- * examples.
- *
- * <p/>Note that in more complex scenarios, dedicated packaging tools (such as
- * ant scripts or maven2) should be used.
- *
- * <p/>It is recommend to extend {@link AbstractConfigurableBundleCreatorTests}
- * rather then this class as the former offers sensible defaults.
- *
- * @author Costin Leau
- *
- */
-public abstract class AbstractOnTheFlyBundleCreatorTests extends AbstractDependencyManagerTests {
-
- private static final String META_INF_JAR_LOCATION = "/META-INF/MANIFEST.MF";
-
- JarCreator jarCreator;
-
- /** field used for caching jar content */
- private Map jarEntries;
- /** discovered manifest */
- private Manifest manifest;
-
-
- public AbstractOnTheFlyBundleCreatorTests() {
- initializeJarCreator();
- }
-
- public AbstractOnTheFlyBundleCreatorTests(String testName) {
- super(testName);
- initializeJarCreator();
- }
-
- private void initializeJarCreator() {
- AccessController.doPrivileged(new PrivilegedAction() {
-
- public Object run() {
- jarCreator = new JarCreator();
- return null;
- }
- });
- }
-
- /**
- * Returns the root path used for locating the resources that will be packed
- * in the test bundle (the root path does not become part of the jar).
- * <p/>By default, the Maven2 test layout is used:
- * <code>"file:./target/test-classes"</code>
- *
- * @return root path given as a String
- */
- protected String getRootPath() {
- return "file:./target/test-classes/";
- }
-
- /**
- * Returns the patterns used for identifying the resources added to the jar.
- * The patterns are added to the root path when performing the search. By
- * default, the pattern is <code>*&#42;/*</code>.
- *
- * <p/>In large test environments, performance can be improved by limiting
- * the resource added to the bundle by selecting only certain packages or
- * classes. This results in a small test bundle which is faster to create,
- * deploy and install.
- *
- * @return the patterns identifying the resources added to the jar
- */
- protected String[] getBundleContentPattern() {
- return new String[] { JarCreator.EVERYTHING_PATTERN };
- }
-
- /**
- * Returns the location (in Spring resource style) of the manifest location
- * to be used. By default <code>null</code> is returned, indicating that
- * the manifest should be picked up from the bundle content (if it's
- * available) or be automatically created based on the test class imports.
- *
- * @return the manifest location
- * @see #getManifest()
- * @see #createDefaultManifest()
- */
- protected String getManifestLocation() {
- return null;
- }
-
- /**
- * Returns the current test bundle manifest. The method tries to read the
- * manifest from the given location; in case the location is
- * <code>null</code> (default), it will search for
- * <code>META-INF/MANIFEST.MF</code> file in jar content (as specified
- * through the patterns) and, if it cannot find the file,
- * <em>automatically</em> create a <code>Manifest</code> object
- * containing default entries.
- *
- * <p/> Subclasses can override this method to enhance the returned
- * Manifest.
- *
- * @return Manifest used for this test suite.
- *
- * @see #createDefaultManifest()
- */
- protected Manifest getManifest() {
- // return cached manifest
- if (manifest != null)
- return manifest;
-
- String manifestLocation = getManifestLocation();
- if (StringUtils.hasText(manifestLocation)) {
- logger.info("Using Manifest from specified location=[" + getManifestLocation() + "]");
- DefaultResourceLoader loader = new DefaultResourceLoader();
- manifest = createManifestFrom(loader.getResource(manifestLocation));
- }
-
- else {
- // set root path
- jarCreator.setRootPath(getRootPath());
- // add the content pattern
- jarCreator.setContentPattern(getBundleContentPattern());
-
- // see if the manifest already exists in the classpath
- // to resolve the patterns
- jarEntries = jarCreator.resolveContent();
-
- for (Iterator iterator = jarEntries.entrySet().iterator(); iterator.hasNext();) {
- Map.Entry entry = (Map.Entry) iterator.next();
- if (META_INF_JAR_LOCATION.equals(entry.getKey())) {
- logger.info("Using Manifest from the test bundle content=[/META-INF/MANIFEST.MF]");
- manifest = createManifestFrom((Resource) entry.getValue());
- }
- }
- // fallback to default manifest creation
-
- if (manifest == null) {
- logger.info("Automatically creating Manifest for the test bundle");
- manifest = createDefaultManifest();
- }
- }
-
- return manifest;
- }
-
- /**
- * Indicates if the automatic manifest creation should consider only the
- * test class (<code>true</code>) or all classes included in the test
- * bundle(<code>false</code>). The latter should be used when the test
- * bundle contains additional classes that help with the test case.
- *
- * <p/> By default, this method returns <code>true</code>, meaning that
- * only the test class will be searched for dependencies.
- *
- * @return true if only the test hierarchy is searched for dependencies or
- * false if all classes discovered in the test archive need to be
- * parsed.
- */
- protected boolean createManifestOnlyFromTestClass() {
- return true;
- }
-
- private Manifest createManifestFrom(Resource resource) {
- Assert.notNull(resource, "unable to create manifest for empty resources");
- try {
- return new Manifest(resource.getInputStream());
- }
- catch (IOException ex) {
- throw (RuntimeException) new IllegalArgumentException("cannot create manifest from " + resource).initCause(ex);
- }
- }
-
- /**
- * Creates the default manifest in case none if found on the disk. By
- * default, the imports are synthetised based on the test class bytecode.
- *
- * @return default manifest for the jar created on the fly
- */
- protected Manifest createDefaultManifest() {
- Manifest manifest = new Manifest();
- Attributes attrs = manifest.getMainAttributes();
-
- // manifest versions
- attrs.put(Attributes.Name.MANIFEST_VERSION, "1.0");
- attrs.putValue(Constants.BUNDLE_MANIFESTVERSION, "2");
-
- String description = getName() + "-" + getClass().getName();
- // name/description
- attrs.putValue(Constants.BUNDLE_NAME, "TestBundle-" + description);
- attrs.putValue(Constants.BUNDLE_SYMBOLICNAME, "TestBundle-" + description);
- attrs.putValue(Constants.BUNDLE_DESCRIPTION, "on-the-fly test bundle");
-
- // activator
- attrs.putValue(Constants.BUNDLE_ACTIVATOR, JUnitTestActivator.class.getName());
-
- // add Import-Package entry
- addImportPackage(manifest);
-
- if (logger.isDebugEnabled())
- logger.debug("Created manifest:" + manifest.getMainAttributes().entrySet());
- return manifest;
- }
-
- private void addImportPackage(Manifest manifest) {
- String[] rawImports = determineImports();
-
- boolean trace = logger.isTraceEnabled();
-
- if (trace)
- logger.trace("Discovered raw imports " + ObjectUtils.nullSafeToString(rawImports));
-
- Collection specialImportsOut = eliminateSpecialPackages(rawImports);
- Collection imports = eliminatePackagesAvailableInTheJar(specialImportsOut);
-
- if (trace)
- logger.trace("Filtered imports are " + imports);
-
- manifest.getMainAttributes().putValue(Constants.IMPORT_PACKAGE,
- StringUtils.collectionToCommaDelimitedString(imports));
- }
-
- /**
- * Eliminate 'special' packages (java.*, test framework internal and the
- * class declaring package)
- *
- * @param rawImports
- * @return
- */
- private Collection eliminateSpecialPackages(String[] rawImports) {
- String currentPckg = ClassUtils.classPackageAsResourcePath(getClass()).replace('/', '.');
-
- Set filteredImports = new LinkedHashSet(rawImports.length);
- Set eliminatedImports = new LinkedHashSet(4);
-
- for (int i = 0; i < rawImports.length; i++) {
- String pckg = rawImports[i];
-
- if (!(pckg.startsWith("java.") || pckg.startsWith("org.eclipse.gemini.blueprint.test.internal") || pckg.equals(currentPckg)))
- filteredImports.add(pckg);
- else
- eliminatedImports.add(pckg);
- }
-
- if (!eliminatedImports.isEmpty() && logger.isTraceEnabled())
- logger.trace("Eliminated special packages " + eliminatedImports);
-
- return filteredImports;
- }
-
- /**
- * Eliminates imports for packages already included in the bundle. Works
- * only if the jar content is known (variable 'jarEntries' set).
- *
- * @param imports
- * @return
- */
- private Collection eliminatePackagesAvailableInTheJar(Collection imports) {
- // no jar entry present, bail out.
- if (jarEntries == null || jarEntries.isEmpty())
- return imports;
-
- Set filteredImports = new LinkedHashSet(imports.size());
- Collection eliminatedImports = new LinkedHashSet(2);
-
- Collection jarPackages = jarCreator.getContainedPackages();
- for (Iterator iterator = imports.iterator(); iterator.hasNext();) {
- String pckg = (String) iterator.next();
- if (jarPackages.contains(pckg))
- eliminatedImports.add(pckg);
- else
- filteredImports.add(pckg);
- }
- if (!eliminatedImports.isEmpty() && logger.isTraceEnabled())
- logger.trace("Eliminated packages already present in the bundle " + eliminatedImports);
-
- return filteredImports;
- }
-
- /**
- * Determine imports for the given bundle. Based on the user settings, this
- * method will consider only the the test hierarchy until the testing
- * framework is found or all classes available inside the test bundle. <p/>
- * Note that split packages are not supported.
- *
- * @return
- */
- private String[] determineImports() {
-
- boolean useTestClassOnly = false;
-
- // no jar entry present, bail out.
- if (jarEntries == null || jarEntries.isEmpty()) {
- logger.debug("No test jar content detected, generating bundle imports from the test class");
- useTestClassOnly = true;
- }
-
- else if (createManifestOnlyFromTestClass()) {
- logger.info("Using the test class for generating bundle imports");
- useTestClassOnly = true;
- }
- else
- logger.info("Using all classes in the jar for the generation of bundle imports");
-
- // className, class resource
- Map entries;
-
- if (useTestClassOnly) {
-
- entries = new LinkedHashMap(4);
-
- // get current class (test class that bootstraps the OSGi infrastructure)
- Class<?> clazz = getClass();
- String clazzPackage = null;
- String endPackage = AbstractOnTheFlyBundleCreatorTests.class.getPackage().getName();
-
- do {
-
- // consider inner classes as well
- List classes = new ArrayList(4);
- classes.add(clazz);
- CollectionUtils.mergeArrayIntoCollection(clazz.getDeclaredClasses(), classes);
-
- for (Iterator iterator = classes.iterator(); iterator.hasNext();) {
- Class<?> classToInspect = (Class) iterator.next();
-
- Package pkg = classToInspect.getPackage();
- if (pkg != null) {
- clazzPackage = pkg.getName();
- String classFile = ClassUtils.getClassFileName(classToInspect);
- entries.put(classToInspect.getName().replace('.', '/').concat(ClassUtils.CLASS_FILE_SUFFIX),
- new InputStreamResource(classToInspect.getResourceAsStream(classFile)));
- }
- // handle default package
- else {
- logger.warn("Could not find package for class " + classToInspect + "; ignoring...");
- }
- }
-
- clazz = clazz.getSuperclass();
-
- } while (!endPackage.equals(clazzPackage));
- }
- else
- entries = jarEntries;
-
- return determineImportsFor(entries);
-
- }
-
- private String[] determineImportsFor(Map entries) {
- // get contained packages to do matching on the test hierarchy
- Collection containedPackages = jarCreator.getContainedPackages();
- Set cumulatedPackages = new LinkedHashSet();
-
- // make sure the collection package is valid
- boolean validPackageCollection = !containedPackages.isEmpty();
-
- boolean trace = logger.isTraceEnabled();
-
- for (Iterator iterator = entries.entrySet().iterator(); iterator.hasNext();) {
- Map.Entry entry = (Map.Entry) iterator.next();
- String resourceName = (String) entry.getKey();
-
- // filter out the test hierarchy
- if (resourceName.endsWith(ClassUtils.CLASS_FILE_SUFFIX)) {
- if (trace)
- logger.trace("Analyze imports for test bundle resource " + resourceName);
- String classFileName = StringUtils.getFilename(resourceName);
- String className = classFileName.substring(0, classFileName.length()
- - ClassUtils.CLASS_FILE_SUFFIX.length());
- String classPkg = resourceName.substring(0, resourceName.length() - classFileName.length()).replace(
- '/', '.');
-
- if (classPkg.startsWith("."))
- classPkg = classPkg.substring(1);
-
- if (classPkg.endsWith("."))
- classPkg = classPkg.substring(0, classPkg.length() - 1);
-
- // if we don't have the package, add it
- if (validPackageCollection && StringUtils.hasText(classPkg) && !containedPackages.contains(classPkg)) {
- logger.trace("Package [" + classPkg + "] is NOT part of the test archive; adding an import for it");
- cumulatedPackages.add(classPkg);
- }
-
- // otherwise parse the class byte-code
- else {
- if (trace)
- logger.trace("Package [" + classPkg + "] is part of the test archive; parsing " + className
- + " bytecode to determine imports...");
- cumulatedPackages.addAll(determineImportsForClass(className, (Resource) entry.getValue()));
- }
- }
- }
-
- return (String[]) cumulatedPackages.toArray(new String[cumulatedPackages.size()]);
- }
-
- /**
- * Determine imports for a class given as a String resource. This method
- * doesn't do any search for the enclosing/inner classes as it considers
- * that these should be handled at a higher level.
- *
- * The returned set contains the packages in string format (i.e. java.io)
- *
- * @param className
- * @param resource
- * @return
- */
- private Set determineImportsForClass(String className, Resource resource) {
- Assert.notNull(resource, "a not-null class is required");
- DependencyVisitor visitor = new DependencyVisitor();
-
- boolean trace = logger.isTraceEnabled();
-
- ClassReader reader;
-
- try {
- if (trace)
- logger.trace("Visiting class " + className);
- reader = new ClassReader(resource.getInputStream());
- }
- catch (Exception ex) {
- throw (RuntimeException) new IllegalArgumentException("Cannot read class " + className).initCause(ex);
- }
- reader.accept(visitor, false);
-
- // convert from / to . format
- Set originalPackages = visitor.getPackages();
- Set pkgs = new LinkedHashSet(originalPackages.size());
-
- for (Iterator iterator = originalPackages.iterator(); iterator.hasNext();) {
- String pkg = (String) iterator.next();
- pkgs.add(pkg.replace('/', '.'));
- }
- return pkgs;
- }
-
- protected void postProcessBundleContext(BundleContext context) throws Exception {
- logger.debug("Post processing: creating test bundle");
-
- Resource jar;
-
- Manifest mf = getManifest();
-
- // if the jar content hasn't been discovered yet (while creating the manifest)
- // do so now
- if (jarEntries == null) {
- // set root path
- jarCreator.setRootPath(getRootPath());
- // add the content pattern
- jarCreator.setContentPattern(getBundleContentPattern());
-
- // use jar creator for pattern discovery
- jar = jarCreator.createJar(mf);
- }
-
- // otherwise use the cached resources
- else {
- jar = jarCreator.createJar(mf, jarEntries);
- }
-
- try {
- installAndStartBundle(context, jar);
- }
- catch (Exception e) {
- IllegalStateException ise = new IllegalStateException(
- "Unable to dynamically start generated unit test bundle");
- ise.initCause(e);
- throw ise;
- }
-
- // now do the delegation
- super.postProcessBundleContext(context);
- }
-
- private void installAndStartBundle(BundleContext context, Resource resource) throws Exception {
- // install & start
- Bundle bundle = context.installBundle("[onTheFly-test-bundle]" + ClassUtils.getShortName(getClass()) + "["
- + hashCode() + "]", resource.getInputStream());
-
- String bundleString = OsgiStringUtils.nullSafeNameAndSymName(bundle);
- boolean debug = logger.isDebugEnabled();
-
- if (debug)
- logger.debug("Test bundle [" + bundleString + "] succesfully installed");
- bundle.start();
- if (debug)
- logger.debug("Test bundle [" + bundleString + "] succesfully started");
- }
-
-}
+/******************************************************************************
+ * Copyright (c) 2006, 2010 VMware Inc.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * and Apache License v2.0 which accompanies this distribution.
+ * The Eclipse Public License is available at
+ * http://www.eclipse.org/legal/epl-v10.html and the Apache License v2.0
+ * is available at http://www.opensource.org/licenses/apache2.0.php.
+ * You may elect to redistribute this code under either of these licenses.
+ *
+ * Contributors:
+ * VMware Inc.
+ *****************************************************************************/
+
+package org.eclipse.gemini.blueprint.test;
+
+import java.io.IOException;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.jar.Attributes;
+import java.util.jar.Manifest;
+
+import org.eclipse.gemini.blueprint.test.internal.util.DependencyVisitor;
+import org.eclipse.gemini.blueprint.test.internal.util.jar.JarCreator;
+import org.eclipse.gemini.blueprint.util.OsgiStringUtils;
+import org.objectweb.asm.ClassReader;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.Constants;
+import org.springframework.core.io.DefaultResourceLoader;
+import org.springframework.core.io.InputStreamResource;
+import org.springframework.core.io.Resource;
+import org.springframework.util.Assert;
+import org.springframework.util.ClassUtils;
+import org.springframework.util.CollectionUtils;
+import org.springframework.util.ObjectUtils;
+import org.springframework.util.StringUtils;
+
+/**
+ * Enhanced subclass of {@link AbstractDependencyManagerTests} that facilitates
+ * OSGi testing by creating at runtime, on the fly, a jar using the indicated
+ * manifest and resource patterns (by default all files found under the root
+ * path).
+ *
+ * <p/>The test class can automatically determine the imports required by the
+ * test, create the OSGi bundle manifest and pack the test and its resources in
+ * a jar that can be installed inside an OSGi platform.
+ *
+ * <p/>Additionally, a valid OSGi manifest is automatically created for the
+ * resulting test if the user does not provide one. The classes present in the
+ * archive are analyzed and based on their byte-code, the required
+ * <code>Import-Package</code> entries (for packages not found in the bundle)
+ * are created.
+ *
+ * Please see the reference documentation for an in-depth explanation and usage
+ * examples.
+ *
+ * <p/>Note that in more complex scenarios, dedicated packaging tools (such as
+ * ant scripts or maven2) should be used.
+ *
+ * <p/>It is recommend to extend {@link AbstractConfigurableBundleCreatorTests}
+ * rather then this class as the former offers sensible defaults.
+ *
+ * @author Costin Leau
+ *
+ */
+public abstract class AbstractOnTheFlyBundleCreatorTests extends AbstractDependencyManagerTests {
+
+ private static final String META_INF_JAR_LOCATION = "/META-INF/MANIFEST.MF";
+
+ JarCreator jarCreator;
+
+ /** field used for caching jar content */
+ private Map jarEntries;
+ /** discovered manifest */
+ private Manifest manifest;
+
+
+ public AbstractOnTheFlyBundleCreatorTests() {
+ initializeJarCreator();
+ }
+
+ public AbstractOnTheFlyBundleCreatorTests(String testName) {
+ super(testName);
+ initializeJarCreator();
+ }
+
+ private void initializeJarCreator() {
+ AccessController.doPrivileged(new PrivilegedAction() {
+
+ public Object run() {
+ jarCreator = new JarCreator();
+ return null;
+ }
+ });
+ }
+
+ /**
+ * Returns the root path used for locating the resources that will be packed
+ * in the test bundle (the root path does not become part of the jar).
+ * <p/>By default, the Maven2 test layout is used:
+ * <code>"file:./target/test-classes"</code>
+ *
+ * @return root path given as a String
+ */
+ protected String getRootPath() {
+ return "file:./target/test-classes/";
+ }
+
+ /**
+ * Returns the patterns used for identifying the resources added to the jar.
+ * The patterns are added to the root path when performing the search. By
+ * default, the pattern is <code>*&#42;/*</code>.
+ *
+ * <p/>In large test environments, performance can be improved by limiting
+ * the resource added to the bundle by selecting only certain packages or
+ * classes. This results in a small test bundle which is faster to create,
+ * deploy and install.
+ *
+ * @return the patterns identifying the resources added to the jar
+ */
+ protected String[] getBundleContentPattern() {
+ return new String[] { JarCreator.EVERYTHING_PATTERN };
+ }
+
+ /**
+ * Returns the location (in Spring resource style) of the manifest location
+ * to be used. By default <code>null</code> is returned, indicating that
+ * the manifest should be picked up from the bundle content (if it's
+ * available) or be automatically created based on the test class imports.
+ *
+ * @return the manifest location
+ * @see #getManifest()
+ * @see #createDefaultManifest()
+ */
+ protected String getManifestLocation() {
+ return null;
+ }
+
+ /**
+ * Returns the current test bundle manifest. The method tries to read the
+ * manifest from the given location; in case the location is
+ * <code>null</code> (default), it will search for
+ * <code>META-INF/MANIFEST.MF</code> file in jar content (as specified
+ * through the patterns) and, if it cannot find the file,
+ * <em>automatically</em> create a <code>Manifest</code> object
+ * containing default entries.
+ *
+ * <p/> Subclasses can override this method to enhance the returned
+ * Manifest.
+ *
+ * @return Manifest used for this test suite.
+ *
+ * @see #createDefaultManifest()
+ */
+ protected Manifest getManifest() {
+ // return cached manifest
+ if (manifest != null)
+ return manifest;
+
+ String manifestLocation = getManifestLocation();
+ if (StringUtils.hasText(manifestLocation)) {
+ logger.info("Using Manifest from specified location=[" + getManifestLocation() + "]");
+ DefaultResourceLoader loader = new DefaultResourceLoader();
+ manifest = createManifestFrom(loader.getResource(manifestLocation));
+ }
+
+ else {
+ // set root path
+ jarCreator.setRootPath(getRootPath());
+ // add the content pattern
+ jarCreator.setContentPattern(getBundleContentPattern());
+
+ // see if the manifest already exists in the classpath
+ // to resolve the patterns
+ jarEntries = jarCreator.resolveContent();
+
+ for (Iterator iterator = jarEntries.entrySet().iterator(); iterator.hasNext();) {
+ Map.Entry entry = (Map.Entry) iterator.next();
+ if (META_INF_JAR_LOCATION.equals(entry.getKey())) {
+ logger.info("Using Manifest from the test bundle content=[/META-INF/MANIFEST.MF]");
+ manifest = createManifestFrom((Resource) entry.getValue());
+ }
+ }
+ // fallback to default manifest creation
+
+ if (manifest == null) {
+ logger.info("Automatically creating Manifest for the test bundle");
+ manifest = createDefaultManifest();
+ }
+ }
+
+ return manifest;
+ }
+
+ /**
+ * Indicates if the automatic manifest creation should consider only the
+ * test class (<code>true</code>) or all classes included in the test
+ * bundle(<code>false</code>). The latter should be used when the test
+ * bundle contains additional classes that help with the test case.
+ *
+ * <p/> By default, this method returns <code>true</code>, meaning that
+ * only the test class will be searched for dependencies.
+ *
+ * @return true if only the test hierarchy is searched for dependencies or
+ * false if all classes discovered in the test archive need to be
+ * parsed.
+ */
+ protected boolean createManifestOnlyFromTestClass() {
+ return true;
+ }
+
+ private Manifest createManifestFrom(Resource resource) {
+ Assert.notNull(resource, "unable to create manifest for empty resources");
+ try {
+ return new Manifest(resource.getInputStream());
+ }
+ catch (IOException ex) {
+ throw (RuntimeException) new IllegalArgumentException("cannot create manifest from " + resource).initCause(ex);
+ }
+ }
+
+ /**
+ * Creates the default manifest in case none if found on the disk. By
+ * default, the imports are synthetised based on the test class bytecode.
+ *
+ * @return default manifest for the jar created on the fly
+ */
+ protected Manifest createDefaultManifest() {
+ Manifest manifest = new Manifest();
+ Attributes attrs = manifest.getMainAttributes();
+
+ // manifest versions
+ attrs.put(Attributes.Name.MANIFEST_VERSION, "1.0");
+ attrs.putValue(Constants.BUNDLE_MANIFESTVERSION, "2");
+
+ String description = getName() + "-" + getClass().getName();
+ // name/description
+ attrs.putValue(Constants.BUNDLE_NAME, "TestBundle-" + description);
+ attrs.putValue(Constants.BUNDLE_SYMBOLICNAME, "TestBundle-" + description);
+ attrs.putValue(Constants.BUNDLE_DESCRIPTION, "on-the-fly test bundle");
+
+ // activator
+ attrs.putValue(Constants.BUNDLE_ACTIVATOR, JUnitTestActivator.class.getName());
+
+ // add Import-Package entry
+ addImportPackage(manifest);
+
+ if (logger.isDebugEnabled())
+ logger.debug("Created manifest:" + manifest.getMainAttributes().entrySet());
+ return manifest;
+ }
+
+ private void addImportPackage(Manifest manifest) {
+ String[] rawImports = determineImports();
+
+ boolean trace = logger.isTraceEnabled();
+
+ if (trace)
+ logger.trace("Discovered raw imports " + ObjectUtils.nullSafeToString(rawImports));
+
+ Collection specialImportsOut = eliminateSpecialPackages(rawImports);
+ Collection imports = eliminatePackagesAvailableInTheJar(specialImportsOut);
+
+ if (trace)
+ logger.trace("Filtered imports are " + imports);
+
+ manifest.getMainAttributes().putValue(Constants.IMPORT_PACKAGE,
+ StringUtils.collectionToCommaDelimitedString(imports));
+ }
+
+ /**
+ * Eliminate 'special' packages (java.*, test framework internal and the
+ * class declaring package)
+ *
+ * @param rawImports
+ * @return
+ */
+ private Collection eliminateSpecialPackages(String[] rawImports) {
+ String currentPckg = ClassUtils.classPackageAsResourcePath(getClass()).replace('/', '.');
+
+ Set filteredImports = new LinkedHashSet(rawImports.length);
+ Set eliminatedImports = new LinkedHashSet(4);
+
+ for (int i = 0; i < rawImports.length; i++) {
+ String pckg = rawImports[i];
+
+ if (!(pckg.startsWith("java.") || pckg.startsWith("org.eclipse.gemini.blueprint.test.internal") || pckg.equals(currentPckg)))
+ filteredImports.add(pckg);
+ else
+ eliminatedImports.add(pckg);
+ }
+
+ if (!eliminatedImports.isEmpty() && logger.isTraceEnabled())
+ logger.trace("Eliminated special packages " + eliminatedImports);
+
+ return filteredImports;
+ }
+
+ /**
+ * Eliminates imports for packages already included in the bundle. Works
+ * only if the jar content is known (variable 'jarEntries' set).
+ *
+ * @param imports
+ * @return
+ */
+ private Collection eliminatePackagesAvailableInTheJar(Collection imports) {
+ // no jar entry present, bail out.
+ if (jarEntries == null || jarEntries.isEmpty())
+ return imports;
+
+ Set filteredImports = new LinkedHashSet(imports.size());
+ Collection eliminatedImports = new LinkedHashSet(2);
+
+ Collection jarPackages = jarCreator.getContainedPackages();
+ for (Iterator iterator = imports.iterator(); iterator.hasNext();) {
+ String pckg = (String) iterator.next();
+ if (jarPackages.contains(pckg))
+ eliminatedImports.add(pckg);
+ else
+ filteredImports.add(pckg);
+ }
+ if (!eliminatedImports.isEmpty() && logger.isTraceEnabled())
+ logger.trace("Eliminated packages already present in the bundle " + eliminatedImports);
+
+ return filteredImports;
+ }
+
+ /**
+ * Determine imports for the given bundle. Based on the user settings, this
+ * method will consider only the the test hierarchy until the testing
+ * framework is found or all classes available inside the test bundle. <p/>
+ * Note that split packages are not supported.
+ *
+ * @return
+ */
+ private String[] determineImports() {
+
+ boolean useTestClassOnly = false;
+
+ // no jar entry present, bail out.
+ if (jarEntries == null || jarEntries.isEmpty()) {
+ logger.debug("No test jar content detected, generating bundle imports from the test class");
+ useTestClassOnly = true;
+ }
+
+ else if (createManifestOnlyFromTestClass()) {
+ logger.info("Using the test class for generating bundle imports");
+ useTestClassOnly = true;
+ }
+ else
+ logger.info("Using all classes in the jar for the generation of bundle imports");
+
+ // className, class resource
+ Map entries;
+
+ if (useTestClassOnly) {
+
+ entries = new LinkedHashMap(4);
+
+ // get current class (test class that bootstraps the OSGi infrastructure)
+ Class<?> clazz = getClass();
+ String clazzPackage = null;
+ String endPackage = AbstractOnTheFlyBundleCreatorTests.class.getPackage().getName();
+
+ do {
+
+ // consider inner classes as well
+ List classes = new ArrayList(4);
+ classes.add(clazz);
+ CollectionUtils.mergeArrayIntoCollection(clazz.getDeclaredClasses(), classes);
+
+ for (Iterator iterator = classes.iterator(); iterator.hasNext();) {
+ Class<?> classToInspect = (Class) iterator.next();
+
+ Package pkg = classToInspect.getPackage();
+ if (pkg != null) {
+ clazzPackage = pkg.getName();
+ String classFile = ClassUtils.getClassFileName(classToInspect);
+ entries.put(classToInspect.getName().replace('.', '/').concat(ClassUtils.CLASS_FILE_SUFFIX),
+ new InputStreamResource(classToInspect.getResourceAsStream(classFile)));
+ }
+ // handle default package
+ else {
+ logger.warn("Could not find package for class " + classToInspect + "; ignoring...");
+ }
+ }
+
+ clazz = clazz.getSuperclass();
+
+ } while (!endPackage.equals(clazzPackage));
+ }
+ else
+ entries = jarEntries;
+
+ return determineImportsFor(entries);
+
+ }
+
+ private String[] determineImportsFor(Map entries) {
+ // get contained packages to do matching on the test hierarchy
+ Collection containedPackages = jarCreator.getContainedPackages();
+ Set cumulatedPackages = new LinkedHashSet();
+
+ // make sure the collection package is valid
+ boolean validPackageCollection = !containedPackages.isEmpty();
+
+ boolean trace = logger.isTraceEnabled();
+
+ for (Iterator iterator = entries.entrySet().iterator(); iterator.hasNext();) {
+ Map.Entry entry = (Map.Entry) iterator.next();
+ String resourceName = (String) entry.getKey();
+
+ // filter out the test hierarchy
+ if (resourceName.endsWith(ClassUtils.CLASS_FILE_SUFFIX)) {
+ if (trace)
+ logger.trace("Analyze imports for test bundle resource " + resourceName);
+ String classFileName = StringUtils.getFilename(resourceName);
+ String className = classFileName.substring(0, classFileName.length()
+ - ClassUtils.CLASS_FILE_SUFFIX.length());
+ String classPkg = resourceName.substring(0, resourceName.length() - classFileName.length()).replace(
+ '/', '.');
+
+ if (classPkg.startsWith("."))
+ classPkg = classPkg.substring(1);
+
+ if (classPkg.endsWith("."))
+ classPkg = classPkg.substring(0, classPkg.length() - 1);
+
+ // if we don't have the package, add it
+ if (validPackageCollection && StringUtils.hasText(classPkg) && !containedPackages.contains(classPkg)) {
+ logger.trace("Package [" + classPkg + "] is NOT part of the test archive; adding an import for it");
+ cumulatedPackages.add(classPkg);
+ }
+
+ // otherwise parse the class byte-code
+ else {
+ if (trace)
+ logger.trace("Package [" + classPkg + "] is part of the test archive; parsing " + className
+ + " bytecode to determine imports...");
+ cumulatedPackages.addAll(determineImportsForClass(className, (Resource) entry.getValue()));
+ }
+ }
+ }
+
+ return (String[]) cumulatedPackages.toArray(new String[cumulatedPackages.size()]);
+ }
+
+ /**
+ * Determine imports for a class given as a String resource. This method
+ * doesn't do any search for the enclosing/inner classes as it considers
+ * that these should be handled at a higher level.
+ *
+ * The returned set contains the packages in string format (i.e. java.io)
+ *
+ * @param className
+ * @param resource
+ * @return
+ */
+ private Set determineImportsForClass(String className, Resource resource) {
+ Assert.notNull(resource, "a not-null class is required");
+ DependencyVisitor visitor = new DependencyVisitor();
+
+ boolean trace = logger.isTraceEnabled();
+
+ ClassReader reader;
+
+ try {
+ if (trace)
+ logger.trace("Visiting class " + className);
+ reader = new ClassReader(resource.getInputStream());
+ }
+ catch (Exception ex) {
+ throw (RuntimeException) new IllegalArgumentException("Cannot read class " + className).initCause(ex);
+ }
+ reader.accept(visitor, false);
+
+ // convert from / to . format
+ Set originalPackages = visitor.getPackages();
+ Set pkgs = new LinkedHashSet(originalPackages.size());
+
+ for (Iterator iterator = originalPackages.iterator(); iterator.hasNext();) {
+ String pkg = (String) iterator.next();
+ pkgs.add(pkg.replace('/', '.'));
+ }
+ return pkgs;
+ }
+
+ protected void postProcessBundleContext(BundleContext context) throws Exception {
+ logger.debug("Post processing: creating test bundle");
+
+ Resource jar;
+
+ Manifest mf = getManifest();
+
+ // if the jar content hasn't been discovered yet (while creating the manifest)
+ // do so now
+ if (jarEntries == null) {
+ // set root path
+ jarCreator.setRootPath(getRootPath());
+ // add the content pattern
+ jarCreator.setContentPattern(getBundleContentPattern());
+
+ // use jar creator for pattern discovery
+ jar = jarCreator.createJar(mf);
+ }
+
+ // otherwise use the cached resources
+ else {
+ jar = jarCreator.createJar(mf, jarEntries);
+ }
+
+ try {
+ installAndStartBundle(context, jar);
+ }
+ catch (Exception e) {
+ IllegalStateException ise = new IllegalStateException(
+ "Unable to dynamically start generated unit test bundle");
+ ise.initCause(e);
+ throw ise;
+ }
+
+ // now do the delegation
+ super.postProcessBundleContext(context);
+ }
+
+ private void installAndStartBundle(BundleContext context, Resource resource) throws Exception {
+ // install & start
+ Bundle bundle = context.installBundle("[onTheFly-test-bundle]" + ClassUtils.getShortName(getClass()) + "["
+ + hashCode() + "]", resource.getInputStream());
+
+ String bundleString = OsgiStringUtils.nullSafeNameAndSymName(bundle);
+ boolean debug = logger.isDebugEnabled();
+
+ if (debug)
+ logger.debug("Test bundle [" + bundleString + "] successfully installed");
+ bundle.start();
+ if (debug)
+ logger.debug("Test bundle [" + bundleString + "] successfully started");
+ }
+
+}
diff --git a/test-support/src/main/java/org/eclipse/gemini/blueprint/test/platform/EquinoxPlatform.java b/test-support/src/main/java/org/eclipse/gemini/blueprint/test/platform/EquinoxPlatform.java
index f55fcec..668d956 100644
--- a/test-support/src/main/java/org/eclipse/gemini/blueprint/test/platform/EquinoxPlatform.java
+++ b/test-support/src/main/java/org/eclipse/gemini/blueprint/test/platform/EquinoxPlatform.java
@@ -1,91 +1,91 @@
-/******************************************************************************
- * Copyright (c) 2006, 2010 VMware Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * and Apache License v2.0 which accompanies this distribution.
- * The Eclipse Public License is available at
- * http://www.eclipse.org/legal/epl-v10.html and the Apache License v2.0
- * is available at http://www.opensource.org/licenses/apache2.0.php.
- * You may elect to redistribute this code under either of these licenses.
- *
- * Contributors:
- * VMware Inc.
- *****************************************************************************/
-
-package org.eclipse.gemini.blueprint.test.platform;
-
-import java.lang.reflect.Field;
-import java.security.AccessController;
-import java.security.PrivilegedAction;
-import java.util.Properties;
-
-import org.eclipse.core.runtime.adaptor.EclipseStarter;
-import org.osgi.framework.BundleContext;
-
-/**
- * Equinox (3.2.x) OSGi platform.
- *
- * @author Costin Leau
- *
- */
-public class EquinoxPlatform extends AbstractOsgiPlatform {
-
- private BundleContext context;
-
-
- public EquinoxPlatform() {
- toString = "Equinox OSGi Platform";
- }
-
- Properties getPlatformProperties() {
- // default properties
- Properties props = new Properties();
- props.setProperty("eclipse.ignoreApp", "true");
- props.setProperty("osgi.clean", "true");
- props.setProperty("osgi.noShutdown", "true");
-
- // local temporary folder for running tests
- // prevents accidental rewrites
- props.setProperty("osgi.configuration.area", "eclipse_config");
- props.setProperty("osgi.instance.area", "eclipse_config");
- props.setProperty("osgi.user.area", "eclipse_config");
-
- // props.setProperty("eclipse.consoleLog", "true");
- // props.setProperty("osgi.debug", "");
-
- return props;
- }
-
- public BundleContext getBundleContext() {
- return context;
- }
-
- public void start() throws Exception {
-
- if (context == null) {
- // copy configuration properties to sys properties
- System.getProperties().putAll(getConfigurationProperties());
-
- // Equinox 3.1.x returns void - use of reflection is required
- // use main since in 3.1.x it sets up some system properties
- EclipseStarter.main(new String[0]);
-
- final Field field = EclipseStarter.class.getDeclaredField("context");
-
- AccessController.doPrivileged(new PrivilegedAction<Object>() {
- public Object run() {
- field.setAccessible(true);
- return null;
- }
- });
- context = (BundleContext) field.get(null);
- }
- }
-
- public void stop() throws Exception {
- if (context != null) {
- context = null;
- EclipseStarter.shutdown();
- }
- }
+/******************************************************************************
+ * Copyright (c) 2006, 2010 VMware Inc.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * and Apache License v2.0 which accompanies this distribution.
+ * The Eclipse Public License is available at
+ * http://www.eclipse.org/legal/epl-v10.html and the Apache License v2.0
+ * is available at http://www.opensource.org/licenses/apache2.0.php.
+ * You may elect to redistribute this code under either of these licenses.
+ *
+ * Contributors:
+ * VMware Inc.
+ *****************************************************************************/
+
+package org.eclipse.gemini.blueprint.test.platform;
+
+import java.lang.reflect.Field;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+import java.util.Properties;
+
+import org.eclipse.core.runtime.adaptor.EclipseStarter;
+import org.osgi.framework.BundleContext;
+
+/**
+ * Equinox (3.2.x) OSGi platform.
+ *
+ * @author Costin Leau
+ *
+ */
+public class EquinoxPlatform extends AbstractOsgiPlatform {
+
+ private BundleContext context;
+
+
+ public EquinoxPlatform() {
+ toString = "Equinox OSGi Platform";
+ }
+
+ Properties getPlatformProperties() {
+ // default properties
+ Properties props = new Properties();
+ props.setProperty("eclipse.ignoreApp", "true");
+ props.setProperty("osgi.clean", "true");
+ props.setProperty("osgi.noShutdown", "true");
+
+ // local temporary folder for running tests
+ // prevents accidental rewrites
+ props.setProperty("osgi.configuration.area", "./target/eclipse_config");
+ props.setProperty("osgi.instance.area", "./target/eclipse_config");
+ props.setProperty("osgi.user.area", "./target/eclipse_config");
+
+ // props.setProperty("eclipse.consoleLog", "true");
+ // props.setProperty("osgi.debug", "");
+
+ return props;
+ }
+
+ public BundleContext getBundleContext() {
+ return context;
+ }
+
+ public void start() throws Exception {
+
+ if (context == null) {
+ // copy configuration properties to sys properties
+ System.getProperties().putAll(getConfigurationProperties());
+
+ // Equinox 3.1.x returns void - use of reflection is required
+ // use main since in 3.1.x it sets up some system properties
+ EclipseStarter.main(new String[0]);
+
+ final Field field = EclipseStarter.class.getDeclaredField("context");
+
+ AccessController.doPrivileged(new PrivilegedAction<Object>() {
+ public Object run() {
+ field.setAccessible(true);
+ return null;
+ }
+ });
+ context = (BundleContext) field.get(null);
+ }
+ }
+
+ public void stop() throws Exception {
+ if (context != null) {
+ context = null;
+ EclipseStarter.shutdown();
+ }
+ }
} \ No newline at end of file
diff --git a/test-support/src/main/resources/org/eclipse/gemini/blueprint/test/internal/boot-bundles.properties b/test-support/src/main/resources/org/eclipse/gemini/blueprint/test/internal/boot-bundles.properties
index 9b2b54e..aafbd8d 100644
--- a/test-support/src/main/resources/org/eclipse/gemini/blueprint/test/internal/boot-bundles.properties
+++ b/test-support/src/main/resources/org/eclipse/gemini/blueprint/test/internal/boot-bundles.properties
@@ -1,77 +1,76 @@
-#
-# Properties file indicating the boot (or mandatory) bundles that are loaded
-# by the testing framework.
-#
-# Normally, this file should not be edited since it is used by the testing infrastructure.
-# Users that want to install bundles before starting a test, should use #bundles() method.
-#
-
-#
-# format: <groupId,artifactId,version>=+/-15
-# - the optional value is used to install/remove bundles if running on JDK >= 1.5
-# - see Spring org.springframework.core.JdkVersion for jdk major version codes.
-
-# elements that have to be ignored should star with
-# ignore
-
-# Note: inner placeholders are not supported.
-
-#
-# common properties
-#
-
-# versioning
-ignore.junit.version=3.8.2
-ignore.log4j.version=1.2.15
-
-ignore.spring.version=3.0.6.RELEASE
-ignore.gemini.blueprint.version=1.0.1.BUILD-SNAPSHOT
-ignore.slf4j.version=1.5.6
-ignore.asm.version=2.2.3
-
-# groupIds
-ignore.spring.groupId=org.springframework
-ignore.gemini.blueprint.groupId=org.eclipse.gemini.blueprint
-ignore.slf4j.groupId=org.slf4j
-
-#
-# actual libraries
-#
-# listed in dependency order to ease deployment
-
-
-# dependencies
-
-# junit
-org.junit,com.springsource.junit,${ignore.junit.version}=
-# log4j
-org.apache.log4j,com.springsource.org.apache.log4j,${ignore.log4j.version}=
-# slf4j (commons-logging API)
-#${ignore.slf4j.groupId},slf4j-api,${ignore.slf4j.version}=
-#${ignore.slf4j.groupId},slf4j-log4j12,${ignore.slf4j.version}=
-#${ignore.slf4j.groupId},jcl104-over-slf4j,${ignore.slf4j.version}=
-# slf4j (BRITS)
-${ignore.slf4j.groupId},com.springsource.slf4j.api,${ignore.slf4j.version}=
-${ignore.slf4j.groupId},com.springsource.slf4j.log4j,${ignore.slf4j.version}=
-${ignore.slf4j.groupId},com.springsource.slf4j.org.apache.commons.logging,${ignore.slf4j.version}=
-# aop alliance
-org.aopalliance,com.springsource.org.aopalliance,1.0.0=
-# asm
-org.objectweb.asm,com.springsource.org.objectweb.asm,${ignore.asm.version}=
-
-# spring libs
-${ignore.spring.groupId},org.springframework.asm,${ignore.spring.version}=
-${ignore.spring.groupId},org.springframework.beans,${ignore.spring.version}=
-${ignore.spring.groupId},org.springframework.core,${ignore.spring.version}=
-${ignore.spring.groupId},org.springframework.context,${ignore.spring.version}=
-${ignore.spring.groupId},org.springframework.expression,${ignore.spring.version}=
-${ignore.spring.groupId},org.springframework.aop,${ignore.spring.version}=
-${ignore.spring.groupId},org.springframework.test,${ignore.spring.version}=
-
-
-# gemini blueprint libs
-${ignore.gemini.blueprint.groupId},gemini-blueprint-io,${ignore.gemini.blueprint.version}=
-${ignore.gemini.blueprint.groupId},gemini-blueprint-core,${ignore.gemini.blueprint.version}=
-#${ignore.gemini.blueprint.groupId},gemini-blueprint-annotation,${ignore.gemini.blueprint.version}=+15
-${ignore.gemini.blueprint.groupId},gemini-blueprint-extender,${ignore.gemini.blueprint.version}=
-${ignore.gemini.blueprint.groupId},gemini-blueprint-test,${ignore.gemini.blueprint.version}=
+#
+# Properties file indicating the boot (or mandatory) bundles that are loaded
+# by the testing framework.
+#
+# Normally, this file should not be edited since it is used by the testing infrastructure.
+# Users that want to install bundles before starting a test, should use #bundles() method.
+#
+
+#
+# format: <groupId,artifactId,version>=+/-15
+# - the optional value is used to install/remove bundles if running on JDK >= 1.5
+# - see Spring org.springframework.core.JdkVersion for jdk major version codes.
+
+# elements that have to be ignored should star with
+# ignore
+
+# Note: inner placeholders are not supported.
+
+#
+# common properties
+#
+
+# versioning
+ignore.junit.version=4.9.0
+ignore.log4j.version=1.2.16
+
+ignore.spring.version=3.0.7.RELEASE
+ignore.gemini.blueprint.version=1.0.1.BUILD-SNAPSHOT
+ignore.slf4j.version=1.6.4
+ignore.asm.version=2.2.3
+
+# groupIds
+ignore.spring.groupId=org.springframework
+ignore.gemini.blueprint.groupId=org.eclipse.gemini.blueprint
+ignore.slf4j.groupId=org.slf4j
+
+#
+# actual libraries
+#
+# listed in dependency order to ease deployment
+
+
+# dependencies
+
+# junit
+org.junit,com.springsource.org.junit,${ignore.junit.version}=
+# log4j
+org.apache.log4j,com.springsource.org.apache.log4j,${ignore.log4j.version}=
+# slf4j (commons-logging API)
+#${ignore.slf4j.groupId},slf4j-api,${ignore.slf4j.version}=
+#${ignore.slf4j.groupId},slf4j-log4j12,${ignore.slf4j.version}=
+#${ignore.slf4j.groupId},jcl104-over-slf4j,${ignore.slf4j.version}=
+# slf4j (BRITS)
+${ignore.slf4j.groupId},slf4j-api,${ignore.slf4j.version}=
+${ignore.slf4j.groupId},slf4j-log4j12,${ignore.slf4j.version}=
+${ignore.slf4j.groupId},jcl-over-slf4j,${ignore.slf4j.version}=
+# aop alliance
+org.aopalliance,com.springsource.org.aopalliance,1.0.0=
+# asm
+org.objectweb.asm,com.springsource.org.objectweb.asm,${ignore.asm.version}=
+
+# spring libs
+${ignore.spring.groupId},spring-asm,${ignore.spring.version}=
+${ignore.spring.groupId},spring-beans,${ignore.spring.version}=
+${ignore.spring.groupId},spring-core,${ignore.spring.version}=
+${ignore.spring.groupId},spring-context,${ignore.spring.version}=
+${ignore.spring.groupId},spring-expression,${ignore.spring.version}=
+${ignore.spring.groupId},spring-aop,${ignore.spring.version}=
+${ignore.spring.groupId},spring-test,${ignore.spring.version}=
+
+
+# gemini blueprint libs
+${ignore.gemini.blueprint.groupId},gemini-blueprint-io,${ignore.gemini.blueprint.version}=
+${ignore.gemini.blueprint.groupId},gemini-blueprint-core,${ignore.gemini.blueprint.version}=
+${ignore.gemini.blueprint.groupId},gemini-blueprint-extender,${ignore.gemini.blueprint.version}=
+${ignore.gemini.blueprint.groupId},gemini-blueprint-test,${ignore.gemini.blueprint.version}= \ No newline at end of file