Author: chetanm
Date: Sat Mar 15 08:20:23 2014
New Revision: 1577805

URL: http://svn.apache.org/r1577805
Log:
OAK-1502 - Make DataStores available to NodeStores

-- Removing usage of abstractComponent support by using default names for 
activate and deactivate

Modified:
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/AbstractDataStoreService.java

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/AbstractDataStoreService.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/AbstractDataStoreService.java?rev=1577805&r1=1577804&r2=1577805&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/AbstractDataStoreService.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/AbstractDataStoreService.java
 Sat Mar 15 08:20:23 2014
@@ -19,24 +19,23 @@
 
 package org.apache.jackrabbit.oak.plugins.blob.datastore;
 
+import java.util.Dictionary;
+import java.util.Hashtable;
 import java.util.Map;
 
 import javax.jcr.RepositoryException;
 
-import org.apache.felix.scr.annotations.Activate;
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Deactivate;
 import org.apache.jackrabbit.core.data.DataStore;
 import org.apache.jackrabbit.core.data.DataStoreException;
 import org.apache.jackrabbit.oak.commons.PropertiesUtil;
 import org.apache.jackrabbit.oak.spi.blob.BlobStore;
 import org.apache.jackrabbit.oak.spi.blob.GarbageCollectableBlobStore;
+import org.osgi.framework.Constants;
 import org.osgi.framework.ServiceRegistration;
 import org.osgi.service.component.ComponentContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-@Component(componentAbstract = true)
 public abstract class AbstractDataStoreService {
     private static final String PROP_HOME = "repository.home";
 
@@ -46,25 +45,27 @@ public abstract class AbstractDataStoreS
 
     private DataStore dataStore;
 
-    @Activate
     protected void activate(ComponentContext context, Map<String, Object> 
config) throws RepositoryException {
         DataStore ds = createDataStore(context, config);
 
         String homeDir = lookup(context, PROP_HOME);
         if (homeDir != null) {
-            log.debug("Initializing the DataStore with homeDir [{}]", homeDir);
+            log.info("Initializing the DataStore with homeDir [{}]", homeDir);
         }
         PropertiesUtil.populate(ds, config, false);
-        ds.init(lookup(context, PROP_HOME));
+        ds.init(homeDir);
         this.dataStore = new DataStoreBlobStore(ds);
+
+        Dictionary<String, String> props = new Hashtable<String, String>();
+        props.put(Constants.SERVICE_PID, ds.getClass().getName());
+
         reg = context.getBundleContext().registerService(new String[]{
                 DataStore.class.getName(),
                 BlobStore.class.getName(),
                 GarbageCollectableBlobStore.class.getName()
-        }, ds , null);
+        }, dataStore , props);
     }
 
-    @Deactivate
     protected void deactivate() throws DataStoreException {
         if (reg != null) {
             reg.unregister();


Reply via email to