From 846bd0f5b834491006b2b09355f790ce33a81b6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20Nie=C3=9Fing?= Date: Sun, 27 Aug 2023 21:12:48 +0200 Subject: [PATCH] Align constructors with super class constructors; support setting ThreadFactory --- .../jetty10/InstrumentedQueuedThreadPool.java | 63 ++++++++++++++++++- .../jetty11/InstrumentedQueuedThreadPool.java | 63 ++++++++++++++++++- .../jetty12/InstrumentedQueuedThreadPool.java | 11 +++- 3 files changed, 132 insertions(+), 5 deletions(-) diff --git a/metrics-jetty10/src/main/java/io/dropwizard/metrics/jetty10/InstrumentedQueuedThreadPool.java b/metrics-jetty10/src/main/java/io/dropwizard/metrics/jetty10/InstrumentedQueuedThreadPool.java index d0f6135b40..92951cbe95 100644 --- a/metrics-jetty10/src/main/java/io/dropwizard/metrics/jetty10/InstrumentedQueuedThreadPool.java +++ b/metrics-jetty10/src/main/java/io/dropwizard/metrics/jetty10/InstrumentedQueuedThreadPool.java @@ -6,6 +6,7 @@ import org.eclipse.jetty.util.thread.QueuedThreadPool; import java.util.concurrent.BlockingQueue; +import java.util.concurrent.ThreadFactory; import static com.codahale.metrics.MetricRegistry.name; @@ -34,6 +35,13 @@ public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, this(registry, maxThreads, minThreads, 60000); } + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("queue") BlockingQueue queue) { + this(registry, maxThreads, minThreads, 60000, queue); + } + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, @Name("maxThreads") int maxThreads, @Name("minThreads") int minThreads, @@ -46,16 +54,67 @@ public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, @Name("minThreads") int minThreads, @Name("idleTimeout") int idleTimeout, @Name("queue") BlockingQueue queue) { - this(registry, maxThreads, minThreads, idleTimeout, queue, null); + this(registry, maxThreads, minThreads, idleTimeout, queue, (ThreadGroup) null); + } + + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("idleTimeout") int idleTimeout, + @Name("queue") BlockingQueue queue, + @Name("prefix") String prefix) { + this(registry, maxThreads, minThreads, idleTimeout, -1, queue, null, null, prefix); + } + + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("idleTimeout") int idleTimeout, + @Name("queue") BlockingQueue queue, + @Name("threadFactory") ThreadFactory threadFactory) { + this(registry, maxThreads, minThreads, idleTimeout, -1, queue, null, threadFactory); + } + + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("idleTimeout") int idleTimeout, + @Name("queue") BlockingQueue queue, + @Name("threadGroup") ThreadGroup threadGroup) { + this(registry, maxThreads, minThreads, idleTimeout, -1, queue, threadGroup); + } + + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("idleTimeout") int idleTimeout, + @Name("reservedThreads") int reservedThreads, + @Name("queue") BlockingQueue queue, + @Name("threadGroup") ThreadGroup threadGroup) { + this(registry, maxThreads, minThreads, idleTimeout, reservedThreads, queue, threadGroup, null); + } + + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("idleTimeout") int idleTimeout, + @Name("reservedThreads") int reservedThreads, + @Name("queue") BlockingQueue queue, + @Name("threadGroup") ThreadGroup threadGroup, + @Name("threadFactory") ThreadFactory threadFactory) { + this(registry, maxThreads, minThreads, idleTimeout, reservedThreads, queue, threadGroup, threadFactory, null); } public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, @Name("maxThreads") int maxThreads, @Name("minThreads") int minThreads, @Name("idleTimeout") int idleTimeout, + @Name("reservedThreads") int reservedThreads, @Name("queue") BlockingQueue queue, + @Name("threadGroup") ThreadGroup threadGroup, + @Name("threadFactory") ThreadFactory threadFactory, @Name("prefix") String prefix) { - super(maxThreads, minThreads, idleTimeout, queue); + super(maxThreads, minThreads, idleTimeout, reservedThreads, queue, threadGroup, threadFactory); this.metricRegistry = registry; this.prefix = prefix; } diff --git a/metrics-jetty11/src/main/java/io/dropwizard/metrics/jetty11/InstrumentedQueuedThreadPool.java b/metrics-jetty11/src/main/java/io/dropwizard/metrics/jetty11/InstrumentedQueuedThreadPool.java index 6566703a4f..ac49f084a6 100644 --- a/metrics-jetty11/src/main/java/io/dropwizard/metrics/jetty11/InstrumentedQueuedThreadPool.java +++ b/metrics-jetty11/src/main/java/io/dropwizard/metrics/jetty11/InstrumentedQueuedThreadPool.java @@ -6,6 +6,7 @@ import org.eclipse.jetty.util.thread.QueuedThreadPool; import java.util.concurrent.BlockingQueue; +import java.util.concurrent.ThreadFactory; import static com.codahale.metrics.MetricRegistry.name; @@ -34,6 +35,13 @@ public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, this(registry, maxThreads, minThreads, 60000); } + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("queue") BlockingQueue queue) { + this(registry, maxThreads, minThreads, 60000, queue); + } + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, @Name("maxThreads") int maxThreads, @Name("minThreads") int minThreads, @@ -46,16 +54,67 @@ public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, @Name("minThreads") int minThreads, @Name("idleTimeout") int idleTimeout, @Name("queue") BlockingQueue queue) { - this(registry, maxThreads, minThreads, idleTimeout, queue, null); + this(registry, maxThreads, minThreads, idleTimeout, queue, (ThreadGroup) null); + } + + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("idleTimeout") int idleTimeout, + @Name("queue") BlockingQueue queue, + @Name("prefix") String prefix) { + this(registry, maxThreads, minThreads, idleTimeout, -1, queue, null, null, prefix); + } + + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("idleTimeout") int idleTimeout, + @Name("queue") BlockingQueue queue, + @Name("threadFactory") ThreadFactory threadFactory) { + this(registry, maxThreads, minThreads, idleTimeout, -1, queue, null, threadFactory); + } + + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("idleTimeout") int idleTimeout, + @Name("queue") BlockingQueue queue, + @Name("threadGroup") ThreadGroup threadGroup) { + this(registry, maxThreads, minThreads, idleTimeout, -1, queue, threadGroup); + } + + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("idleTimeout") int idleTimeout, + @Name("reservedThreads") int reservedThreads, + @Name("queue") BlockingQueue queue, + @Name("threadGroup") ThreadGroup threadGroup) { + this(registry, maxThreads, minThreads, idleTimeout, reservedThreads, queue, threadGroup, null); + } + + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("idleTimeout") int idleTimeout, + @Name("reservedThreads") int reservedThreads, + @Name("queue") BlockingQueue queue, + @Name("threadGroup") ThreadGroup threadGroup, + @Name("threadFactory") ThreadFactory threadFactory) { + this(registry, maxThreads, minThreads, idleTimeout, reservedThreads, queue, threadGroup, threadFactory, null); } public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, @Name("maxThreads") int maxThreads, @Name("minThreads") int minThreads, @Name("idleTimeout") int idleTimeout, + @Name("reservedThreads") int reservedThreads, @Name("queue") BlockingQueue queue, + @Name("threadGroup") ThreadGroup threadGroup, + @Name("threadFactory") ThreadFactory threadFactory, @Name("prefix") String prefix) { - super(maxThreads, minThreads, idleTimeout, queue); + super(maxThreads, minThreads, idleTimeout, reservedThreads, queue, threadGroup, threadFactory); this.metricRegistry = registry; this.prefix = prefix; } diff --git a/metrics-jetty12/src/main/java/io/dropwizard/metrics/jetty12/InstrumentedQueuedThreadPool.java b/metrics-jetty12/src/main/java/io/dropwizard/metrics/jetty12/InstrumentedQueuedThreadPool.java index cfcccb0b7f..99117378fa 100644 --- a/metrics-jetty12/src/main/java/io/dropwizard/metrics/jetty12/InstrumentedQueuedThreadPool.java +++ b/metrics-jetty12/src/main/java/io/dropwizard/metrics/jetty12/InstrumentedQueuedThreadPool.java @@ -54,7 +54,16 @@ public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, @Name("minThreads") int minThreads, @Name("idleTimeout") int idleTimeout, @Name("queue") BlockingQueue queue) { - this(registry, maxThreads, minThreads, idleTimeout, queue, null); + this(registry, maxThreads, minThreads, idleTimeout, queue, (ThreadGroup) null); + } + + public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry, + @Name("maxThreads") int maxThreads, + @Name("minThreads") int minThreads, + @Name("idleTimeout") int idleTimeout, + @Name("queue") BlockingQueue queue, + @Name("threadFactory") ThreadFactory threadFactory) { + this(registry, maxThreads, minThreads, idleTimeout, -1, queue, null, threadFactory); } public InstrumentedQueuedThreadPool(@Name("registry") MetricRegistry registry,