summaryrefslogtreecommitdiff
path: root/src/main/java/com/it_jaros/networkScanner/Scanner.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/it_jaros/networkScanner/Scanner.java')
-rw-r--r--src/main/java/com/it_jaros/networkScanner/Scanner.java9
1 files changed, 4 insertions, 5 deletions
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<ScanResult> scanTargets(List<String> targets, String ports) {
List<ScanResult> results = new ArrayList<>();
try (ExecutorService executor = Executors.newVirtualThreadPerTaskExecutor();) {
- List<Progress> 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();