From 5e25397fc6317673a1e36181a49bf797fcbd1304 Mon Sep 17 00:00:00 2001 From: Adam Date: Sat, 8 Dec 2018 21:25:49 -0500 Subject: [PATCH] http service: optimize session queries --- .../http/service/session/SessionController.java | 10 ++++------ .../http/service/session/SessionService.java | 16 +++++++++------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/http-service/src/main/java/net/runelite/http/service/session/SessionController.java b/http-service/src/main/java/net/runelite/http/service/session/SessionController.java index 8b653f2c65..d982681122 100644 --- a/http-service/src/main/java/net/runelite/http/service/session/SessionController.java +++ b/http-service/src/main/java/net/runelite/http/service/session/SessionController.java @@ -64,26 +64,24 @@ public class SessionController @RequestMapping("/ping") public ResponseEntity ping(@RequestParam("session") UUID uuid) { - SessionEntry sessionEntry = sessionService.findSessionByUUID(uuid); - if (sessionEntry == null) + int updated = sessionService.updateLast(uuid); + if (updated == 0) { return ResponseEntity.notFound().build(); } - sessionService.updateLast(uuid); return ResponseEntity.ok().build(); } @DeleteMapping public ResponseEntity delete(@RequestParam("session") UUID uuid, HttpServletRequest request) { - SessionEntry sessionEntry = sessionService.findSessionByUUID(uuid); - if (sessionEntry == null) + int deleted = sessionService.deleteSession(uuid); + if (deleted == 0) { return ResponseEntity.notFound().build(); } - sessionService.deleteSession(sessionEntry); return ResponseEntity.ok().build(); } diff --git a/http-service/src/main/java/net/runelite/http/service/session/SessionService.java b/http-service/src/main/java/net/runelite/http/service/session/SessionService.java index 20a3657784..6d8ba7883b 100644 --- a/http-service/src/main/java/net/runelite/http/service/session/SessionService.java +++ b/http-service/src/main/java/net/runelite/http/service/session/SessionService.java @@ -70,25 +70,27 @@ public class SessionService } } - public void deleteSession(SessionEntry session) + public int deleteSession(UUID id) { try (Connection con = sql2o.open()) { - con.createQuery("delete from session where uuid = :uuid") - .addParameter("uuid", session.getUuid().toString()) - .executeUpdate(); + return con.createQuery("delete from session where uuid = :uuid") + .addParameter("uuid", id.toString()) + .executeUpdate() + .getResult(); } } - public void updateLast(UUID session) + public int updateLast(UUID session) { try (Connection con = sql2o.open()) { Instant last = Instant.now(); - con.createQuery("update session set last = :last where uuid = :uuid") + return con.createQuery("update session set last = :last where uuid = :uuid") .addParameter("last", last) .addParameter("uuid", session.toString()) - .executeUpdate(); + .executeUpdate() + .getResult(); } }