@Override public ExecuteListenerProvider[] executeListenerProviders() { return delegate.executeListenerProviders(); }
/** * Provide delegate listeners from an <code>ExecuteContext</code> */ private static List<ExecuteListener> listeners(ExecuteContext ctx) { List<ExecuteListener> result = new ArrayList<ExecuteListener>(); if (!FALSE.equals(ctx.configuration().settings().isExecuteLogging())) { result.add(new LoggerListener()); result.add(new StopWatchListener()); } for (ExecuteListenerProvider provider : ctx.configuration().executeListenerProviders()) { // Could be null after deserialisation if (provider != null) { result.add(provider.provide()); } } return result; }
/** * Provide delegate listeners from an <code>ExecuteContext</code> */ private static final ExecuteListener[] listeners(ExecuteContext ctx) { List<ExecuteListener> result = null; // jOOQ-internal listeners are added first, so their results are available to user-defined listeners // ------------------------------------------------------------------------------------------------- // [#6580] Fetching server output may require some pre / post actions around the actual statement if (SettingsTools.getFetchServerOutputSize(0, ctx.settings()) > 0) (result = init(result)).add(new FetchServerOutputListener()); // [#6051] The previously used StopWatchListener is no longer included by default if (!FALSE.equals(ctx.settings().isExecuteLogging())) { // [#6747] Avoid allocating the listener (and by consequence, the ExecuteListeners) if // we do not DEBUG log anyway. if (LOGGER_LISTENER_LOGGER.isDebugEnabled()) (result = init(result)).add(new LoggerListener()); } for (ExecuteListenerProvider provider : ctx.configuration().executeListenerProviders()) // Could be null after deserialisation if (provider != null) (result = init(result)).add(provider.provide()); return result == null ? null : result.toArray(EMPTY_EXECUTE_LISTENER); }
configuration.executeListenerProviders(), new DefaultExecuteListenerProvider(collector) ));
configuration.executeListenerProviders(), new DefaultExecuteListenerProvider(collector) ));
/** * Create a new "derived" configuration object from a pre-existing one. * <p> * This copies all properties from a pre-existing configuration into a new, * derived one. * * @param configuration The pre-existing configuration. */ DefaultConfiguration(Configuration configuration) { this( configuration.connectionProvider(), configuration.recordMapperProvider(), configuration.recordListenerProviders(), configuration.executeListenerProviders(), configuration.visitListenerProviders(), configuration.dialect(), configuration.settings(), configuration.data() ); }
private final int[] executeStatic() { List<Query> queries = new ArrayList<Query>(); QueryCollector collector = new QueryCollector(); Configuration local = configuration.derive(Tools.combine( configuration.executeListenerProviders(), new DefaultExecuteListenerProvider(collector) )); for (int i = 0; i < records.length; i++) { Configuration previous = records[i].configuration(); try { records[i].attach(local); executeAction(i); } catch (QueryCollectorSignal e) { Query query = e.getQuery(); if (query.isExecutable()) { queries.add(query); } } finally { records[i].attach(previous); } } // Resulting statements can be batch executed in their requested order int[] result = create.batch(queries).execute(); updateChangedFlag(); return result; }
private final int[] executeStatic() { List<Query> queries = new ArrayList<Query>(); QueryCollector collector = new QueryCollector(); Configuration local = configuration.derive(Utils.combine( configuration.executeListenerProviders(), new DefaultExecuteListenerProvider(collector) )); for (int i = 0; i < records.length; i++) { Configuration previous = ((AttachableInternal) records[i]).configuration(); try { records[i].attach(local); executeAction(i); } catch (QueryCollectorSignal e) { Query query = e.getQuery(); if (query.isExecutable()) { queries.add(query); } } finally { records[i].attach(previous); } } // Resulting statements can be batch executed in their requested order int[] result = create.batch(queries).execute(); updateChangedFlag(); return result; }
final ExecuteListenerProvider[] oldProviders = configuration.executeListenerProviders(); final ExecuteListenerProvider[] newProviders = new ExecuteListenerProvider[oldProviders.length + 1]; System.arraycopy(oldProviders, 0, newProviders, 0, oldProviders.length);
/** * Create a new "derived" configuration object from a pre-existing one. * <p> * This copies all properties from a pre-existing configuration into a new, * derived one. * * @param configuration The pre-existing configuration. */ DefaultConfiguration(Configuration configuration) { this( configuration.connectionProvider(), configuration.metaProvider(), configuration.executorProvider(), configuration.transactionProvider(), configuration.recordMapperProvider(), configuration.recordUnmapperProvider(), configuration.recordListenerProviders(), configuration.executeListenerProviders(), configuration.visitListenerProviders(), configuration.transactionListenerProviders(), configuration.diagnosticsListenerProviders(), configuration.converterProvider(), configuration.clock(), configuration.dialect(), configuration.settings(), configuration.data() ); }