Hmm this seems to break the build for me.
Michael

On 4.5.12 13:37, [email protected] wrote:
Author: thomasm
Date: Fri May  4 12:37:04 2012
New Revision: 1333911

URL: http://svn.apache.org/viewvc?rev=1333911&view=rev
Log:
OAK-67 OSGi Bundle Setup - add an OSGi service for (in-memory and persisted) 
MicroKernel instances

Added:
     
jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/osgi/MicroKernelService.java
       - copied, changed from r1333794, 
jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/osgi/Activator.java
Removed:
     
jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/osgi/Activator.java
Modified:
     jackrabbit/oak/trunk/oak-mk/pom.xml

Modified: jackrabbit/oak/trunk/oak-mk/pom.xml
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-mk/pom.xml?rev=1333911&r1=1333910&r2=1333911&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-mk/pom.xml (original)
+++ jackrabbit/oak/trunk/oak-mk/pom.xml Fri May  4 12:37:04 2012
@@ -47,12 +47,22 @@
                org.apache.jackrabbit.mk.client,
                org.apache.jackrabbit.mk.blobs
              </Export-Package>
-<Bundle-Activator>
-              org.apache.jackrabbit.mk.osgi.Activator
-</Bundle-Activator>
            </instructions>
          </configuration>
        </plugin>
+<plugin>
+<groupId>org.apache.felix</groupId>
+<artifactId>maven-scr-plugin</artifactId>
+<version>1.7.2</version>
+<executions>
+<execution>
+<id>generate-scr-scrdescriptor</id>
+<goals>
+<goal>scr</goal>
+</goals>
+</execution>
+</executions>
+</plugin>
      </plugins>
      <pluginManagement>
        <plugins>
@@ -78,10 +88,22 @@
        <optional>true</optional>
      </dependency>
      <dependency>
+<groupId>org.osgi</groupId>
+<artifactId>org.osgi.compendium</artifactId>
+<scope>provided</scope>
+<optional>true</optional>
+</dependency>
+<dependency>
        <groupId>biz.aQute</groupId>
        <artifactId>bndlib</artifactId>
        <scope>provided</scope>
      </dependency>
+<dependency>
+<groupId>org.apache.felix</groupId>
+<artifactId>org.apache.felix.scr.annotations</artifactId>
+<scope>provided</scope>
+</dependency>
+

      <!-- commons dependency -->
      <dependency>

Copied: 
jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/osgi/MicroKernelService.java
 (from r1333794, 
jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/osgi/Activator.java)
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/osgi/MicroKernelService.java?p2=jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/osgi/MicroKernelService.java&p1=jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/osgi/Activator.java&r1=1333794&r2=1333911&rev=1333911&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/osgi/Activator.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/osgi/MicroKernelService.java
 Fri May  4 12:37:04 2012
@@ -16,31 +16,44 @@
   */
  package org.apache.jackrabbit.mk.osgi;

-import java.util.Properties;
-
+import org.osgi.service.component.ComponentContext;
+import org.apache.felix.scr.annotations.Component;
+import org.apache.felix.scr.annotations.Deactivate;
+import org.apache.felix.scr.annotations.Property;
+import org.apache.felix.scr.annotations.Service;
+import org.apache.felix.scr.annotations.Activate;
  import org.apache.jackrabbit.mk.api.MicroKernel;
  import org.apache.jackrabbit.mk.core.MicroKernelImpl;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.ServiceRegistration;

-public class Activator implements BundleActivator {
+@Component
+@Service(MicroKernel.class)
+public class MicroKernelService extends MicroKernelImpl {
+
+    @Property(description="The unique name of this instance")
+    public static final String NAME = "name";

-    private ServiceRegistration registration;
+    @Property(description="The home directory (in-memory if not set)")
+    public static final String HOME_DIR = "homeDir";

-    //-----------------------------------------------------<  
BundleActivator>--
+    private String name;

      @Override
-    public void start(BundleContext context) throws Exception {
-        registration = context.registerService(
-                MicroKernel.class.getName(),
-                new MicroKernelImpl(),
-                new Properties());
+    public String toString() {
+        return name;
      }

-    @Override
-    public void stop(BundleContext context) throws Exception {
-        registration.unregister();
+    @Activate
+    public void activate(ComponentContext context) {
+        Object homeDir = context.getProperties().get(HOME_DIR);
+        name = "" + context.getProperties().get(NAME);
+        if (homeDir != null) {
+            init(homeDir.toString());
+        }
+    }
+
+    @Deactivate
+    public void deactivate() {
+        dispose();
      }

  }



Reply via email to