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:45:57 UTC

[lucene] 16/21: more javadocs

This is an automated email from the ASF dual-hosted git repository.

dweiss pushed a commit to branch jira/solr14155
in repository https://gitbox.apache.org/repos/asf/lucene.git

commit 16f6f4a4246ba3633d6403134b841b81e8ba11f1
Author: noble <no...@apache.org>
AuthorDate: Sun Dec 29 09:58:45 2019 +1100

    more javadocs
---
 .../java/org/apache/solr/pkg/PackageAwareSolrClassLoader.java    | 9 +++++++--
 solr/core/src/java/org/apache/solr/pkg/PackageListeners.java     | 9 +++++----
 solr/core/src/java/org/apache/solr/schema/IndexSchema.java       | 3 ++-
 3 files changed, 14 insertions(+), 7 deletions(-)

diff --git a/solr/core/src/java/org/apache/solr/pkg/PackageAwareSolrClassLoader.java b/solr/core/src/java/org/apache/solr/pkg/PackageAwareSolrClassLoader.java
index 2eb8913..5820439 100644
--- a/solr/core/src/java/org/apache/solr/pkg/PackageAwareSolrClassLoader.java
+++ b/solr/core/src/java/org/apache/solr/pkg/PackageAwareSolrClassLoader.java
@@ -48,9 +48,14 @@ public class PackageAwareSolrClassLoader implements SolrClassLoader {
   private final Runnable reloadRunnable;
 
 
-  public PackageAwareSolrClassLoader(SolrCore core, SolrResourceLoader loader, Runnable runnable) {
+  /**
+   *
+   * @param core The core where this belong to
+   * @param runnable run a task if somethingis modified, say reload schema or reload core, refresh cache or something else
+   */
+  public PackageAwareSolrClassLoader(SolrCore core,  Runnable runnable) {
     this.core = core;
-    this.loader = loader;
+    this.loader = core.getResourceLoader();
     this.reloadRunnable = runnable;
   }
 
diff --git a/solr/core/src/java/org/apache/solr/pkg/PackageListeners.java b/solr/core/src/java/org/apache/solr/pkg/PackageListeners.java
index 59c10d5..45baa04 100644
--- a/solr/core/src/java/org/apache/solr/pkg/PackageListeners.java
+++ b/solr/core/src/java/org/apache/solr/pkg/PackageListeners.java
@@ -25,6 +25,7 @@ import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.function.Consumer;
 
 import org.apache.solr.core.PluginInfo;
@@ -98,10 +99,10 @@ public class PackageListeners {
   }
 
   public void forEachListener(Consumer<Listener> listenerConsumer){
-    listeners.forEach(ref -> {
-      Listener l = ref.get();
-      if (l != null) listenerConsumer.accept(l);
-    });
+    listeners.stream()
+        .map(Reference::get)
+        .filter(Objects::nonNull)
+        .forEach(listenerConsumer);
   }
 
   public List<Listener> getListeners() {
diff --git a/solr/core/src/java/org/apache/solr/schema/IndexSchema.java b/solr/core/src/java/org/apache/solr/schema/IndexSchema.java
index 74e20b3..2205cf8 100644
--- a/solr/core/src/java/org/apache/solr/schema/IndexSchema.java
+++ b/solr/core/src/java/org/apache/solr/schema/IndexSchema.java
@@ -202,7 +202,8 @@ public class IndexSchema implements Closeable {
     if(loader.getCore() == null) {
       this.classLoader = loader;
     } else {
-      this.classLoader = new PackageAwareSolrClassLoader(loader.getCore(), loader,  () ->  loader.getCore().refreshSchema());
+      SolrCore core = loader.getCore();
+      this.classLoader = new PackageAwareSolrClassLoader(loader.getCore(), core::refreshSchema);
     }
   }