aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/DBRequestStore.java
diff options
context:
space:
mode:
Diffstat (limited to 'pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/DBRequestStore.java')
-rw-r--r--pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/DBRequestStore.java23
1 files changed, 23 insertions, 0 deletions
diff --git a/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/DBRequestStore.java b/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/DBRequestStore.java
index a1b88270..df006f02 100644
--- a/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/DBRequestStore.java
+++ b/pdf-as-web-db/src/main/java/at/gv/egiz/pdfas/web/store/DBRequestStore.java
@@ -64,6 +64,29 @@ public class DBRequestStore implements IRequestStore {
}
}
+ public void cleanOldRequestException() {
+ int seconds = WebConfiguration.getDBTimeout();
+ Calendar calendar = Calendar.getInstance();
+ calendar.add(Calendar.SECOND, (-1)* seconds);
+ Date date = calendar.getTime();
+ SimpleDateFormat dt = new SimpleDateFormat("yyyy-mm-dd hh:mm:ss");
+ logger.info("Clearing Entries before: " + dt.format(date));
+ Session session = null;
+ Transaction tx = null;
+ try {
+ session = sessions.openSession();
+ tx = session.beginTransaction();
+ Query query = session.createQuery("delete from Request as req" +
+ " where req.created < :date");
+ query.setCalendar("date", calendar);
+ query.executeUpdate();
+ } finally {
+ if(session != null) {
+ session.close();
+ }
+ }
+ }
+
public String createNewStoreEntry(PDFASSignRequest request) {
// Clean Old Requests
this.cleanOldRequests();