+++ /dev/null
-package de.juplo.kafka.outbox.delivery;
-
-
-public class Watermarks
-{
- private final long[] watermarks;
-
-
- public Watermarks(int partitions)
- {
- watermarks = new long[partitions];
- }
-
-
- public synchronized void set(int partition, long watermark)
- {
- watermarks[partition] = watermark;
- }
-
- public synchronized long getLowest()
- {
- long lowest = Long.MAX_VALUE;
-
- for (int i = 0; i < watermarks.length; i++)
- if (watermarks[i] < lowest)
- lowest = watermarks[i];
-
- return lowest;
- }
-
- @Override
- public String toString()
- {
- StringBuilder builder = new StringBuilder();
- for (int i = 0; i < watermarks.length; i++)
- {
- builder.append("partition[");
- builder.append(i);
- builder.append("]=");
- builder.append(watermarks[i]);
- if (i != watermarks.length - 1)
- builder.append(", ");
- }
- return builder.toString();
- }
-}