aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/juick/service/EmailServiceImpl.java
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2023-01-16 09:21:49 +0300
committerGravatar Vitaly Takmazov2023-01-16 09:27:20 +0300
commitb836c344d49a8d3ad8f7d164bf0425b59df51384 (patch)
treeaa262c5f85cc4edb1c95295e14e1c40d201d9ff1 /src/main/java/com/juick/service/EmailServiceImpl.java
parent0c30281a5a0745927b0e1fd39e4cfaefe9021920 (diff)
email: cleanup expired auth codes
Diffstat (limited to 'src/main/java/com/juick/service/EmailServiceImpl.java')
-rw-r--r--src/main/java/com/juick/service/EmailServiceImpl.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/main/java/com/juick/service/EmailServiceImpl.java b/src/main/java/com/juick/service/EmailServiceImpl.java
index 977d9a75..7f358533 100644
--- a/src/main/java/com/juick/service/EmailServiceImpl.java
+++ b/src/main/java/com/juick/service/EmailServiceImpl.java
@@ -24,6 +24,10 @@ import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+import java.sql.Types;
+import java.time.Instant;
+import java.time.ZoneOffset;
+import java.time.temporal.ChronoUnit;
import java.util.List;
/**
@@ -110,4 +114,11 @@ public class EmailServiceImpl extends BaseJdbcService implements EmailService {
getJdbcTemplate().update("DELETE FROM auth WHERE authcode=?", code);
}
+ @Override
+ public Integer cleanupAuthCodes() {
+ Instant day = Instant.now().minus(1, ChronoUnit.DAYS);
+ return getNamedParameterJdbcTemplate().update("DELETE FROM auth WHERE ts < :day",
+ new MapSqlParameterSource()
+ .addValue("day", day.atOffset(ZoneOffset.UTC), Types.TIMESTAMP_WITH_TIMEZONE));
+ }
}