diff --git a/scm-plugins/scm-git-plugin/src/test/resources/META-INF/services/sonia.scm.repository.client.spi.RepositoryClientFactoryProvider b/scm-plugins/scm-git-plugin/src/test/resources/META-INF/services/sonia.scm.repository.client.spi.RepositoryClientFactoryProvider new file mode 100644 index 0000000000..b588a0e97f --- /dev/null +++ b/scm-plugins/scm-git-plugin/src/test/resources/META-INF/services/sonia.scm.repository.client.spi.RepositoryClientFactoryProvider @@ -0,0 +1 @@ +sonia.scm.repository.client.spi.GitRepositoryClientFactoryProvider \ No newline at end of file diff --git a/scm-test/src/main/java/sonia/scm/repository/client/api/RepositoryClientFactory.java b/scm-test/src/main/java/sonia/scm/repository/client/api/RepositoryClientFactory.java index 84ec0a98ee..00f1761e25 100644 --- a/scm-test/src/main/java/sonia/scm/repository/client/api/RepositoryClientFactory.java +++ b/scm-test/src/main/java/sonia/scm/repository/client/api/RepositoryClientFactory.java @@ -33,13 +33,18 @@ package sonia.scm.repository.client.api; //~--- non-JDK imports -------------------------------------------------------- +import com.google.common.collect.Lists; + import sonia.scm.repository.client.spi.RepositoryClientFactoryProvider; +import sonia.scm.util.ServiceUtil; //~--- JDK imports ------------------------------------------------------------ import java.io.File; import java.io.IOException; +import java.util.List; + /** * * @author Sebastian Sdorra @@ -48,6 +53,16 @@ import java.io.IOException; public final class RepositoryClientFactory { + /** + * Constructs ... + * + */ + public RepositoryClientFactory() + { + this.providers = + ServiceUtil.getServices(RepositoryClientFactoryProvider.class); + } + /** * Constructs ... * @@ -109,6 +124,24 @@ public final class RepositoryClientFactory //~--- get methods ---------------------------------------------------------- + /** + * Method description + * + * + * @return + */ + public Iterable getAvailableTypes() + { + List types = Lists.newArrayList(); + + for (RepositoryClientFactoryProvider provider : providers) + { + types.add(provider.getType()); + } + + return types; + } + /** * Method description *