From b8c6fbf9b11c812dfb12b2d45624f453447938de Mon Sep 17 00:00:00 2001 From: FireMasterK <20838718+FireMasterK@users.noreply.github.com> Date: Thu, 22 Jul 2021 15:13:27 +0530 Subject: [PATCH] Log pubsub failures. --- .../me/kavin/piped/utils/Multithreading.java | 2 +- .../me/kavin/piped/utils/ResponseHelper.java | 25 ++++++++++++------- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/src/main/java/me/kavin/piped/utils/Multithreading.java b/src/main/java/me/kavin/piped/utils/Multithreading.java index 7ede7a2..babb9e3 100644 --- a/src/main/java/me/kavin/piped/utils/Multithreading.java +++ b/src/main/java/me/kavin/piped/utils/Multithreading.java @@ -20,7 +20,7 @@ public class Multithreading { } public static void runAsyncLimitedPubSub(final Runnable runnable) { - esLimited.submit(runnable); + esLimitedPubSub.submit(runnable); } public static ExecutorService getCachedExecutor() { diff --git a/src/main/java/me/kavin/piped/utils/ResponseHelper.java b/src/main/java/me/kavin/piped/utils/ResponseHelper.java index 5bc2f09..f6f245a 100644 --- a/src/main/java/me/kavin/piped/utils/ResponseHelper.java +++ b/src/main/java/me/kavin/piped/utils/ResponseHelper.java @@ -1,12 +1,14 @@ package me.kavin.piped.utils; import java.io.IOException; +import java.io.InputStream; import java.net.MalformedURLException; import java.net.URI; import java.net.URL; import java.net.http.HttpRequest; import java.net.http.HttpRequest.BodyPublishers; import java.net.http.HttpRequest.Builder; +import java.net.http.HttpResponse; import java.net.http.HttpResponse.BodyHandlers; import java.nio.charset.StandardCharsets; import java.security.NoSuchAlgorithmException; @@ -22,6 +24,7 @@ import javax.persistence.criteria.CriteriaBuilder; import javax.persistence.criteria.CriteriaQuery; import javax.persistence.criteria.Root; +import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.exception.ExceptionUtils; import org.hibernate.Session; import org.json.JSONObject; @@ -975,18 +978,22 @@ public class ResponseHelper { builder.method("POST", BodyPublishers.ofString(String.valueOf(formBody.substring(0, formBody.length() - 1)))); - Constants.h2client.send(builder.build(), BodyHandlers.ofInputStream()); + HttpResponse resp = Constants.h2client.send(builder.build(), BodyHandlers.ofInputStream()); - if (pubsub == null) - pubsub = new PubSub(channelId, System.currentTimeMillis()); - else - pubsub.setSubbedAt(System.currentTimeMillis()); + if (resp.statusCode() == 204) { + if (pubsub == null) + pubsub = new PubSub(channelId, System.currentTimeMillis()); + else + pubsub.setSubbedAt(System.currentTimeMillis()); - s.saveOrUpdate(pubsub); + s.saveOrUpdate(pubsub); - if (!s.getTransaction().isActive()) - s.getTransaction().begin(); - s.getTransaction().commit(); + if (!s.getTransaction().isActive()) + s.getTransaction().begin(); + s.getTransaction().commit(); + } else + System.out.println( + "Failed to subscribe: " + resp.statusCode() + "\n" + IOUtils.toString(resp.body(), "UTF-8")); } }