aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/juick/www/filters/AnythingFilter.java
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2023-01-22 14:14:58 +0300
committerGravatar Vitaly Takmazov2023-01-22 14:14:58 +0300
commit9ad08dc78e0cdbe2cdebf10a96c800e72d48e48b (patch)
tree25ef5787f8a77bd24c40490edaafe7d8a4697389 /src/main/java/com/juick/www/filters/AnythingFilter.java
parentd17e5714c9b421fce507d310fd913ce3160a1764 (diff)
Refactor messages service, remove 2 unneeded SQL queries
Diffstat (limited to 'src/main/java/com/juick/www/filters/AnythingFilter.java')
-rw-r--r--src/main/java/com/juick/www/filters/AnythingFilter.java22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/main/java/com/juick/www/filters/AnythingFilter.java b/src/main/java/com/juick/www/filters/AnythingFilter.java
index 2ec82801..ffd11b29 100644
--- a/src/main/java/com/juick/www/filters/AnythingFilter.java
+++ b/src/main/java/com/juick/www/filters/AnythingFilter.java
@@ -45,8 +45,8 @@ public class AnythingFilter extends OncePerRequestFilter {
@Override
public void doFilterInternal(HttpServletRequest servletRequest,
- HttpServletResponse servletResponse,
- FilterChain filterChain) throws IOException, ServletException {
+ HttpServletResponse servletResponse,
+ FilterChain filterChain) throws IOException, ServletException {
String upgrade = servletRequest.getHeader("Connection");
if (upgrade != null && upgrade.equals("Upgrade")) {
filterChain.doFilter(servletRequest, servletResponse);
@@ -57,21 +57,23 @@ public class AnythingFilter extends OncePerRequestFilter {
int before = NumberUtils.toInt(components.getQueryParams().getFirst("before"), 0);
if (before == 0) {
boolean isPostNumber = WebUtils.isPostNumber(anything);
- int messageId = isPostNumber ?
- NumberUtils.toInt(anything) : 0;
+ int messageId = isPostNumber ? NumberUtils.toInt(anything) : 0;
if (isPostNumber && anything.equals(Integer.toString(messageId))) {
if (messageId > 0) {
- User author = messagesService.getMessageAuthor(messageId);
+ var message = messagesService.getMessage(messageId);
+ if (message.isPresent()) {
+ User author = message.get().getUser();
- if (author != null) {
- servletResponse.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
- servletResponse.setHeader("Location", "/" + author.getName() + "/" + anything);
- return;
+ if (author != null) {
+ servletResponse.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
+ servletResponse.setHeader("Location", "/" + author.getName() + "/" + anything);
+ return;
+ }
}
}
}
- ;
+ ;
if (userService.getUsernames().stream().anyMatch(name -> name.equals(anything))) {
servletResponse.sendRedirect("/" + anything + "/");
} else {