only filter by date is the set is full

This commit is contained in:
Athou
2013-07-19 12:02:00 +02:00
parent 079345b2e0
commit be8a381377
2 changed files with 7 additions and 3 deletions

View File

@@ -24,7 +24,7 @@ public class FixedSizeSortedSet<E> extends TreeSet<E> {
@Override @Override
public boolean add(E e) { public boolean add(E e) {
if (size() == maxSize) { if (isFull()) {
E last = last(); E last = last();
int comparison = comparator.compare(e, last); int comparison = comparator.compare(e, last);
if (comparison < 0) { if (comparison < 0) {
@@ -50,6 +50,10 @@ public class FixedSizeSortedSet<E> extends TreeSet<E> {
} }
return success; return success;
} }
public boolean isFull() {
return size() == maxSize;
}
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")
public List<E> asList() { public List<E> asList() {

View File

@@ -161,7 +161,7 @@ public class FeedEntryStatusDAO extends GenericDAO<FeedEntryStatus> {
predicates.add(builder.or(content, title)); predicates.add(builder.or(content, title));
} }
if (order != null && !set.isEmpty()) { if (order != null && !set.isEmpty() && set.isFull()) {
Predicate filter = null; Predicate filter = null;
FeedEntry last = set.last(); FeedEntry last = set.last();
if (order == ReadingOrder.desc) { if (order == ReadingOrder.desc) {
@@ -230,7 +230,7 @@ public class FeedEntryStatusDAO extends GenericDAO<FeedEntryStatus> {
root.get(FeedEntryStatus_.entryInserted), newerThan)); root.get(FeedEntryStatus_.entryInserted), newerThan));
} }
if (order != null && !set.isEmpty()) { if (order != null && !set.isEmpty() && set.isFull()) {
Predicate filter = null; Predicate filter = null;
FeedEntryStatus last = set.last(); FeedEntryStatus last = set.last();
if (order == ReadingOrder.desc) { if (order == ReadingOrder.desc) {