From 48a8afd1413df2a2addbf5449b6c013a1035038a Mon Sep 17 00:00:00 2001 From: Brett Wooldridge Date: Thu, 3 Dec 2015 23:33:28 +0900 Subject: [PATCH] Fixes #495 implement iterator for Tomcat leak detection. --- .../java/com/zaxxer/hikari/util/FastList.java | 21 ++++++++++++++++++- .../pool/TestConnectionCloseBlocking.java | 1 - 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zaxxer/hikari/util/FastList.java b/src/main/java/com/zaxxer/hikari/util/FastList.java index adb78a21..8eb9347f 100644 --- a/src/main/java/com/zaxxer/hikari/util/FastList.java +++ b/src/main/java/com/zaxxer/hikari/util/FastList.java @@ -23,6 +23,7 @@ import java.util.Comparator; import java.util.Iterator; import java.util.List; import java.util.ListIterator; +import java.util.NoSuchElementException; import java.util.Spliterator; import java.util.function.Consumer; import java.util.function.Predicate; @@ -206,7 +207,25 @@ public final class FastList extends ArrayList @Override public Iterator iterator() { - throw new UnsupportedOperationException(); + return new Iterator() { + private int index; + + @Override + public boolean hasNext() + { + return index < size; + } + + @Override + public T next() + { + if (index < size) { + return elementData[index++]; + } + + throw new NoSuchElementException("No more elements in FastList"); + } + }; } /** {@inheritDoc} */ diff --git a/src/test/java/com/zaxxer/hikari/pool/TestConnectionCloseBlocking.java b/src/test/java/com/zaxxer/hikari/pool/TestConnectionCloseBlocking.java index fc61d1e2..9da29eff 100644 --- a/src/test/java/com/zaxxer/hikari/pool/TestConnectionCloseBlocking.java +++ b/src/test/java/com/zaxxer/hikari/pool/TestConnectionCloseBlocking.java @@ -12,7 +12,6 @@ import java.sql.SQLException; import java.util.concurrent.TimeUnit; import org.junit.Assert; -import org.junit.Test; import org.mockito.invocation.InvocationOnMock; import org.mockito.stubbing.Answer;