From cab63df82f219ae7278f014b1ebf951f889de531 Mon Sep 17 00:00:00 2001 From: Rsl1122 Date: Sun, 12 Aug 2018 09:53:56 +0300 Subject: [PATCH] Split NetworkPage into it's own response --- .../plan/system/info/BungeeInfoSystem.java | 23 ++++++++----------- .../response/pages/NetworkPageResponse.java | 20 ++++++++++++++++ 2 files changed, 30 insertions(+), 13 deletions(-) create mode 100644 Plan/src/main/java/com/djrapitops/plan/system/webserver/response/pages/NetworkPageResponse.java diff --git a/Plan/src/main/java/com/djrapitops/plan/system/info/BungeeInfoSystem.java b/Plan/src/main/java/com/djrapitops/plan/system/info/BungeeInfoSystem.java index 78ba8b368..0fc48a774 100644 --- a/Plan/src/main/java/com/djrapitops/plan/system/info/BungeeInfoSystem.java +++ b/Plan/src/main/java/com/djrapitops/plan/system/info/BungeeInfoSystem.java @@ -7,9 +7,6 @@ package com.djrapitops.plan.system.info; import com.djrapitops.plan.api.exceptions.ParseException; import com.djrapitops.plan.api.exceptions.connection.NoServersException; import com.djrapitops.plan.api.exceptions.connection.WebException; -import com.djrapitops.plan.api.exceptions.connection.WebFailException; -import com.djrapitops.plan.data.store.containers.NetworkContainer; -import com.djrapitops.plan.system.cache.CacheSystem; import com.djrapitops.plan.system.info.connection.BungeeConnectionSystem; import com.djrapitops.plan.system.info.request.CacheRequest; import com.djrapitops.plan.system.info.request.GenerateInspectPageRequest; @@ -17,8 +14,8 @@ import com.djrapitops.plan.system.info.request.InfoRequest; import com.djrapitops.plan.system.info.server.ServerInfo; import com.djrapitops.plan.system.webserver.response.cache.PageId; import com.djrapitops.plan.system.webserver.response.cache.ResponseCache; -import com.djrapitops.plan.system.webserver.response.pages.AnalysisPageResponse; -import com.djrapitops.plan.utilities.html.pages.NetworkPage; +import com.djrapitops.plan.system.webserver.response.errors.InternalErrorResponse; +import com.djrapitops.plan.system.webserver.response.pages.NetworkPageResponse; /** * InfoSystem for Bungee. @@ -43,13 +40,13 @@ public class BungeeInfoSystem extends InfoSystem { } @Override - public void updateNetworkPage() throws WebException { - try { - NetworkContainer networkContainer = CacheSystem.getInstance().getDataContainerCache().getNetworkContainer(); - String html = new NetworkPage(networkContainer).toHtml(); - ResponseCache.cacheResponse(PageId.SERVER.of(ServerInfo.getServerUUID()), () -> new AnalysisPageResponse(html)); - } catch (ParseException e) { - throw new WebFailException("Exception during Network Page Parsing", e); - } + public void updateNetworkPage() { + ResponseCache.cacheResponse(PageId.SERVER.of(ServerInfo.getServerUUID()), () -> { + try { + return new NetworkPageResponse(); + } catch (ParseException e) { + return new InternalErrorResponse("Network page parsing failed.", e); + } + }); } } diff --git a/Plan/src/main/java/com/djrapitops/plan/system/webserver/response/pages/NetworkPageResponse.java b/Plan/src/main/java/com/djrapitops/plan/system/webserver/response/pages/NetworkPageResponse.java new file mode 100644 index 000000000..03cd27b7d --- /dev/null +++ b/Plan/src/main/java/com/djrapitops/plan/system/webserver/response/pages/NetworkPageResponse.java @@ -0,0 +1,20 @@ +package com.djrapitops.plan.system.webserver.response.pages; + +import com.djrapitops.plan.api.exceptions.ParseException; +import com.djrapitops.plan.data.store.containers.NetworkContainer; +import com.djrapitops.plan.system.cache.CacheSystem; +import com.djrapitops.plan.system.webserver.response.Response; +import com.djrapitops.plan.utilities.html.pages.NetworkPage; + +/** + * Response for /network page. + * + * @author Rsl1122 + */ +public class NetworkPageResponse extends Response { + + public NetworkPageResponse() throws ParseException { + NetworkContainer networkContainer = CacheSystem.getInstance().getDataContainerCache().getNetworkContainer(); + setContent(new NetworkPage(networkContainer).toHtml()); + } +} \ No newline at end of file