diff --git a/jetty-bom/pom.xml b/jetty-bom/pom.xml index d5f8c5095c3..70e22eef8a2 100644 --- a/jetty-bom/pom.xml +++ b/jetty-bom/pom.xml @@ -211,7 +211,22 @@ org.eclipse.jetty - jetty-infinispan + infinispan-remote + 9.4.17-SNAPSHOT + + + org.eclipse.jetty + infinispan-remote-query + 9.4.17-SNAPSHOT + + + org.eclipse.jetty + infinispan-embedded + 9.4.17-SNAPSHOT + + + org.eclipse.jetty + infinispan-embedded-query 9.4.17-SNAPSHOT diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java index a25af015b66..db1e755f26c 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java @@ -53,7 +53,7 @@ public class DumpableCollection implements Dumpable @Override public void dump(Appendable out, String indent) throws IOException { - Object[] array = _collection.toArray(); - Dumpable.dumpObjects(out,indent,_name + " size="+array.length, array); + Object[] array = (_collection == null ? null : _collection.toArray()); + Dumpable.dumpObjects(out,indent,_name + " size="+(array == null ? 0 : array.length), array); } } diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java index a2a5653a4b4..fe1071227a9 100755 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java @@ -600,7 +600,7 @@ public class QueuedThreadPool extends ContainerLifeCycle implements SizedThreadP String knownMethod = ""; for (StackTraceElement t : trace) { - if ("idleJobPoll".equals(t.getMethodName()) && t.getClassName().endsWith("QueuedThreadPool$Runner")) + if ("idleJobPoll".equals(t.getMethodName()) && t.getClassName().equals(Runner.class.getName())) { knownMethod = "IDLE "; break; diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/component/DumpableCollectionTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/component/DumpableCollectionTest.java new file mode 100644 index 00000000000..ee696868d9b --- /dev/null +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/component/DumpableCollectionTest.java @@ -0,0 +1,54 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.util.component; + +import static org.hamcrest.MatcherAssert.assertThat; + +import java.util.ArrayList; +import java.util.Collection; + +import org.hamcrest.Matchers; +import org.junit.jupiter.api.Test; + +public class DumpableCollectionTest +{ + + @Test + public void testNullDumpableCollection () throws Exception + { + DumpableCollection dc = new DumpableCollection("null test", null); + String dump = dc.dump(); + assertThat(dump, Matchers.containsString("size=0")); + } + + @Test + public void testNonNullDumpableCollection () throws Exception + { + Collection collection = new ArrayList<>(); + collection.add("one"); + collection.add("two"); + collection.add("three"); + + DumpableCollection dc = new DumpableCollection("non null test", collection); + String dump = dc.dump(); + assertThat(dump, Matchers.containsString("one")); + assertThat(dump, Matchers.containsString("two")); + assertThat(dump, Matchers.containsString("three")); + } +}