From e24837612159a6c5b755deae52c0a9f52bf61efa Mon Sep 17 00:00:00 2001 From: lukaseder Date: Wed, 14 Jan 2015 16:21:08 +0100 Subject: [PATCH] Replace ArrayList by ExecuteListener[] in ExecuteListeners to avoid excessive Iterator creation --- .../main/java/org/jooq/impl/ExecuteListeners.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/ExecuteListeners.java b/jOOQ/src/main/java/org/jooq/impl/ExecuteListeners.java index 9f0f709732..a273e30d0d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ExecuteListeners.java +++ b/jOOQ/src/main/java/org/jooq/impl/ExecuteListeners.java @@ -63,15 +63,15 @@ class ExecuteListeners implements ExecuteListener { /** * Generated UID */ - private static final long serialVersionUID = 7399239846062763212L; + private static final long serialVersionUID = 7399239846062763212L; - private final List listeners; + private final ExecuteListener[] listeners; // In some setups, these two events may get mixed up chronologically by the // Cursor. Postpone fetchEnd event until after resultEnd event, if there is // an open Result - private boolean resultStart; - private boolean fetchEnd; + private boolean resultStart; + private boolean fetchEnd; ExecuteListeners(ExecuteContext ctx) { listeners = listeners(ctx); @@ -82,7 +82,7 @@ class ExecuteListeners implements ExecuteListener { /** * Provide delegate listeners from an ExecuteContext */ - private static List listeners(ExecuteContext ctx) { + private static ExecuteListener[] listeners(ExecuteContext ctx) { List result = new ArrayList(); for (ExecuteListenerProvider provider : ctx.configuration().executeListenerProviders()) { @@ -98,7 +98,7 @@ class ExecuteListeners implements ExecuteListener { result.add(new StopWatchListener()); } - return result; + return result.toArray(new ExecuteListener[result.size()]); } @Override