]> git.argeo.org Git - lgpl/argeo-commons.git/blob - DefaultRepositoryFactory.java
a2a0a3df1d2d7ce399a334485ec3955e70c9efbf
[lgpl/argeo-commons.git] / DefaultRepositoryFactory.java
1 package org.argeo.jcr;
2
3 import java.util.Map;
4 import java.util.Properties;
5
6 import javax.jcr.Repository;
7 import javax.jcr.RepositoryException;
8 import javax.jcr.RepositoryFactory;
9
10 public class DefaultRepositoryFactory extends DefaultRepositoryRegister
11 implements RepositoryFactory, ArgeoJcrConstants {
12 // private final static Log log = LogFactory
13 // .getLog(DefaultRepositoryFactory.class);
14
15 @SuppressWarnings("rawtypes")
16 public Repository getRepository(Map parameters) throws RepositoryException {
17 if (parameters.containsKey(JCR_REPOSITORY_ALIAS)) {
18 String alias = parameters.get(JCR_REPOSITORY_ALIAS).toString();
19 return getRepositoryByAlias(alias);
20 }
21 return null;
22 }
23
24 /**
25 * Retrieve a repository by alias
26 *
27 * @return the repository registered with alias or null if none
28 */
29 protected Repository getRepositoryByAlias(String alias) {
30 if (getRepositories().containsKey(alias))
31 return getRepositories().get(alias);
32 else
33 return null;
34 }
35
36 protected void publish(String alias, Repository repository,
37 Properties properties) {
38 register(repository, properties);
39 }
40
41 }