add autocomplete endpoint

This commit is contained in:
Mohamed Karray
2018-10-08 13:39:33 +02:00
parent 0f08f2f7d5
commit ddcc21c1a8
27 changed files with 664 additions and 14 deletions

View File

@@ -41,11 +41,13 @@ import org.slf4j.LoggerFactory;
import sonia.scm.GenericDAO;
import sonia.scm.ModelObject;
import sonia.scm.group.xml.XmlGroupDAO;
//~--- JDK imports ------------------------------------------------------------
import sonia.scm.store.ConfigurationStore;
import sonia.scm.util.AssertUtil;
import java.util.Collection;
import sonia.scm.store.ConfigurationStore;
import java.util.stream.Collectors;
//~--- JDK imports ------------------------------------------------------------
/**
*
@@ -234,6 +236,16 @@ public abstract class AbstractXmlDAO<I extends ModelObject,
return ImmutableList.copyOf(db.values());
}
@Override
public Collection<I> getFiltered(String searched, int limit) {
int size = db.values().size();
AssertUtil.assertIsNotEmpty(searched);
return ImmutableList.copyOf(db.values().stream()
.filter(item -> item.getId().contains(searched) || (item.getDisplayName() != null && item.getDisplayName().contains(searched)))
.limit(limit <= 0 ? size : limit)
.collect(Collectors.toList()));
}
/**
* Method description
*