]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - org.argeo.server.jcr/src/org/argeo/jackrabbit/JackrabbitRepositoryFactory.java
Improve and simplify OSGi Boot
[lgpl/argeo-commons.git] / org.argeo.server.jcr / src / org / argeo / jackrabbit / JackrabbitRepositoryFactory.java
index e5bb3bce0e3d00d2901febc697e4bd127989497e..e4134883c1ad6b9bb970919d41e9d0d1b75c0977 100644 (file)
@@ -36,7 +36,6 @@ import org.apache.jackrabbit.core.RepositoryImpl;
 import org.apache.jackrabbit.core.config.RepositoryConfig;
 import org.apache.jackrabbit.core.config.RepositoryConfigurationParser;
 import org.apache.jackrabbit.jcr2dav.Jcr2davRepositoryFactory;
-import org.argeo.ArgeoException;
 import org.argeo.jcr.ArgeoJcrConstants;
 import org.argeo.jcr.ArgeoJcrException;
 import org.springframework.core.io.ClassPathResource;
@@ -48,12 +47,11 @@ import org.xml.sax.InputSource;
  * Jackrabbit repositories
  */
 public class JackrabbitRepositoryFactory implements RepositoryFactory, ArgeoJcrConstants {
-
        private final static Log log = LogFactory.getLog(JackrabbitRepositoryFactory.class);
 
        private Resource fileRepositoryConfiguration = new ClassPathResource("/org/argeo/jackrabbit/repository-h2.xml");
 
-       @SuppressWarnings({ "rawtypes", "unchecked" })
+       @SuppressWarnings({ "rawtypes" })
        public Repository getRepository(Map parameters) throws RepositoryException {
                // // check if can be found by alias
                // Repository repository = super.getRepository(parameters);
@@ -73,13 +71,10 @@ public class JackrabbitRepositoryFactory implements RepositoryFactory, ArgeoJcrC
                                repository = createRemoteRepository(uri);
                        else if (uri.startsWith("file"))// http, https
                                repository = createFileRepository(uri, parameters);
-                        else if (uri.startsWith("vm")) {
-                        log.warn("URI "
-                        + uri
-                        + " should have been managed by generic JCR repository factory");
-                        repository = getRepositoryByAlias(getAliasFromURI(uri));
-                        }
-                       else
+                       else if (uri.startsWith("vm")) {
+                               log.warn("URI " + uri + " should have been managed by generic JCR repository factory");
+                               repository = getRepositoryByAlias(getAliasFromURI(uri));
+                       } else
                                throw new ArgeoJcrException("Unrecognized URI format " + uri);
 
                }
@@ -110,7 +105,7 @@ public class JackrabbitRepositoryFactory implements RepositoryFactory, ArgeoJcrC
                params.put(JcrUtils.REPOSITORY_URI, uri);
                Repository repository = new Jcr2davRepositoryFactory().getRepository(params);
                if (repository == null)
-                       throw new ArgeoException("Remote Davex repository " + uri + " not found");
+                       throw new ArgeoJcrException("Remote Davex repository " + uri + " not found");
                log.info("Initialized remote Jackrabbit repository from uri " + uri);
                return repository;
        }
@@ -124,7 +119,7 @@ public class JackrabbitRepositoryFactory implements RepositoryFactory, ArgeoJcrC
                        String dirPath = uri.substring("file:".length());
                        File homeDir = new File(dirPath);
                        if (homeDir.exists() && !homeDir.isDirectory())
-                               throw new ArgeoException("Repository home " + dirPath + " is not a directory");
+                               throw new ArgeoJcrException("Repository home " + dirPath + " is not a directory");
                        if (!homeDir.exists())
                                homeDir.mkdirs();
                        configurationIn = fileRepositoryConfiguration.getInputStream();
@@ -147,7 +142,7 @@ public class JackrabbitRepositoryFactory implements RepositoryFactory, ArgeoJcrC
                        log.info("Initialized file Jackrabbit repository from uri " + uri);
                        return repository;
                } catch (Exception e) {
-                       throw new ArgeoException("Cannot create repository " + uri, e);
+                       throw new ArgeoJcrException("Cannot create repository " + uri, e);
                } finally {
                        IOUtils.closeQuietly(configurationIn);
                }
@@ -163,7 +158,7 @@ public class JackrabbitRepositoryFactory implements RepositoryFactory, ArgeoJcrC
                                alias = alias.substring(0, alias.length() - 1);
                        return alias;
                } catch (URISyntaxException e) {
-                       throw new ArgeoException("Cannot interpret URI " + uri, e);
+                       throw new ArgeoJcrException("Cannot interpret URI " + uri, e);
                }
        }