You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by dw...@apache.org on 2021/03/10 09:56:31 UTC
[lucene] 35/42: merging with trunk
This is an automated email from the ASF dual-hosted git repository.
dweiss pushed a commit to branch jira/solr14155-1
in repository https://gitbox.apache.org/repos/asf/lucene.git
commit d53e248a3f8636efe8bc36fc562e6635314698b5
Author: noblepaul <no...@gmail.com>
AuthorDate: Tue Jan 12 17:39:33 2021 +1100
merging with trunk
---
.../java/org/apache/solr/update/UpdateHandler.java | 54 +++++++++++-----------
.../apache/solr/core/TestQuerySenderListener.java | 3 +-
.../apache/solr/core/TestQuerySenderNoQuery.java | 2 +-
3 files changed, 28 insertions(+), 31 deletions(-)
diff --git a/solr/core/src/java/org/apache/solr/update/UpdateHandler.java b/solr/core/src/java/org/apache/solr/update/UpdateHandler.java
index 6e8c3a4..319ee51 100644
--- a/solr/core/src/java/org/apache/solr/update/UpdateHandler.java
+++ b/solr/core/src/java/org/apache/solr/update/UpdateHandler.java
@@ -47,26 +47,23 @@ public abstract class UpdateHandler implements SolrInfoBean {
protected final SchemaField idField;
protected final FieldType idFieldType;
- protected Vector<PluginHolder<SolrEventListener>> commitCallbacks = new Vector<>();
- protected Vector<PluginHolder<SolrEventListener>> softCommitCallbacks = new Vector<>();
- protected Vector<PluginHolder<SolrEventListener>> optimizeCallbacks = new Vector<>();
+ protected Vector<SolrEventListener> commitCallbacks = new Vector<>();
+ protected Vector<SolrEventListener> softCommitCallbacks = new Vector<>();
+ protected Vector<SolrEventListener> optimizeCallbacks = new Vector<>();
protected final UpdateLog ulog;
protected SolrMetricsContext solrMetricsContext;
- @SuppressWarnings("unchecked")
private void parseEventListeners() {
- final Class<SolrEventListener> clazz = SolrEventListener.class;
- final String label = "Event Listener";
for (PluginInfo info : core.getSolrConfig().getPluginInfos(SolrEventListener.class.getName())) {
String event = info.attributes.get("event");
if ("postCommit".equals(event)) {
- PluginHolder<SolrEventListener> obj = createHolder(info, core, SolrEventListener.class, label);
+ SolrEventListener obj = core.createEventListener(info);
commitCallbacks.add(obj);
log.info("added SolrEventListener for postCommit: {}", obj);
} else if ("postOptimize".equals(event)) {
- PluginHolder<SolrEventListener> obj = createHolder(info, core, SolrEventListener.class, label);
+ SolrEventListener obj = core.createEventListener(info);
optimizeCallbacks.add(obj);
log.info("added SolrEventListener for postOptimize: {}", obj);
}
@@ -77,35 +74,33 @@ public abstract class UpdateHandler implements SolrInfoBean {
* Call the {@link SolrCoreAware#inform(SolrCore)} on all the applicable registered listeners.
*/
public void informEventListeners(SolrCore core) {
- for (PluginHolder<SolrEventListener> listener : commitCallbacks) {
- if (listener instanceof PackagePluginHolder) continue;
- if (listener.get() instanceof SolrCoreAware) {
- ((SolrCoreAware) listener.get()).inform(core);
+ for (SolrEventListener listener: commitCallbacks) {
+ if (listener instanceof SolrCoreAware) {
+ ((SolrCoreAware) listener).inform(core);
}
}
- for (PluginHolder<SolrEventListener> listener : optimizeCallbacks) {
- if (listener instanceof PackagePluginHolder) continue;
- if (listener.get() instanceof SolrCoreAware) {
- ((SolrCoreAware) listener.get()).inform(core);
+ for (SolrEventListener listener: optimizeCallbacks) {
+ if (listener instanceof SolrCoreAware) {
+ ((SolrCoreAware) listener).inform(core);
}
}
}
protected void callPostCommitCallbacks() {
- for (PluginHolder<SolrEventListener> listener : commitCallbacks) {
- listener.get(). postCommit();
+ for (SolrEventListener listener : commitCallbacks) {
+ listener.postCommit();
}
}
protected void callPostSoftCommitCallbacks() {
- for (PluginHolder<SolrEventListener> listener : softCommitCallbacks) {
- listener.get().postSoftCommit();
+ for (SolrEventListener listener : softCommitCallbacks) {
+ listener.postSoftCommit();
}
}
protected void callPostOptimizeCallbacks() {
- for (PluginHolder<SolrEventListener> listener : optimizeCallbacks) {
- listener.get().postCommit();
+ for (SolrEventListener listener : optimizeCallbacks) {
+ listener.postCommit();
}
}
@@ -172,8 +167,9 @@ public abstract class UpdateHandler implements SolrInfoBean {
*
* @see SolrCoreAware
*/
- public void registerCommitCallback( SolrEventListener listener) {
- commitCallbacks.add(createHolder(listener, SolrEventListener.class));
+ public void registerCommitCallback( SolrEventListener listener )
+ {
+ commitCallbacks.add( listener );
}
/**
@@ -183,8 +179,9 @@ public abstract class UpdateHandler implements SolrInfoBean {
*
* @see SolrCoreAware
*/
- public void registerSoftCommitCallback( SolrEventListener listener ) {
- softCommitCallbacks.add(createHolder(listener, SolrEventListener.class));
+ public void registerSoftCommitCallback( SolrEventListener listener )
+ {
+ softCommitCallbacks.add( listener );
}
/**
@@ -194,8 +191,9 @@ public abstract class UpdateHandler implements SolrInfoBean {
*
* @see SolrCoreAware
*/
- public void registerOptimizeCallback( SolrEventListener listener ) {
- optimizeCallbacks.add(createHolder(listener, SolrEventListener.class));
+ public void registerOptimizeCallback( SolrEventListener listener )
+ {
+ optimizeCallbacks.add( listener );
}
public abstract void split(SplitIndexCommand cmd) throws IOException;
diff --git a/solr/core/src/test/org/apache/solr/core/TestQuerySenderListener.java b/solr/core/src/test/org/apache/solr/core/TestQuerySenderListener.java
index 0d66abe..ad564c2 100644
--- a/solr/core/src/test/org/apache/solr/core/TestQuerySenderListener.java
+++ b/solr/core/src/test/org/apache/solr/core/TestQuerySenderListener.java
@@ -60,8 +60,7 @@ public class TestQuerySenderListener extends SolrTestCaseJ4 {
@Test
public void testSearcherEvents() throws Exception {
SolrCore core = h.getCore();
- SolrEventListener newSearcherListener = core.newSearcherListeners.get(0).get();
-
+ SolrEventListener newSearcherListener = core.newSearcherListeners.get(0);
assertTrue("Not an instance of QuerySenderListener", newSearcherListener instanceof QuerySenderListener);
QuerySenderListener qsl = (QuerySenderListener) newSearcherListener;
diff --git a/solr/core/src/test/org/apache/solr/core/TestQuerySenderNoQuery.java b/solr/core/src/test/org/apache/solr/core/TestQuerySenderNoQuery.java
index e113137..a44fe3c 100644
--- a/solr/core/src/test/org/apache/solr/core/TestQuerySenderNoQuery.java
+++ b/solr/core/src/test/org/apache/solr/core/TestQuerySenderNoQuery.java
@@ -61,7 +61,7 @@ public class TestQuerySenderNoQuery extends SolrTestCaseJ4 {
@Test
public void testSearcherEvents() throws Exception {
SolrCore core = h.getCore();
- SolrEventListener newSearcherListener = core.newSearcherListeners.get(0).get();
+ SolrEventListener newSearcherListener = core.newSearcherListeners.get(0);
assertTrue("Not an instance of QuerySenderListener", newSearcherListener instanceof QuerySenderListener);
QuerySenderListener qsl = (QuerySenderListener) newSearcherListener;