From d975f425f87d8e333c3ae3a10012f3dae3c3817c Mon Sep 17 00:00:00 2001 From: serega6531 Date: Tue, 14 Apr 2020 22:35:33 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D1=84=D0=B0=D0=BA=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=B8=D0=BD=D0=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README_EN.md | 10 +++++----- .../ru/serega6531/packmate/WebSocketHandler.java | 1 + .../packmate/model/pojo/CountersHolder.java | 8 ++++---- .../packmate/model/pojo/UnfinishedStream.java | 10 +++++----- .../ru/serega6531/packmate/pcap/FilePcapWorker.java | 3 ++- .../serega6531/packmate/service/CountingService.java | 4 ++-- .../serega6531/packmate/service/PatternMatcher.java | 12 +++--------- .../service/optimization/HttpChunksProcessor.java | 2 +- .../service/optimization/HttpGzipProcessor.java | 2 +- .../service/optimization/HttpUrldecodeProcessor.java | 2 +- .../packmate/service/optimization/PacketsMerger.java | 2 +- .../java/ru/serega6531/packmate/utils/Bytes.java | 4 ++-- .../ru/serega6531/packmate/utils/PacketUtils.java | 2 +- 13 files changed, 29 insertions(+), 33 deletions(-) diff --git a/README_EN.md b/README_EN.md index e182e11..b8f8048 100644 --- a/README_EN.md +++ b/README_EN.md @@ -86,7 +86,7 @@ If everything went fine, Packmate will be available on port `65000` from any hos When you open a web interface for the first time, you will be asked for a login and password you specified in the env file. After entering the credentials, open the settings by clicking on the cogs -in the top right corner and enter login and password again. +in the top right corner and enter the specified login and password again. ![Settings](screenshots/Screenshot_Settings.png) @@ -109,10 +109,10 @@ you can click a button in the sidebar to switch between binary and text views. ### Shortcuts To quickly navigate streams you can use the following shortcuts: -* `Ctrl+Up` -- go to next stream -* `Ctrl+Down` -- go to previous stream -* `Ctrl+Home` -- go to latest stream -* `Ctrl+End` -- go to first stream +* `Ctrl+Up` -- go to the next stream +* `Ctrl+Down` -- go to the previous stream +* `Ctrl+Home` -- go to the latest stream +* `Ctrl+End` -- go to the first stream
diff --git a/src/main/java/ru/serega6531/packmate/WebSocketHandler.java b/src/main/java/ru/serega6531/packmate/WebSocketHandler.java index 47d362a..c0075a0 100644 --- a/src/main/java/ru/serega6531/packmate/WebSocketHandler.java +++ b/src/main/java/ru/serega6531/packmate/WebSocketHandler.java @@ -7,6 +7,7 @@ import org.springframework.web.socket.WebSocketSession; import org.springframework.web.socket.handler.TextWebSocketHandler; import ru.serega6531.packmate.service.SubscriptionService; +@SuppressWarnings("NullableProblems") @Component public class WebSocketHandler extends TextWebSocketHandler { diff --git a/src/main/java/ru/serega6531/packmate/model/pojo/CountersHolder.java b/src/main/java/ru/serega6531/packmate/model/pojo/CountersHolder.java index b39bb8e..49c5abf 100644 --- a/src/main/java/ru/serega6531/packmate/model/pojo/CountersHolder.java +++ b/src/main/java/ru/serega6531/packmate/model/pojo/CountersHolder.java @@ -7,11 +7,11 @@ import java.util.Map; @Getter public class CountersHolder { - private Map servicesPackets; - private Map servicesStreams; + private final Map servicesPackets; + private final Map servicesStreams; - private int totalPackets; - private int totalStreams; + private final int totalPackets; + private final int totalStreams; public CountersHolder(Map servicesPackets, Map servicesStreams, int totalPackets, int totalStreams) { diff --git a/src/main/java/ru/serega6531/packmate/model/pojo/UnfinishedStream.java b/src/main/java/ru/serega6531/packmate/model/pojo/UnfinishedStream.java index c952303..19e3c6e 100644 --- a/src/main/java/ru/serega6531/packmate/model/pojo/UnfinishedStream.java +++ b/src/main/java/ru/serega6531/packmate/model/pojo/UnfinishedStream.java @@ -10,11 +10,11 @@ import java.net.Inet4Address; @Getter public class UnfinishedStream { - private Inet4Address firstIp; - private Inet4Address secondIp; - private int firstPort; - private int secondPort; - private Protocol protocol; + private final Inet4Address firstIp; + private final Inet4Address secondIp; + private final int firstPort; + private final int secondPort; + private final Protocol protocol; @Override public boolean equals(Object obj) { diff --git a/src/main/java/ru/serega6531/packmate/pcap/FilePcapWorker.java b/src/main/java/ru/serega6531/packmate/pcap/FilePcapWorker.java index 7fa52a7..d11836c 100644 --- a/src/main/java/ru/serega6531/packmate/pcap/FilePcapWorker.java +++ b/src/main/java/ru/serega6531/packmate/pcap/FilePcapWorker.java @@ -58,7 +58,8 @@ public class FilePcapWorker extends AbstractPcapWorker { gotPacket(packet); } catch (PcapNativeException e) { log.error("Pcap read error: {}", e.getMessage()); - Thread.sleep(100); + //noinspection BusyWait + Thread.sleep(100); // чтобы ошибки не летели слишком быстро } catch (EOFException e) { stop(); diff --git a/src/main/java/ru/serega6531/packmate/service/CountingService.java b/src/main/java/ru/serega6531/packmate/service/CountingService.java index a23f8f1..907f64e 100644 --- a/src/main/java/ru/serega6531/packmate/service/CountingService.java +++ b/src/main/java/ru/serega6531/packmate/service/CountingService.java @@ -17,8 +17,8 @@ public class CountingService { private final SubscriptionService subscriptionService; - private Map servicesPackets = new HashMap<>(); - private Map servicesStreams = new HashMap<>(); + private final Map servicesPackets = new HashMap<>(); + private final Map servicesStreams = new HashMap<>(); private Counter totalPackets = new Counter(); private Counter totalStreams = new Counter(); diff --git a/src/main/java/ru/serega6531/packmate/service/PatternMatcher.java b/src/main/java/ru/serega6531/packmate/service/PatternMatcher.java index 46dff4b..5c7e2a0 100644 --- a/src/main/java/ru/serega6531/packmate/service/PatternMatcher.java +++ b/src/main/java/ru/serega6531/packmate/service/PatternMatcher.java @@ -32,15 +32,9 @@ class PatternMatcher { private void match(Pattern pattern) { switch (pattern.getSearchType()) { - case REGEX: - matchRegex(pattern); - break; - case SUBSTRING: - matchSubstring(pattern); - break; - case SUBBYTES: - matchSubbytes(pattern); - break; + case REGEX -> matchRegex(pattern); + case SUBSTRING -> matchSubstring(pattern); + case SUBBYTES -> matchSubbytes(pattern); } } diff --git a/src/main/java/ru/serega6531/packmate/service/optimization/HttpChunksProcessor.java b/src/main/java/ru/serega6531/packmate/service/optimization/HttpChunksProcessor.java index aaa8adc..3a2dec4 100644 --- a/src/main/java/ru/serega6531/packmate/service/optimization/HttpChunksProcessor.java +++ b/src/main/java/ru/serega6531/packmate/service/optimization/HttpChunksProcessor.java @@ -15,7 +15,7 @@ import java.util.List; @AllArgsConstructor public class HttpChunksProcessor { - private List packets; + private final List packets; public void processChunkedEncoding() { boolean chunkStarted = false; diff --git a/src/main/java/ru/serega6531/packmate/service/optimization/HttpGzipProcessor.java b/src/main/java/ru/serega6531/packmate/service/optimization/HttpGzipProcessor.java index 3cd8323..85fd303 100644 --- a/src/main/java/ru/serega6531/packmate/service/optimization/HttpGzipProcessor.java +++ b/src/main/java/ru/serega6531/packmate/service/optimization/HttpGzipProcessor.java @@ -22,7 +22,7 @@ public class HttpGzipProcessor { private static final byte[] GZIP_HEADER = {0x1f, (byte) 0x8b, 0x08}; - private List packets; + private final List packets; /** * Попытаться распаковать GZIP из исходящих http пакетов.
diff --git a/src/main/java/ru/serega6531/packmate/service/optimization/HttpUrldecodeProcessor.java b/src/main/java/ru/serega6531/packmate/service/optimization/HttpUrldecodeProcessor.java index ce4f371..56d61ca 100644 --- a/src/main/java/ru/serega6531/packmate/service/optimization/HttpUrldecodeProcessor.java +++ b/src/main/java/ru/serega6531/packmate/service/optimization/HttpUrldecodeProcessor.java @@ -13,7 +13,7 @@ import java.util.List; @Slf4j public class HttpUrldecodeProcessor { - private List packets; + private final List packets; /** * Декодирование urlencode с http пакета до смены стороны или окончания стрима diff --git a/src/main/java/ru/serega6531/packmate/service/optimization/PacketsMerger.java b/src/main/java/ru/serega6531/packmate/service/optimization/PacketsMerger.java index 89ff3c9..40a03d4 100644 --- a/src/main/java/ru/serega6531/packmate/service/optimization/PacketsMerger.java +++ b/src/main/java/ru/serega6531/packmate/service/optimization/PacketsMerger.java @@ -9,7 +9,7 @@ import java.util.List; @AllArgsConstructor public class PacketsMerger { - private List packets; + private final List packets; /** * Сжать соседние пакеты в одном направлении в один. diff --git a/src/main/java/ru/serega6531/packmate/utils/Bytes.java b/src/main/java/ru/serega6531/packmate/utils/Bytes.java index 47e88f1..6012f70 100644 --- a/src/main/java/ru/serega6531/packmate/utils/Bytes.java +++ b/src/main/java/ru/serega6531/packmate/utils/Bytes.java @@ -5,11 +5,11 @@ import lombok.experimental.UtilityClass; @UtilityClass public class Bytes { - public static int indexOf(byte[] array, byte[] target) { + public int indexOf(byte[] array, byte[] target) { return indexOf(array, target, 0, array.length); } - public static int indexOf(byte[] array, byte[] target, int start, int end) { + public int indexOf(byte[] array, byte[] target, int start, int end) { if (target.length == 0) { return 0; } diff --git a/src/main/java/ru/serega6531/packmate/utils/PacketUtils.java b/src/main/java/ru/serega6531/packmate/utils/PacketUtils.java index b5af91d..459e427 100644 --- a/src/main/java/ru/serega6531/packmate/utils/PacketUtils.java +++ b/src/main/java/ru/serega6531/packmate/utils/PacketUtils.java @@ -10,7 +10,7 @@ import java.util.Optional; @UtilityClass public class PacketUtils { - public static Optional mergePackets(List cut) { + public Optional mergePackets(List cut) { return cut.stream() .map(Packet::getContent) .reduce(ArrayUtils::addAll);