1 package org
.argeo
.slc
.repo
.core
;
3 import javax
.jcr
.Repository
;
4 import javax
.jcr
.RepositoryFactory
;
5 import javax
.jcr
.Session
;
7 import org
.argeo
.api
.security
.Keyring
;
8 import org
.argeo
.slc
.repo
.RepoService
;
9 import org
.argeo
.slc
.repo
.RepoUtils
;
12 * Work in Progress - enhance this. First implementation of a service that
13 * centralizes session management in an argeo SLC context, repositories are
14 * either defined using an URI and a workspace name in a anonymous context or
15 * using connection information that are store in a corresponding node in the
16 * local repository home
18 public class RepoServiceImpl
implements RepoService
{
20 /* DEPENDENCY INJECTION */
21 private Repository nodeRepository
;
22 private RepositoryFactory repositoryFactory
;
23 private Keyring keyring
;
25 public Session
getRemoteSession(String repoNodePath
, String uri
,
26 String workspaceName
) {
27 return RepoUtils
.getRemoteSession(repositoryFactory
, keyring
,
28 nodeRepository
, repoNodePath
, uri
, workspaceName
);
31 /* DEPENDENCY INJECTION */
32 public void setNodeRepository(Repository nodeRepository
) {
33 this.nodeRepository
= nodeRepository
;
36 public void setRepositoryFactory(RepositoryFactory repositoryFactory
) {
37 this.repositoryFactory
= repositoryFactory
;
40 public void setKeyring(Keyring keyring
) {
41 this.keyring
= keyring
;