Author: jbonofre
Date: Thu Aug 11 20:19:33 2011
New Revision: 1156806

URL: http://svn.apache.org/viewvc?rev=1156806&view=rev
Log:
Inject OBR RepositoryAdmin service.

Modified:
    
karaf/sandbox/jbonofre/cave/trunk/server/backend/filesystem/src/main/java/org/apache/karaf/cave/server/backend/impl/CaveRepositoryImpl.java
    
karaf/sandbox/jbonofre/cave/trunk/server/backend/filesystem/src/main/resources/OSGI-INF/blueprint/cave-filesystem-backend.xml

Modified: 
karaf/sandbox/jbonofre/cave/trunk/server/backend/filesystem/src/main/java/org/apache/karaf/cave/server/backend/impl/CaveRepositoryImpl.java
URL: 
http://svn.apache.org/viewvc/karaf/sandbox/jbonofre/cave/trunk/server/backend/filesystem/src/main/java/org/apache/karaf/cave/server/backend/impl/CaveRepositoryImpl.java?rev=1156806&r1=1156805&r2=1156806&view=diff
==============================================================================
--- 
karaf/sandbox/jbonofre/cave/trunk/server/backend/filesystem/src/main/java/org/apache/karaf/cave/server/backend/impl/CaveRepositoryImpl.java
 (original)
+++ 
karaf/sandbox/jbonofre/cave/trunk/server/backend/filesystem/src/main/java/org/apache/karaf/cave/server/backend/impl/CaveRepositoryImpl.java
 Thu Aug 11 20:19:33 2011
@@ -84,6 +84,14 @@ public class CaveRepositoryImpl implemen
         this.location = location;
     }
 
+    public RepositoryAdmin getRepositoryAdmin() {
+        return this.repositoryAdmin;
+    }
+
+    public void setRepositoryAdmin(RepositoryAdmin repositoryAdmin) {
+        this.repositoryAdmin = repositoryAdmin;
+    }
+
     /**
      * Generate the repository.xml with the artifact at the given URL.
      *
@@ -184,7 +192,11 @@ public class CaveRepositoryImpl implemen
      */
     public void register() throws Exception {
         File repositoryXml = new File(location, "repository.xml");
-        repositoryAdmin.addRepository(repositoryXml.toURI().toURL());
+        if (repositoryXml != null && repositoryXml.exists()) {
+            repositoryAdmin.addRepository(repositoryXml.toURI().toURL());
+        } else {
+            throw new IllegalStateException("OBR repository.xml not found");
+        }
     }
 
     /**

Modified: 
karaf/sandbox/jbonofre/cave/trunk/server/backend/filesystem/src/main/resources/OSGI-INF/blueprint/cave-filesystem-backend.xml
URL: 
http://svn.apache.org/viewvc/karaf/sandbox/jbonofre/cave/trunk/server/backend/filesystem/src/main/resources/OSGI-INF/blueprint/cave-filesystem-backend.xml?rev=1156806&r1=1156805&r2=1156806&view=diff
==============================================================================
--- 
karaf/sandbox/jbonofre/cave/trunk/server/backend/filesystem/src/main/resources/OSGI-INF/blueprint/cave-filesystem-backend.xml
 (original)
+++ 
karaf/sandbox/jbonofre/cave/trunk/server/backend/filesystem/src/main/resources/OSGI-INF/blueprint/cave-filesystem-backend.xml
 Thu Aug 11 20:19:33 2011
@@ -23,8 +23,11 @@
 
     <bean id="caveRepositoryService" 
class="org.apache.karaf.cave.server.backend.impl.CaveRepositoryServiceImpl">
         <property name="storageLocation" value="cave"/>
+        <property name="repositoryAdmin" ref="repositoryAdmin"/>
     </bean>
 
+    <reference id="repositoryAdmin" 
interface="org.apache.felix.bundlerepository.RepositoryAdmin"/>
+
     <service ref="caveRepositoryService" 
interface="org.apache.karaf.cave.server.backend.api.CaveRepositoryService"/>
 
     <!-- allow the use of system properties -->


Reply via email to