From 8d862b2ac207005847952c76db20afa54ac66cd6 Mon Sep 17 00:00:00 2001 From: carbotaniuman <41451839+carbotaniuman@users.noreply.github.com> Date: Sat, 13 Jun 2020 16:14:28 -0500 Subject: [PATCH] Fix merge stupidity --- src/main/java/mdnet/base/MangaDexClient.java | 5 +- src/main/java/mdnet/webui/WebConsole.java | 107 ------------------ src/main/kotlin/mdnet/base/web/Application.kt | 16 ++- 3 files changed, 14 insertions(+), 114 deletions(-) delete mode 100644 src/main/java/mdnet/webui/WebConsole.java diff --git a/src/main/java/mdnet/base/MangaDexClient.java b/src/main/java/mdnet/base/MangaDexClient.java index 1ec64be..f1f1bb7 100644 --- a/src/main/java/mdnet/base/MangaDexClient.java +++ b/src/main/java/mdnet/base/MangaDexClient.java @@ -2,7 +2,6 @@ package mdnet.base; import com.google.gson.Gson; import com.google.gson.GsonBuilder; -import com.google.gson.reflect.TypeToken; import mdnet.base.settings.ClientSettings; import mdnet.base.web.ApplicationKt; import mdnet.base.web.WebUiKt; @@ -13,7 +12,6 @@ import org.slf4j.LoggerFactory; import java.io.*; import java.time.Instant; -import java.util.ArrayList; import java.util.Collections; import java.util.LinkedHashMap; import java.util.Map; @@ -121,7 +119,8 @@ public class MangaDexClient { editor.setString(2, ""); editor.commit(); } - } catch (IOException ignored) {} + } catch (IOException ignored) { + } // if the server is offline then don't try and refresh certs if (engine == null) { diff --git a/src/main/java/mdnet/webui/WebConsole.java b/src/main/java/mdnet/webui/WebConsole.java deleted file mode 100644 index 9515793..0000000 --- a/src/main/java/mdnet/webui/WebConsole.java +++ /dev/null @@ -1,107 +0,0 @@ -package mdnet.webui; - -import java.net.InetSocketAddress; -import java.nio.ByteBuffer; -import java.util.concurrent.atomic.AtomicReference; -import mdnet.base.Statistics; -import org.java_websocket.WebSocket; -import org.java_websocket.handshake.ClientHandshake; -import org.java_websocket.server.WebSocketServer; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -public abstract class WebConsole extends WebSocketServer { - - private final static Logger LOGGER = LoggerFactory.getLogger(WebConsole.class); - - public WebConsole(int port) { - super(new InetSocketAddress(port)); - } - - @Override - public void onOpen(WebSocket conn, ClientHandshake handshake) { - LOGGER.info("Webclient {} connected", conn); - } - - @Override - public void onClose(WebSocket conn, int code, String reason, boolean remote) { - LOGGER.info("Webclient {} disconnected: {} ", conn, reason); - } - - @Override - public void onMessage(WebSocket conn, String message) { - parseMessage(message); - } - - @Override - public void onMessage(WebSocket conn, ByteBuffer message) { - // parseMessage(message.array().toString()); - } - - @Override - public void onError(WebSocket conn, Exception ex) { - ex.printStackTrace(); - if (conn != null) { - // some errors like port binding failed may not be assignable to a specific - // websocket - } - } - - @Override - public void onStart() { - LOGGER.info("Listening for connections on port: {}", this.getPort()); - setConnectionLostTimeout(0); - setConnectionLostTimeout(100); - } - - protected abstract void parseMessage(String message); - - // void parseCommand(String x) { - // switch (x) { - // case "help": - // this.broadcast(formatMessage("command", "Available commands:")); - // this.broadcast(formatMessage("command", "you")); - // this.broadcast(formatMessage("command", "are")); - // this.broadcast(formatMessage("command", "big")); - // this.broadcast(formatMessage("command", "gay")); - // break; - // case "stop": - // this.broadcast(formatMessage("command", "Mangadex Client has shut down, - // shutting down web client now")); - // return; - // default: - // this.broadcast(formatMessage("command", "That command was not recognized")); - // this.broadcast(formatMessage("command", "Try help for a list of available - // commands")); - // break; - // } - // } - - public void sendMessage(String type, Object message) { -// JSONObject out = new JSONObject(); -// switch (type) { -// case "command" : -// out.put("type", "command"); -// out.put("data", message.toString()); -// break; -// case "stats" : -// out.put("type", "stats"); -// AtomicReference temp = (AtomicReference) message; -// out.put("hits", temp.get().getCacheHits()); -// out.put("misses", temp.get().getCacheMisses()); -// out.put("bytes_sent", temp.get().getBytesSent()); -// out.put("req_served", temp.get().getRequestsServed()); -// out.put("dataval", "empty"); -// out.put("dataval", "empty"); -// out.put("dataval", "empty"); -// break; -// case "auth" : -// break; -// default : -// out.put("type", "command"); -// out.put("data", message.toString()); -// break; -// } -// broadcast(out.toString()); - } -} diff --git a/src/main/kotlin/mdnet/base/web/Application.kt b/src/main/kotlin/mdnet/base/web/Application.kt index 985132f..3991681 100644 --- a/src/main/kotlin/mdnet/base/web/Application.kt +++ b/src/main/kotlin/mdnet/base/web/Application.kt @@ -85,7 +85,7 @@ fun getServer(cache: DiskLruCache, serverSettings: ServerSettings, clientSetting } // Netty doesn't do Content-Length or Content-Type, so we have the pleasure of doing that ourselves - fun respondWithImage(input: InputStream, length: String?, type: String, lastModified: String?): Response = + fun respondWithImage(input: InputStream, length: String?, type: String, lastModified: String?, cached: Boolean): Response = Response(Status.OK) .header("Content-Type", type) .header("X-Content-Type-Options", "nosniff") @@ -108,6 +108,13 @@ fun getServer(cache: DiskLruCache, serverSettings: ServerSettings, clientSetting it } } + .let { + if (cached) { + it.header("X-Cache", "HIT") + } else { + it.header("X-Cache", "MISS") + } + } val snapshot = cache.get(cacheId) if (snapshot != null) { @@ -137,7 +144,8 @@ fun getServer(cache: DiskLruCache, serverSettings: ServerSettings, clientSetting respondWithImage( CipherInputStream(BufferedInputStream(snapshot.getInputStream(0)), getRc4(rc4Bytes)), - snapshot.getLength(0).toString(), snapshot.getString(1), snapshot.getString(2) + snapshot.getLength(0).toString(), snapshot.getString(1), snapshot.getString(2), + true ) } } else { @@ -196,14 +204,14 @@ fun getServer(cache: DiskLruCache, serverSettings: ServerSettings, clientSetting editor.abort() } } - respondWithImage(tee, contentLength, contentType, lastModified) + respondWithImage(tee, contentLength, contentType, lastModified, false) } else { editor?.abort() if (LOGGER.isTraceEnabled) { LOGGER.trace("Request for $sanitizedUri is being served") } - respondWithImage(mdResponse.body.stream, contentLength, contentType, lastModified) + respondWithImage(mdResponse.body.stream, contentLength, contentType, lastModified, false) } } }