kishoreg commented on a change in pull request #4956: Make plugin manager to 
load plugins based on environment variables
URL: https://github.com/apache/incubator-pinot/pull/4956#discussion_r362679950
 
 

 ##########
 File path: 
pinot-spi/src/main/java/org/apache/pinot/spi/plugin/PluginManager.java
 ##########
 @@ -28,19 +28,59 @@
 import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 import org.apache.commons.io.FileUtils;
+import org.apache.commons.lang.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 
 public class PluginManager {
 
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(PluginManager.class);
+  public static final String PLUGINS_ROOT_DIR_ENV_VAR = 
"plugins.root.directory";
+  public static final String PLUGINS_LOADING_ENV_VAR = "plugins.loading";
   public static final String DEFAULT_PLUGIN_NAME = "DEFAULT";
+  private static final String JAR_FILE_EXTENSION = "jar";
   static PluginManager PLUGIN_MANAGER = new PluginManager();
 
   Map<Plugin, PluginClassLoader> _registry = new HashMap<>();
+  String pluginsRootDir;
+  String pluginsLoading;
 
   private PluginManager() {
     _registry.put(new Plugin(DEFAULT_PLUGIN_NAME), 
createClassLoader(Collections.emptyList()));
+    pluginsRootDir = System.getenv(PLUGINS_ROOT_DIR_ENV_VAR);
+    pluginsLoading = System.getenv(PLUGINS_LOADING_ENV_VAR);
+    init(pluginsRootDir, pluginsLoading);
+  }
+
+  private void init(String pluginsRootDir, String pluginsLoading) {
+    if (StringUtils.isEmpty(pluginsRootDir)) {
+      LOGGER.info("No plugins root dir specified from environment variable");
 
 Review comment:
   change to "Env variable 'PLUGINS_ROOT_DIR_ENV_VAR' is not specified. Set 
this variable to load additional plugins"

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to