You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by ju...@apache.org on 2011/03/10 19:21:26 UTC
svn commit: r1080306 - in /jackrabbit/sandbox/osgi: jackrabbit-bundle-it/
jackrabbit-bundle-it/src/main/ jackrabbit-bundle-it/src/main/java/
jackrabbit-bundle-it/src/main/java/org/
jackrabbit-bundle-it/src/main/java/org/apache/ jackrabbit-bundle-it/src...
Author: jukka
Date: Thu Mar 10 18:21:26 2011
New Revision: 1080306
URL: http://svn.apache.org/viewvc?rev=1080306&view=rev
Log:
JCR-2608: Making Jackrabbit content repo usable from OSGi (Equinox)
Simplify bundle setup. Use junit4osgi instead of pax exam for the possibility to run also the full JCR test suite.
Added:
jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/main/
jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/main/java/
jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/main/java/org/
jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/main/java/org/apache/
jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/main/java/org/apache/jackrabbit/
jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/main/java/org/apache/jackrabbit/test/
jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/main/java/org/apache/jackrabbit/test/osgi/
- copied from r1080192, jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/test/java/org/apache/jackrabbit/test/osgi/
Removed:
jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/test/
Modified:
jackrabbit/sandbox/osgi/jackrabbit-bundle-it/pom.xml
jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/main/java/org/apache/jackrabbit/test/osgi/BundleTest.java
jackrabbit/sandbox/osgi/jackrabbit-bundle/pom.xml
jackrabbit/sandbox/osgi/jackrabbit-bundle/src/main/java/org/apache/jackrabbit/bundle/Activator.java
Modified: jackrabbit/sandbox/osgi/jackrabbit-bundle-it/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/osgi/jackrabbit-bundle-it/pom.xml?rev=1080306&r1=1080305&r2=1080306&view=diff
==============================================================================
--- jackrabbit/sandbox/osgi/jackrabbit-bundle-it/pom.xml (original)
+++ jackrabbit/sandbox/osgi/jackrabbit-bundle-it/pom.xml Thu Mar 10 18:21:26 2011
@@ -30,14 +30,16 @@
<relativePath/>
</parent>
<artifactId>jackrabbit-bundle-it</artifactId>
+ <packaging>bundle</packaging>
<name>Jackrabbit OSGi integration tests</name>
- <properties>
- <pax.exam.version>1.2.2</pax.exam.version>
- </properties>
-
<dependencies>
<dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.ipojo.junit4osgi</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ <dependency>
<groupId>javax.jcr</groupId>
<artifactId>jcr</artifactId>
<version>2.0</version>
@@ -52,68 +54,51 @@
<dependency>
<groupId>org.apache.tika</groupId>
<artifactId>tika-bundle</artifactId>
- <version>0.9-SNAPSHOT</version>
+ <version>0.9</version>
<scope>provided</scope>
</dependency>
-
- <!-- Test tooling -->
- <dependency>
- <groupId>org.ops4j.pax.exam</groupId>
- <artifactId>pax-exam</artifactId>
- <version>${pax.exam.version}</version>
- <scope>test</scope>
- </dependency>
<dependency>
- <groupId>org.ops4j.pax.exam</groupId>
- <artifactId>pax-exam-container-default</artifactId>
- <version>${pax.exam.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.ops4j.pax.exam</groupId>
- <artifactId>pax-exam-junit</artifactId>
- <version>${pax.exam.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jackrabbit</groupId>
- <artifactId>jackrabbit-jcr-commons</artifactId>
- <version>2.3-SNAPSHOT</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.4</version>
- <scope>test</scope>
+ <groupId>org.apache.sling</groupId>
+ <artifactId>org.apache.sling.commons.log</artifactId>
+ <version>2.1.2</version>
+ <scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Test-Suite>
+ org.apache.jackrabbit.test.osgi.BundleTest
+ </Test-Suite>
+ </instructions>
+ </configuration>
+ </plugin>
+ <plugin>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
- <groupId>org.ops4j.pax.exam</groupId>
- <artifactId>maven-paxexam-plugin</artifactId>
- <version>${pax.exam.version}</version>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-junit4osgi-plugin</artifactId>
+ <version>1.0.0</version>
<executions>
<execution>
<goals>
- <goal>generate-depends-file</goal>
- <goal>generate-config</goal>
+ <goal>test</goal>
</goals>
+ <configuration>
+ <deployprojectartifact>true</deployprojectartifact>
+ </configuration>
</execution>
</executions>
- <configuration>
- <options>
- <profiles>ds,log</profiles>
- </options>
- </configuration>
</plugin>
</plugins>
</build>
Modified: jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/main/java/org/apache/jackrabbit/test/osgi/BundleTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/main/java/org/apache/jackrabbit/test/osgi/BundleTest.java?rev=1080306&r1=1080192&r2=1080306&view=diff
==============================================================================
--- jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/main/java/org/apache/jackrabbit/test/osgi/BundleTest.java (original)
+++ jackrabbit/sandbox/osgi/jackrabbit-bundle-it/src/main/java/org/apache/jackrabbit/test/osgi/BundleTest.java Thu Mar 10 18:21:26 2011
@@ -17,33 +17,37 @@
package org.apache.jackrabbit.test.osgi;
import javax.jcr.Repository;
+import javax.jcr.Session;
import junit.framework.Assert;
-import org.apache.jackrabbit.commons.JcrUtils;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.ops4j.pax.exam.junit.MavenConfiguredJUnit4TestRunner;
-import org.osgi.framework.BundleContext;
+import org.apache.felix.ipojo.junit4osgi.OSGiTestCase;
import org.osgi.framework.ServiceReference;
-@RunWith(MavenConfiguredJUnit4TestRunner.class)
-public class BundleTest {
+public class BundleTest extends OSGiTestCase {
- @Test
- public void testJackrabbitBundle(BundleContext context) throws Exception {
+ public void testJackrabbitBundle() throws Exception {
ServiceReference reference =
- context.getServiceReference(Repository.class.getName());
+ getServiceReference(Repository.class.getName());
Assert.assertNotNull(reference);
Assert.assertEquals(
"Jackrabbit",
reference.getProperty(Repository.REP_NAME_DESC));
- Repository repository = JcrUtils.getRepository();
- Assert.assertNotNull(repository);
+ Object service = getServiceObject(reference);
+ assertTrue(service instanceof Repository);
+
+ Repository repository = (Repository) service;
Assert.assertEquals(
"Jackrabbit",
repository.getDescriptor(Repository.REP_NAME_DESC));
+
+ Session session = repository.login();
+ try {
+ assertEquals("/", session.getRootNode().getPath());
+ } finally {
+ session.logout();
+ }
}
}
Modified: jackrabbit/sandbox/osgi/jackrabbit-bundle/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/osgi/jackrabbit-bundle/pom.xml?rev=1080306&r1=1080305&r2=1080306&view=diff
==============================================================================
--- jackrabbit/sandbox/osgi/jackrabbit-bundle/pom.xml (original)
+++ jackrabbit/sandbox/osgi/jackrabbit-bundle/pom.xml Thu Mar 10 18:21:26 2011
@@ -45,20 +45,12 @@
<Embed-Dependency>*;groupId=!org.osgi|javax.jcr</Embed-Dependency>
<Embed-Transitive>true</Embed-Transitive>
<Export-Package>
- org.apache.jackrabbit.api.*;version=${project.version},
- org.apache.jackrabbit.commons.*;version=${project.version},
- org.apache.jackrabbit.util.*;version=${project.version},
- org.apache.jackrabbit.value.*;version=${project.version}
+ org.apache.jackrabbit.api.*;version=${project.version}
</Export-Package>
<Import-Package>
*,
<!-- Optional dependencies from jackrabbit-core -->
org.apache.jackrabbit.test;resolution:=optional,
- org.apache.pdfbox;resolution:=optional,
- org.apache.pdfbox.cos;resolution:=optional,
- org.apache.pdfbox.pdmodel;resolution:=optional,
- org.apache.pdfbox.pdmodel.encryption;resolution:=optional,
- org.apache.pdfbox.util;resolution:=optional,
<!-- Optional dependencies from jackrabbit-webdav -->
javax.servlet;resolution:=optional,
javax.servlet.http;resolution:=optional,
@@ -109,16 +101,12 @@
<artifactId>jcr</artifactId>
</exclusion>
<exclusion>
- <groupId>org.apache.tika</groupId>
- <artifactId>tika-parsers</artifactId>
- </exclusion>
- <exclusion>
- <groupId>edu.ucar</groupId>
- <artifactId>netcdf</artifactId>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
+ <artifactId>jcl-over-slf4j</artifactId>
</exclusion>
</exclusions>
</dependency>
@@ -136,6 +124,10 @@
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>jcl-over-slf4j</artifactId>
+ </exclusion>
</exclusions>
</dependency>
</dependencies>
Modified: jackrabbit/sandbox/osgi/jackrabbit-bundle/src/main/java/org/apache/jackrabbit/bundle/Activator.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/osgi/jackrabbit-bundle/src/main/java/org/apache/jackrabbit/bundle/Activator.java?rev=1080306&r1=1080305&r2=1080306&view=diff
==============================================================================
--- jackrabbit/sandbox/osgi/jackrabbit-bundle/src/main/java/org/apache/jackrabbit/bundle/Activator.java (original)
+++ jackrabbit/sandbox/osgi/jackrabbit-bundle/src/main/java/org/apache/jackrabbit/bundle/Activator.java Thu Mar 10 18:21:26 2011
@@ -21,7 +21,6 @@ import java.util.Hashtable;
import javax.jcr.Repository;
-import org.apache.jackrabbit.core.RepositoryFactoryImpl;
import org.apache.jackrabbit.core.RepositoryImpl;
import org.apache.jackrabbit.core.config.RepositoryConfig;
import org.osgi.framework.BundleActivator;
@@ -37,7 +36,6 @@ public class Activator implements Bundle
public void start(BundleContext context) throws Exception {
repository = RepositoryImpl.create(
RepositoryConfig.install(new File("jackrabbit")));
- RepositoryFactoryImpl.setDefaultRepository(repository);
Hashtable<String, String> properties = new Hashtable<String, String>();
for (String key : repository.getDescriptorKeys()) {
@@ -53,7 +51,6 @@ public class Activator implements Bundle
public void stop(BundleContext context) throws Exception {
registration.unregister();
- RepositoryFactoryImpl.setDefaultRepository(null);
repository.shutdown();
}