From 699afc9450e7b083ecc0002b5493e6cd0e39b250 Mon Sep 17 00:00:00 2001 From: Matthias Jaros Date: Mon, 9 Mar 2026 12:59:56 +0100 Subject: Refactored printing of progress bars to be able to handle adding of more hosts during time --- src/main/java/com/it_jaros/networkScanner/Scanner.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'src/main/java/com/it_jaros/networkScanner/Scanner.java') diff --git a/src/main/java/com/it_jaros/networkScanner/Scanner.java b/src/main/java/com/it_jaros/networkScanner/Scanner.java index 0aedb27..cfef136 100644 --- a/src/main/java/com/it_jaros/networkScanner/Scanner.java +++ b/src/main/java/com/it_jaros/networkScanner/Scanner.java @@ -18,13 +18,13 @@ import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.locks.LockSupport; public class Scanner { - + private final Counter counter = new Counter(); private final ProgressBar progressBar = new ProgressBar(); private final Semaphore socketLimit; private final int timeoutInMillis; private final long delayInNanos; - + public Scanner(int socketLimit, int timeoutInMillis, int delayInMillis) { this.timeoutInMillis = timeoutInMillis; this.delayInNanos = TimeUnit.MILLISECONDS.toNanos(Math.max(0, delayInMillis)); @@ -38,13 +38,12 @@ public class Scanner { public List scanTargets(List targets, String ports) { List results = new ArrayList<>(); try (ExecutorService executor = Executors.newVirtualThreadPerTaskExecutor();) { - List progresses = new ArrayList<>(); + progressBar.start(); for (String target : targets) { ScanResult result = scanTargetPorts(target, ports, executor); results.add(result); - progresses.add(result.progress()); + progressBar.submit(result.progress()); } - progressBar.start(progresses); } progressBar.stop(); -- cgit v1.3.1