jscanner

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit 50c3bd0c13c7478ff7d9e1d4b2ee46f8fef5e2e8
parent 00065e55773b83124cf84311a161ea82132b38ae
Author: Matthias Jaros <jaros@mailbox.org>
Date:   Sun, 22 Feb 2026 21:20:51 +0100

Refactoring

Diffstat:
Msrc/main/java/com/it_jaros/networkScanner/ScanResult.java | 2+-
Msrc/main/java/com/it_jaros/networkScanner/Scanner.java | 20++++++++++----------
2 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/it_jaros/networkScanner/ScanResult.java b/src/main/java/com/it_jaros/networkScanner/ScanResult.java @@ -2,4 +2,4 @@ package com.it_jaros.networkScanner; import java.util.Queue; -public record ScanResult(String target, Queue<Integer> openPorts) {} +public record ScanResult(String target, Queue<Integer> openPorts, Progress progress) {} diff --git a/src/main/java/com/it_jaros/networkScanner/Scanner.java b/src/main/java/com/it_jaros/networkScanner/Scanner.java @@ -40,11 +40,9 @@ public class Scanner { try (ExecutorService executor = Executors.newVirtualThreadPerTaskExecutor();) { List<Progress> hosts = new ArrayList<>(); for (String target : targets) { - PortRange portRange = new PortRange(ports); - Progress progress = new Progress(target, portRange.getTotal(), new AtomicInteger(), - new AtomicInteger()); - hosts.add(progress); - results.add(scanTargetPorts(target, portRange, executor, progress)); + ScanResult result = scanTargetPorts(target, ports, executor); + results.add(result); + hosts.add(result.progress()); } progressBar.start(hosts); } @@ -54,8 +52,10 @@ public class Scanner { return results; } - private ScanResult scanTargetPorts(String target, PortRange portRange, ExecutorService executor, - Progress p) { + private ScanResult scanTargetPorts(String target, String ports, ExecutorService executor) { + PortRange portRange = new PortRange(ports); + Progress progress = new Progress(target, portRange.getTotal(), new AtomicInteger(), + new AtomicInteger()); AtomicLong scanSlotFactory = new AtomicLong(System.nanoTime()); Queue<Integer> openPorts = new ConcurrentLinkedQueue<>(); while (portRange.hasNext()) { @@ -65,14 +65,14 @@ public class Scanner { waitForSlot(scanSlotFactory); if (isTargetPortOpen(target, currentPort)) { openPorts.add(currentPort); - progressBar.onPortOpen(p); + progressBar.onPortOpen(progress); } } finally { - progressBar.onPortFinished(p); + progressBar.onPortFinished(progress); } }); } - return new ScanResult(target, openPorts); + return new ScanResult(target, openPorts, progress); } private void waitForSlot(AtomicLong scanSlotFactory) {