diff --git a/scm-core/src/main/java/sonia/scm/repository/RepositoryManager.java b/scm-core/src/main/java/sonia/scm/repository/RepositoryManager.java index bac36a824e..fb52a1a65a 100644 --- a/scm-core/src/main/java/sonia/scm/repository/RepositoryManager.java +++ b/scm-core/src/main/java/sonia/scm/repository/RepositoryManager.java @@ -36,8 +36,13 @@ package sonia.scm.repository; //~--- non-JDK imports -------------------------------------------------------- import sonia.scm.ListenerSupport; +import sonia.scm.Type; import sonia.scm.TypeManager; +//~--- JDK imports ------------------------------------------------------------ + +import java.util.Collection; + /** * * @author Sebastian Sdorra @@ -58,6 +63,14 @@ public interface RepositoryManager */ public Repository get(String type, String name); + /** + * Method description + * + * + * @return + */ + public Collection getConfiguredTypes(); + /** * Method description * diff --git a/scm-webapp/src/main/java/sonia/scm/repository/xml/XmlRepositoryManager.java b/scm-webapp/src/main/java/sonia/scm/repository/xml/XmlRepositoryManager.java index d3420dc36d..bff8dfed4f 100644 --- a/scm-webapp/src/main/java/sonia/scm/repository/xml/XmlRepositoryManager.java +++ b/scm-webapp/src/main/java/sonia/scm/repository/xml/XmlRepositoryManager.java @@ -67,10 +67,12 @@ import sonia.scm.web.security.WebSecurityContext; import java.io.IOException; +import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util.HashSet; import java.util.LinkedList; +import java.util.List; import java.util.Map; import java.util.Set; import java.util.UUID; @@ -231,7 +233,6 @@ public class XmlRepositoryManager extends AbstractRepositoryManager if (repositoryDB == null) { repositoryDB = new XmlRepositoryDatabase(); - repositoryDB.setCreationTime(System.currentTimeMillis()); } } @@ -393,6 +394,28 @@ public class XmlRepositoryManager extends AbstractRepositoryManager return repositories; } + /** + * Method description + * + * + * @return + */ + @Override + public Collection getConfiguredTypes() + { + List validTypes = new ArrayList(); + + for (RepositoryHandler handler : handlerMap.values()) + { + if (handler.isConfigured()) + { + validTypes.add(handler.getType()); + } + } + + return validTypes; + } + /** * Method description *