diff options
Diffstat (limited to 'src/main/java/com/it_jaros/jscanner')
| -rw-r--r-- | src/main/java/com/it_jaros/jscanner/ProgressBar.java | 32 | ||||
| -rw-r--r-- | src/main/java/com/it_jaros/jscanner/Scan.java | 44 |
2 files changed, 40 insertions, 36 deletions
diff --git a/src/main/java/com/it_jaros/jscanner/ProgressBar.java b/src/main/java/com/it_jaros/jscanner/ProgressBar.java index 5ce229a..54a729b 100644 --- a/src/main/java/com/it_jaros/jscanner/ProgressBar.java +++ b/src/main/java/com/it_jaros/jscanner/ProgressBar.java @@ -141,17 +141,15 @@ public class ProgressBar { } private void printStats() { - long duration = scan.getDurationMillis(); - String durationStr = formatDuration(duration); - + Scan.Statistics stats = scan.getStatistics(); System.err.println("\n--------------------"); System.err.println("Stats:"); - System.err.println("Total hosts: " + scan.getHostTotalCounter().max()); - System.err.println("Total ports: " + scan.portTotal()); - System.err.println("Duration: " + durationStr); - System.err.println("Peak concurrent hosts: " + scan.getHostCounter().max()); - System.err.println("Peak concurrent sockets: " + scan.getSocketCounter().max()); - System.err.println("Peak concurrent workers: " + scan.getThreadCounter().max()); + System.err.println("Total hosts: " + stats.hostTotal()); + System.err.println("Total ports: " + stats.portTotal()); + System.err.println("Duration: " + formatDuration(stats.durationInMillis())); + System.err.println("Peak concurrent hosts: " + stats.hostMaxConcurrent()); + System.err.println("Peak concurrent sockets: " + stats.socketMaxConcurrent()); + System.err.println("Peak concurrent workers: " + stats.threadMaxConcurrent()); System.err.println("--------------------\n"); } @@ -170,9 +168,9 @@ public class ProgressBar { private void printStatusLine() { - long duration = scan.getDurationMillis(); - int total = scan.getHostTotalCounter().current(); - int running = scan.getHostCounter().current(); + Scan.Statistics stats = scan.getStatistics(); + int total = stats.hostTotal(); + int running = stats.hostCurrent(); int done = total - running; long percent = total == 0 ? 100 : done * 100L / total; @@ -183,17 +181,17 @@ public class ProgressBar { ); String durationStat = String.format( " | %s", - formatDuration(duration) + formatDuration(stats.durationInMillis()) ); String socketStat = String.format( " | sockets: %d active, %d peak", - scan.getSocketCounter().current(), - scan.getSocketCounter().max() + stats.socketCurrent(), + stats.socketMaxConcurrent() ); String workerStat = String.format( " | workers: %d active, %d peak", - scan.getThreadCounter().current(), - scan.getThreadCounter().max() + stats.threadCurrent(), + stats.threadMaxConcurrent() ); int availableWidth = ProgressBar.getColumnWidth(); diff --git a/src/main/java/com/it_jaros/jscanner/Scan.java b/src/main/java/com/it_jaros/jscanner/Scan.java index dc109c6..9b3bf5e 100644 --- a/src/main/java/com/it_jaros/jscanner/Scan.java +++ b/src/main/java/com/it_jaros/jscanner/Scan.java @@ -96,27 +96,11 @@ public class Scan { onDone.run(); } - public Counter getThreadCounter() { - return threadCounter; - } - - public Counter getHostCounter() { - return hostCounter; - } - - public Counter getSocketCounter() { - return socketCounter; - } - - public Counter getHostTotalCounter() { - return hostTotalCounter; - } - public void start() { start = System.currentTimeMillis(); } - public long getDurationMillis() { + private long getDurationMillis() { if (stop == 0) { if (start == 0) { return 0; @@ -162,7 +146,29 @@ public class Scan { this.threadCounter.dec(); } - public int portTotal() { - return this.portTotalCounter.current(); + public Statistics getStatistics() { + return new Statistics( + this.getDurationMillis(), + this.hostTotalCounter.current(), + this.hostCounter.current(), + this.hostCounter.max(), + this.portTotalCounter.current(), + this.threadCounter.current(), + this.threadCounter.max(), + this.socketCounter.current(), + this.socketCounter.max() + ); } + + public record Statistics( + long durationInMillis, + int hostTotal, + int hostCurrent, + int hostMaxConcurrent, + int portTotal, + int threadCurrent, + int threadMaxConcurrent, + int socketCurrent, + int socketMaxConcurrent + ) {} } |
