mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-11 16:05:44 +01:00
sort repositories
This commit is contained in:
@@ -37,6 +37,7 @@ import com.google.common.base.Function;
|
|||||||
import com.google.common.base.Predicate;
|
import com.google.common.base.Predicate;
|
||||||
import com.google.common.collect.Collections2;
|
import com.google.common.collect.Collections2;
|
||||||
import com.google.common.collect.Maps;
|
import com.google.common.collect.Maps;
|
||||||
|
import com.google.common.collect.Ordering;
|
||||||
import com.google.inject.Inject;
|
import com.google.inject.Inject;
|
||||||
|
|
||||||
import sonia.scm.config.ScmConfiguration;
|
import sonia.scm.config.ScmConfiguration;
|
||||||
@@ -52,6 +53,8 @@ import java.io.IOException;
|
|||||||
import java.io.StringWriter;
|
import java.io.StringWriter;
|
||||||
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
import java.util.Comparator;
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import javax.ws.rs.GET;
|
import javax.ws.rs.GET;
|
||||||
@@ -112,12 +115,18 @@ public class RepositoryRootResource
|
|||||||
UrlProvider uiUrlProvider =
|
UrlProvider uiUrlProvider =
|
||||||
UrlProviderFactory.createUrlProvider(configuration.getBaseUrl(),
|
UrlProviderFactory.createUrlProvider(configuration.getBaseUrl(),
|
||||||
UrlProviderFactory.TYPE_WUI);
|
UrlProviderFactory.TYPE_WUI);
|
||||||
Collection<RepositoryTemplateElement> repositories =
|
//J-
|
||||||
|
Collection<RepositoryTemplateElement> unsortedRepositories =
|
||||||
Collections2.transform(
|
Collections2.transform(
|
||||||
Collections2.filter(
|
Collections2.filter(
|
||||||
repositoryManager.getAll(),
|
repositoryManager.getAll(), new TypePredicate(type))
|
||||||
new TypePredicate(type)), new RepositoryTransformFunction(
|
, new RepositoryTransformFunction(uiUrlProvider)
|
||||||
uiUrlProvider));
|
);
|
||||||
|
|
||||||
|
List<RepositoryTemplateElement> repositories = Ordering.from(
|
||||||
|
new RepositoryTemplateElementComparator()
|
||||||
|
).sortedCopy(unsortedRepositories);
|
||||||
|
//J+
|
||||||
Map<String, Object> environment = Maps.newHashMap();
|
Map<String, Object> environment = Maps.newHashMap();
|
||||||
|
|
||||||
environment.put("repositories", repositories);
|
environment.put("repositories", repositories);
|
||||||
@@ -236,6 +245,35 @@ public class RepositoryRootResource
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class description
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @version Enter version here..., 12/05/29
|
||||||
|
* @author Enter your name here...
|
||||||
|
*/
|
||||||
|
private static class RepositoryTemplateElementComparator
|
||||||
|
implements Comparator<RepositoryTemplateElement>
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method description
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @param left
|
||||||
|
* @param right
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int compare(RepositoryTemplateElement left,
|
||||||
|
RepositoryTemplateElement right)
|
||||||
|
{
|
||||||
|
return left.getName().compareTo(right.getName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class description
|
* Class description
|
||||||
*
|
*
|
||||||
|
|||||||
Reference in New Issue
Block a user