mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-06 21:45:43 +01:00
improve manager paging api
This commit is contained in:
@@ -38,6 +38,7 @@ package sonia.scm;
|
|||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
import java.util.Comparator;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
@@ -86,15 +87,26 @@ public interface Manager<T extends ModelObject, E extends Exception>
|
|||||||
* Method description
|
* Method description
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
*
|
|
||||||
* @param sortby
|
|
||||||
* @param desc
|
|
||||||
* @param start
|
* @param start
|
||||||
* @param limit
|
* @param limit
|
||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
* @since 1.4
|
* @since 1.4
|
||||||
*/
|
*/
|
||||||
public Collection<T> getAll(String sortby, boolean desc, int start,
|
public Collection<T> getAll(int start, int limit);
|
||||||
int limit);
|
|
||||||
|
/**
|
||||||
|
* Method description
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @param comparator
|
||||||
|
* @param start
|
||||||
|
* @param limit
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
* @since 1.4
|
||||||
|
*/
|
||||||
|
public Collection<T> getAll(Comparator<T> comparator, int start, int limit);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -505,7 +505,9 @@ public abstract class AbstractManagerResource<T extends ModelObject,
|
|||||||
|
|
||||||
if (limit > 0)
|
if (limit > 0)
|
||||||
{
|
{
|
||||||
items = manager.getAll(sortby, desc, start, limit);
|
|
||||||
|
// TODO create comparator
|
||||||
|
items = manager.getAll(start, limit);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -63,6 +63,7 @@ import sonia.scm.util.Util;
|
|||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
import java.util.Comparator;
|
||||||
import java.util.LinkedList;
|
import java.util.LinkedList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -367,20 +368,18 @@ public class XmlGroupManager extends AbstractGroupManager
|
|||||||
* Method description
|
* Method description
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* @param sortby
|
*
|
||||||
* @param desc
|
* @param comparator
|
||||||
* @param start
|
* @param start
|
||||||
* @param limit
|
* @param limit
|
||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public Collection<Group> getAll(String sortby, boolean desc, int start,
|
public Collection<Group> getAll(Comparator<Group> comparator, int start,
|
||||||
int limit)
|
int limit)
|
||||||
{
|
{
|
||||||
|
return Util.createSubCollection(groupDB.values(), comparator,
|
||||||
// TODO sort
|
|
||||||
return Util.createSubCollection(groupDB.values(),
|
|
||||||
new CollectionAppender<Group>()
|
new CollectionAppender<Group>()
|
||||||
{
|
{
|
||||||
@Override
|
@Override
|
||||||
@@ -391,6 +390,21 @@ public class XmlGroupManager extends AbstractGroupManager
|
|||||||
}, start, limit);
|
}, start, limit);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method description
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @param start
|
||||||
|
* @param limit
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Collection<Group> getAll(int start, int limit)
|
||||||
|
{
|
||||||
|
return getAll(null, start, limit);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Method description
|
* Method description
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -71,6 +71,7 @@ import java.io.IOException;
|
|||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
import java.util.Comparator;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.LinkedList;
|
import java.util.LinkedList;
|
||||||
@@ -400,20 +401,18 @@ public class XmlRepositoryManager extends AbstractRepositoryManager
|
|||||||
* Method description
|
* Method description
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* @param sortby
|
*
|
||||||
* @param desc
|
* @param comparator
|
||||||
* @param start
|
* @param start
|
||||||
* @param limit
|
* @param limit
|
||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public Collection<Repository> getAll(String sortby, boolean desc, int start,
|
public Collection<Repository> getAll(Comparator<Repository> comparator,
|
||||||
int limit)
|
int start, int limit)
|
||||||
{
|
{
|
||||||
|
return Util.createSubCollection(repositoryDB.values(), comparator,
|
||||||
// TODO sort
|
|
||||||
return Util.createSubCollection(repositoryDB.values(),
|
|
||||||
new CollectionAppender<Repository>()
|
new CollectionAppender<Repository>()
|
||||||
{
|
{
|
||||||
@Override
|
@Override
|
||||||
@@ -424,6 +423,21 @@ public class XmlRepositoryManager extends AbstractRepositoryManager
|
|||||||
}, start, limit);
|
}, start, limit);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method description
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @param start
|
||||||
|
* @param limit
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Collection<Repository> getAll(int start, int limit)
|
||||||
|
{
|
||||||
|
return getAll(null, start, limit);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Method description
|
* Method description
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -69,6 +69,7 @@ import java.io.InputStream;
|
|||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
import java.util.Comparator;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
import java.util.LinkedList;
|
import java.util.LinkedList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -411,20 +412,18 @@ public class XmlUserManager extends AbstractUserManager
|
|||||||
* Method description
|
* Method description
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* @param sortby
|
*
|
||||||
* @param desc
|
* @param comaparator
|
||||||
* @param start
|
* @param start
|
||||||
* @param limit
|
* @param limit
|
||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public Collection<User> getAll(String sortby, boolean desc, int start,
|
public Collection<User> getAll(Comparator<User> comaparator, int start,
|
||||||
int limit)
|
int limit)
|
||||||
{
|
{
|
||||||
|
return Util.createSubCollection(userDB.values(), comaparator,
|
||||||
// TODO sort
|
|
||||||
return Util.createSubCollection(userDB.values(),
|
|
||||||
new CollectionAppender<User>()
|
new CollectionAppender<User>()
|
||||||
{
|
{
|
||||||
@Override
|
@Override
|
||||||
@@ -435,6 +434,21 @@ public class XmlUserManager extends AbstractUserManager
|
|||||||
}, start, limit);
|
}, start, limit);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method description
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @param start
|
||||||
|
* @param limit
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Collection<User> getAll(int start, int limit)
|
||||||
|
{
|
||||||
|
return getAll(null, start, limit);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Method description
|
* Method description
|
||||||
*
|
*
|
||||||
|
|||||||
Reference in New Issue
Block a user