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;