From 2f8f158e2a2354ab732dfaf275af7ae8ec495489 Mon Sep 17 00:00:00 2001 From: jeffcheasey88 <66554203+jeffcheasey88@users.noreply.github.com> Date: Mon, 19 Feb 2024 11:14:45 +0100 Subject: [PATCH] Add possibility to get all Headers sended + Complete http response message --- src/dev/peerat/framework/Client.java | 4 +--- src/dev/peerat/framework/HttpReader.java | 5 +++++ src/dev/peerat/framework/HttpWriter.java | 6 +++++- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/dev/peerat/framework/Client.java b/src/dev/peerat/framework/Client.java index 2e17ddc..a34af01 100644 --- a/src/dev/peerat/framework/Client.java +++ b/src/dev/peerat/framework/Client.java @@ -9,13 +9,11 @@ public class Client extends Thread{ private HttpReader reader; private HttpWriter writer; private Router router; - private Locker logger; public Client(Socket socket, Router router) throws Exception{ this.reader = new HttpReader(socket); this.writer = new HttpWriter(socket); this.router = router; - this.logger = router.getLogger(); } @Override @@ -41,7 +39,7 @@ public class Client extends Thread{ }catch(Exception ex){} } } - if(context != null) logger.setValue(context); + if(context != null) router.getLogger().setValue(context); } private User isLogin(RequestType type, HttpReader reader) throws InvalidJwtException{ diff --git a/src/dev/peerat/framework/HttpReader.java b/src/dev/peerat/framework/HttpReader.java index dee1cdd..9aa3372 100644 --- a/src/dev/peerat/framework/HttpReader.java +++ b/src/dev/peerat/framework/HttpReader.java @@ -9,6 +9,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -52,6 +53,10 @@ public class HttpReader{ } } + public Set getHeaders(){ + return this.headers.keySet(); + } + public String getHeader(String key){ return this.headers.get(key.toLowerCase()); } diff --git a/src/dev/peerat/framework/HttpWriter.java b/src/dev/peerat/framework/HttpWriter.java index 3616336..c25eb0e 100644 --- a/src/dev/peerat/framework/HttpWriter.java +++ b/src/dev/peerat/framework/HttpWriter.java @@ -46,7 +46,7 @@ public class HttpWriter{ flush(); } - private static String[] HEIGHTBITS = new String[9]; + private static String[] HEIGHTBITS = new String[27]; private static String[] NINEBITS = new String[212]; static { @@ -59,6 +59,7 @@ public class HttpWriter{ HEIGHTBITS[6] = " Partial Content"; HEIGHTBITS[7] = " Mutli-Status"; HEIGHTBITS[8] = " Already Reported"; + HEIGHTBITS[26] = " IM Used"; NINEBITS[0] = " Multiple Choices"; NINEBITS[1] = " Moved Permanently"; @@ -88,6 +89,8 @@ public class HttpWriter{ NINEBITS[116] = " Range Not Satisfiable"; NINEBITS[117] = " Expectation Failed"; NINEBITS[118] = " I'm a Teapot"; + NINEBITS[119] = " Insufficient Space On Resource"; + NINEBITS[120] = " Method Failure"; NINEBITS[121] = " Misdirected Request"; NINEBITS[122] = " Unprocessable Content"; NINEBITS[123] = " Locked"; @@ -108,6 +111,7 @@ public class HttpWriter{ NINEBITS[206] = " Variant Also Negotiates"; NINEBITS[207] = " Insufficient Storage"; NINEBITS[208] = " Loop Detected"; + NINEBITS[209] = " Bandwith Limit Exceeded"; NINEBITS[210] = " Not Extended"; NINEBITS[211] = " Network Authentication Required"; }