summaryrefslogtreecommitdiff
path: root/src/main/java/com/it_jaros/jscanner/scan/Counter.java
diff options
context:
space:
mode:
authorGravatar Matthias Jaros <jarlucmat@mailbox.org>2026-08-12 13:24:27 +0200
committerGravatar Matthias Jaros <jarlucmat@mailbox.org>2026-08-12 13:50:46 +0200
commitff14e0fc4e3fe4f5b8a67640d28850064661d7ab (patch)
treef141a2d34d902d344207cfbbc6ac614ec1b3840d /src/main/java/com/it_jaros/jscanner/scan/Counter.java
parent540b09b1a019f95a9322a6d19e8928369bb20fcb (diff)
Major refactoring of package structure
Diffstat (limited to 'src/main/java/com/it_jaros/jscanner/scan/Counter.java')
-rw-r--r--src/main/java/com/it_jaros/jscanner/scan/Counter.java31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/main/java/com/it_jaros/jscanner/scan/Counter.java b/src/main/java/com/it_jaros/jscanner/scan/Counter.java
new file mode 100644
index 0000000..0e1d5c9
--- /dev/null
+++ b/src/main/java/com/it_jaros/jscanner/scan/Counter.java
@@ -0,0 +1,31 @@
+package com.it_jaros.jscanner.scan;
+
+import java.util.concurrent.atomic.AtomicInteger;
+
+public final class Counter {
+ private final AtomicInteger current = new AtomicInteger(0);
+ private final AtomicInteger max = new AtomicInteger(0);
+ private final AtomicInteger total = new AtomicInteger(0);
+
+ public void inc() {
+ total.incrementAndGet();
+ int now = current.incrementAndGet();
+ max.accumulateAndGet(now, Math::max);
+ }
+
+ public void dec() {
+ current.decrementAndGet();
+ }
+
+ public int current() {
+ return current.get();
+ }
+
+ public int max() {
+ return max.get();
+ }
+
+ public int total() {
+ return total.get();
+ }
+}