database agnostic cleanup query

This commit is contained in:
Athou
2013-06-18 13:00:03 +02:00
parent e90425778f
commit 238a57cc27
4 changed files with 35 additions and 10 deletions

View File

@@ -12,11 +12,16 @@ public class DatabaseCleaner {
@Inject
FeedEntryStatusDAO feedEntryStatusDAO;
public int cleanOlderThan(long value, TimeUnit unit) {
public long cleanOlderThan(long value, TimeUnit unit) {
Calendar cal = Calendar.getInstance();
cal.add(Calendar.MINUTE, -1 * (int) unit.toMinutes(value));
return feedEntryStatusDAO.delete(cal.getTime());
long total = 0;
int deleted = -1;
do {
deleted = feedEntryStatusDAO.delete(cal.getTime(), 100);
total += deleted;
} while (deleted != 0);
return total;
}
}