You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by bd...@apache.org on 2019/11/04 14:13:15 UTC

[sling-org-apache-sling-engine] 02/02: SLING-8826 - fix allowDuration() for duration provided in nanoseconds

This is an automated email from the ASF dual-hosted git repository.

bdelacretaz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-engine.git

commit 8afe797af9738c92e540c24182751ed501b0b619
Author: Bertrand Delacretaz <bd...@apache.org>
AuthorDate: Mon Nov 4 15:12:12 2019 +0100

    SLING-8826 - fix allowDuration() for duration provided in nanoseconds
---
 .../sling/engine/impl/debug/RequestProgressTrackerLogFilter.java      | 4 ++--
 .../sling/engine/impl/debug/RequestProgressTrackerLogFilterTest.java  | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/main/java/org/apache/sling/engine/impl/debug/RequestProgressTrackerLogFilter.java b/src/main/java/org/apache/sling/engine/impl/debug/RequestProgressTrackerLogFilter.java
index 75947ad..7ff83ac 100644
--- a/src/main/java/org/apache/sling/engine/impl/debug/RequestProgressTrackerLogFilter.java
+++ b/src/main/java/org/apache/sling/engine/impl/debug/RequestProgressTrackerLogFilter.java
@@ -95,7 +95,7 @@ public class RequestProgressTrackerLogFilter implements Filter {
 
     private String[] extensions;
 
-    static final int NANOSEC_TO_MSEC = 1000000;
+    static final int NANOSEC_TO_MSEC = 1_000_000;
 
     @Override
     public void init(final FilterConfig filterConfig) throws ServletException {
@@ -167,7 +167,7 @@ public class RequestProgressTrackerLogFilter implements Filter {
 
     private boolean allowDuration(final RequestProgressTracker rpt) {
         if (rpt instanceof SlingRequestProgressTracker) {
-            long duration = ((SlingRequestProgressTracker) rpt).getDuration();
+            final long duration = ((SlingRequestProgressTracker) rpt).getDuration() / NANOSEC_TO_MSEC;
             return configuration.minDurationMs() <= duration && duration <= configuration.maxDurationMs();
         } else {
             log.debug("Logged requests can only be filtered by duration if the SlingRequestProgressTracker is used.");
diff --git a/src/test/java/org/apache/sling/engine/impl/debug/RequestProgressTrackerLogFilterTest.java b/src/test/java/org/apache/sling/engine/impl/debug/RequestProgressTrackerLogFilterTest.java
index bd7b88a..9c6ae42 100644
--- a/src/test/java/org/apache/sling/engine/impl/debug/RequestProgressTrackerLogFilterTest.java
+++ b/src/test/java/org/apache/sling/engine/impl/debug/RequestProgressTrackerLogFilterTest.java
@@ -90,11 +90,11 @@ public class RequestProgressTrackerLogFilterTest {
         Thread.sleep(delta * 2);
         rpt.done();
         final long durationNanos = rpt.getDuration();
-        final long durationMsec = durationNanos; // TODO SLING-8826: should be duration / 1000;
+        final long durationMsec = durationNanos / 1_000_000;
         final int minMsec = (int)(durationMsec - delta);
         final int maxMsec = (int)(durationMsec + delta);
         setupMinMaxDuration(filter, minMsec, maxMsec);
-        assertTrue("Expecting duration " + durationNanos + " to allowed for min=" + minMsec + " max=" + maxMsec,
+        assertTrue("Expecting duration " + durationNanos + "/" + durationMsec + " to allowed for min=" + minMsec + " max=" + maxMsec,
             (boolean)allowDuration.invoke(filter, rpt));
     }
 }