Report (TCP) port number for switches
[openflowplugin.git] / openflowplugin-impl / src / main / java / org / opendaylight / openflowplugin / impl / device / SimpleRatelimiter.java
index eed1ccdecf3e212ddb78107fb1232041baf10a1f..cee15859cf9bc1b357698b5229d99a27c3b801be 100644 (file)
@@ -13,9 +13,9 @@ import javax.annotation.concurrent.GuardedBy;
 
 abstract class SimpleRatelimiter {
     private final AtomicInteger counter = new AtomicInteger();
-    private final int lowWatermark;
+    private int lowWatermark;
     private int lowWatermarkEffective;
-    private final int highWatermark;
+    private int highWatermark;
     @GuardedBy("counter")
     private volatile boolean limited;
 
@@ -87,4 +87,12 @@ abstract class SimpleRatelimiter {
     int getOccupiedPermits() {
         return counter.get();
     }
+
+    void changeWaterMarks(final int newLowWatermark, final int newHighWatermark) {
+        synchronized (counter) {
+            lowWatermark = newLowWatermark;
+            highWatermark = newHighWatermark;
+            resetLowWaterMark();
+        }
+    }
 }