improve authentication

This commit is contained in:
Sebastian Sdorra
2010-09-09 18:35:54 +02:00
parent b0f637e203
commit 6a92e0e78e
7 changed files with 59 additions and 25 deletions

View File

@@ -11,6 +11,7 @@ package sonia.scm;
import sonia.scm.group.GroupManager;
import sonia.scm.repository.RepositoryManager;
import sonia.scm.repository.RepositoryType;
import sonia.scm.util.ServiceUtil;
import sonia.scm.util.Util;
@@ -19,6 +20,7 @@ import sonia.scm.util.Util;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -125,6 +127,18 @@ public class BasicContextProvider implements SCMContextProvider
return repositoryManagerMap.get(type);
}
/**
* Method description
*
*
* @return
*/
@Override
public List<RepositoryType> getRepositoryTypes()
{
return repositoryTypes;
}
//~--- methods --------------------------------------------------------------
/**
@@ -183,6 +197,7 @@ public class BasicContextProvider implements SCMContextProvider
private void loadRepositoryManagers()
{
repositoryManagerMap = new HashMap<String, RepositoryManager>();
repositoryTypes = new ArrayList<RepositoryType>();
List<RepositoryManager> repositoryManagers =
ServiceUtil.getServices(RepositoryManager.class);
@@ -191,6 +206,7 @@ public class BasicContextProvider implements SCMContextProvider
{
manager.init(this);
repositoryManagerMap.put(manager.getType().getName(), manager);
repositoryTypes.add(manager.getType());
}
}
@@ -204,4 +220,7 @@ public class BasicContextProvider implements SCMContextProvider
/** Field description */
private Map<String, RepositoryManager> repositoryManagerMap;
/** Field description */
private List<RepositoryType> repositoryTypes;
}

View File

@@ -11,11 +11,13 @@ package sonia.scm;
import sonia.scm.group.GroupManager;
import sonia.scm.repository.RepositoryManager;
import sonia.scm.repository.RepositoryType;
//~--- JDK imports ------------------------------------------------------------
import java.io.Closeable;
import java.io.File;
import java.util.Collection;
/**
*
@@ -59,4 +61,12 @@ public interface SCMContextProvider extends Closeable
* @return
*/
public RepositoryManager getRepositoryManager(String type);
/**
* Method description
*
*
* @return
*/
public Collection<RepositoryType> getRepositoryTypes();
}