X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=datarouter-prov%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fdmaap%2Fdatarouter%2Fprovisioning%2Futils%2FThrottleFilter.java;h=e117d36873450f58f7bd2ba2b27154c68395643e;hb=bda6aeaa60607ab4fe5af508156019d7bd5c0ce4;hp=f0f10671a82a5f9647e844bafac08101dae579f7;hpb=b37d32a39c7096e39fc389f15d150e8c2b8c54c2;p=dmaap%2Fdatarouter.git diff --git a/datarouter-prov/src/main/java/org/onap/dmaap/datarouter/provisioning/utils/ThrottleFilter.java b/datarouter-prov/src/main/java/org/onap/dmaap/datarouter/provisioning/utils/ThrottleFilter.java index f0f10671..e117d368 100644 --- a/datarouter-prov/src/main/java/org/onap/dmaap/datarouter/provisioning/utils/ThrottleFilter.java +++ b/datarouter-prov/src/main/java/org/onap/dmaap/datarouter/provisioning/utils/ThrottleFilter.java @@ -102,9 +102,9 @@ public class ThrottleFilter extends TimerTask implements Filter { private static int samplingPeriod = 0; // sampling period private static int action = ACTION_DROP; // action to take (throttle or drop) - private static EELFLogger logger = EELFManager.getInstance().getLogger("InternalLog"); + private static final EELFLogger logger = EELFManager.getInstance().getLogger("InternalLog"); private static Map map = new HashMap<>(); - private Map> suspendedRequests = new HashMap<>(); + private final Map> suspendedRequests = new HashMap<>(); private static final Timer rolex = new Timer(); @Override @@ -213,7 +213,7 @@ public class ThrottleFilter extends TimerTask implements Filter { String str = String.format("Throttling connection: %s %d bad connections in %d minutes", getConnectionId(request), rate, samplingPeriod); logger.info(str); - Continuation continuation = ContinuationSupport.getContinuation(request); + Continuation continuation = ContinuationSupport.getContinuation((javax.servlet.ServletRequest) request); continuation.suspend(); register(id, continuation); continuation.undispatch(); @@ -232,11 +232,7 @@ public class ThrottleFilter extends TimerTask implements Filter { private void register(String id, Continuation continuation) { synchronized (suspendedRequests) { - List list = suspendedRequests.get(id); - if (list == null) { - list = new ArrayList<>(); - suspendedRequests.put(id, list); - } + List list = suspendedRequests.computeIfAbsent(id, k -> new ArrayList<>()); list.add(continuation); } } @@ -277,8 +273,8 @@ public class ThrottleFilter extends TimerTask implements Filter { } } - public class Counter { - private List times = new ArrayList<>(); // a record of request times + public static class Counter { + private final List times = new ArrayList<>(); // a record of request times /** * Method to prune request rate.