diff --git a/flink/flink-scala-2.12/src/main/java/org/apache/zeppelin/flink/FlinkInterpreter.java b/flink/flink-scala-2.12/src/main/java/org/apache/zeppelin/flink/FlinkInterpreter.java
index 244d00f49c0..fa37e0fb30d 100644
--- a/flink/flink-scala-2.12/src/main/java/org/apache/zeppelin/flink/FlinkInterpreter.java
+++ b/flink/flink-scala-2.12/src/main/java/org/apache/zeppelin/flink/FlinkInterpreter.java
@@ -22,7 +22,6 @@
import org.apache.flink.configuration.Configuration;
import org.apache.flink.streaming.api.scala.StreamExecutionEnvironment;
import org.apache.flink.table.api.TableEnvironment;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.apache.zeppelin.interpreter.*;
import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion;
import org.slf4j.Logger;
@@ -91,8 +90,8 @@ private FlinkScalaInterpreter loadFlinkScalaInterpreter() throws Exception {
Class> clazz = Class.forName(innerIntpClassName);
return (FlinkScalaInterpreter)
- clazz.getConstructor(Properties.class, ClassLoader.class, ZeppelinConfiguration.class)
- .newInstance(getProperties(), flinkScalaClassLoader, zConf);
+ clazz.getConstructor(Properties.class, ClassLoader.class)
+ .newInstance(getProperties(), flinkScalaClassLoader);
}
@Override
diff --git a/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScala212Interpreter.scala b/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScala212Interpreter.scala
index 070daf6a2b8..b7af4ad3b10 100644
--- a/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScala212Interpreter.scala
+++ b/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScala212Interpreter.scala
@@ -24,15 +24,13 @@ import java.util.Properties
import org.apache.zeppelin.interpreter.InterpreterContext
import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion
-import org.apache.zeppelin.conf.ZeppelinConfiguration
import scala.tools.nsc.Settings
import scala.tools.nsc.interpreter.{IMain, JPrintWriter}
class FlinkScala212Interpreter(override val properties: Properties,
- override val flinkScalaClassLoader: ClassLoader,
- override val zConf: ZeppelinConfiguration)
- extends FlinkScalaInterpreter(properties, flinkScalaClassLoader, zConf) {
+ override val flinkScalaClassLoader: ClassLoader)
+ extends FlinkScalaInterpreter(properties, flinkScalaClassLoader) {
override def completion(buf: String,
cursor: Int,
diff --git a/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScalaInterpreter.scala b/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScalaInterpreter.scala
index c2ceb60360c..a11003b8bc2 100644
--- a/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScalaInterpreter.scala
+++ b/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScalaInterpreter.scala
@@ -44,7 +44,6 @@ import org.apache.flink.table.catalog.hive.HiveCatalog
import org.apache.flink.table.functions.{AggregateFunction, ScalarFunction, TableAggregateFunction, TableFunction}
import org.apache.flink.table.module.hive.HiveModule
import org.apache.flink.yarn.cli.FlinkYarnSessionCli
-import org.apache.zeppelin.conf.ZeppelinConfiguration
import org.apache.zeppelin.dep.DependencyResolver
import org.apache.zeppelin.flink.internal.FlinkShell
import org.apache.zeppelin.flink.internal.FlinkShell._
@@ -66,8 +65,7 @@ import scala.tools.nsc.interpreter.{Completion, IMain, IR, JPrintWriter, Results
* @param properties
*/
abstract class FlinkScalaInterpreter(val properties: Properties,
- val flinkScalaClassLoader: ClassLoader,
- val zConf: ZeppelinConfiguration) {
+ val flinkScalaClassLoader: ClassLoader) {
private lazy val LOGGER: Logger = LoggerFactory.getLogger(getClass)
@@ -800,7 +798,12 @@ abstract class FlinkScalaInterpreter(val properties: Properties,
val flinkPackageJars =
if (!StringUtils.isBlank(properties.getProperty("flink.execution.packages", ""))) {
val packages = properties.getProperty("flink.execution.packages")
- val dependencyResolver = new DependencyResolver(System.getProperty("user.home") + "/.m2/repository", zConf)
+ val dependencyResolver = new DependencyResolver(
+ System.getProperty("user.home") + "/.m2/repository",
+ properties.getProperty("zeppelin.proxy.url"),
+ properties.getProperty("zeppelin.proxy.user"),
+ properties.getProperty("zeppelin.proxy.password"),
+ properties.getProperty("zeppelin.interpreter.dep.mvnRepo"))
packages.split(",")
.flatMap(e => JavaConversions.asScalaBuffer(dependencyResolver.load(e)))
.map(e => e.getAbsolutePath).toSeq
diff --git a/markdown/src/main/java/org/apache/zeppelin/markdown/FlexmarkParser.java b/markdown/src/main/java/org/apache/zeppelin/markdown/FlexmarkParser.java
index 82c5b9d3541..efbf1493884 100644
--- a/markdown/src/main/java/org/apache/zeppelin/markdown/FlexmarkParser.java
+++ b/markdown/src/main/java/org/apache/zeppelin/markdown/FlexmarkParser.java
@@ -28,11 +28,11 @@
import com.vladsch.flexmark.html.HtmlRenderer;
import com.vladsch.flexmark.parser.Parser;
import com.vladsch.flexmark.util.data.MutableDataSet;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.Arrays;
+import java.util.Properties;
import static com.vladsch.flexmark.ext.emoji.EmojiImageType.UNICODE_ONLY;
@@ -44,7 +44,9 @@ public class FlexmarkParser implements MarkdownParser {
private Parser parser;
private HtmlRenderer renderer;
- public FlexmarkParser(ZeppelinConfiguration zConf) {
+ public FlexmarkParser(Properties properties) {
+ boolean escapeHtml = Boolean.parseBoolean(
+ properties.getProperty("zeppelin.notebook.markdown.escape.html", "true"));
MutableDataSet options = new MutableDataSet();
options.set(Parser.EXTENSIONS, Arrays.asList(StrikethroughExtension.create(),
TablesExtension.create(),
@@ -55,7 +57,7 @@ public FlexmarkParser(ZeppelinConfiguration zConf) {
EmojiExtension.create()));
options.set(HtmlRenderer.SOFT_BREAK, "
\n");
options.set(EmojiExtension.USE_IMAGE_TYPE, UNICODE_ONLY);
- options.set(HtmlRenderer.ESCAPE_HTML, zConf.isZeppelinNotebookMarkdownEscapeHtml());
+ options.set(HtmlRenderer.ESCAPE_HTML, escapeHtml);
parser = Parser.builder(options).build();
renderer = HtmlRenderer.builder(options).build();
}
diff --git a/markdown/src/main/java/org/apache/zeppelin/markdown/Markdown.java b/markdown/src/main/java/org/apache/zeppelin/markdown/Markdown.java
index 46733e43a0d..871c2f8eb0c 100644
--- a/markdown/src/main/java/org/apache/zeppelin/markdown/Markdown.java
+++ b/markdown/src/main/java/org/apache/zeppelin/markdown/Markdown.java
@@ -74,7 +74,7 @@ public MarkdownParser createMarkdownParser(String parserType) {
LOGGER.debug("Creating {} markdown interpreter", parserType);
if (MarkdownParserType.FLEXMARK.toString().equals(parserType)) {
- return new FlexmarkParser(zConf);
+ return new FlexmarkParser(getProperties());
} else {
// default parser
return new Markdown4jParser();
diff --git a/markdown/src/test/java/org/apache/zeppelin/markdown/FlexmarkParserTest.java b/markdown/src/test/java/org/apache/zeppelin/markdown/FlexmarkParserTest.java
index 01540b09c4c..ef9327e89e1 100644
--- a/markdown/src/test/java/org/apache/zeppelin/markdown/FlexmarkParserTest.java
+++ b/markdown/src/test/java/org/apache/zeppelin/markdown/FlexmarkParserTest.java
@@ -17,7 +17,6 @@
package org.apache.zeppelin.markdown;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.apache.zeppelin.interpreter.InterpreterResult;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
@@ -44,7 +43,6 @@ public void setUp() throws Exception {
Properties props = new Properties();
props.put(Markdown.MARKDOWN_PARSER_TYPE, Markdown.PARSER_TYPE_FLEXMARK);
md = new Markdown(props);
- md.setZeppelinConfiguration(ZeppelinConfiguration.load());
md.open();
}
diff --git a/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/PersonalizeActionsIT.java b/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/PersonalizeActionsIT.java
index ea3ad80e319..943f0591756 100644
--- a/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/PersonalizeActionsIT.java
+++ b/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/PersonalizeActionsIT.java
@@ -210,8 +210,8 @@ void testGraphAction() throws Exception {
clickAndWait(By.xpath("//div[@class='modal-dialog'][contains(.,'Do you want to personalize your analysis?')" +
"]//div[@class='modal-footer']//button[contains(.,'OK')]"));
- clickableWait(By.xpath(getParagraphXPath(1) +
- "//button[contains(@uib-tooltip, 'Bar Chart')]"), MAX_BROWSER_TIMEOUT_SEC).click();
+ clickAndWait(By.xpath(getParagraphXPath(1) +
+ "//button[contains(@uib-tooltip, 'Bar Chart')]"));
assertEquals("fa fa-bar-chart",
manager.getWebDriver().findElement(By.xpath(getParagraphXPath(1)
+ "//button[contains(@class," +
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java
index b44e096e4a1..1b3693a20e3 100644
--- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java
+++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java
@@ -24,7 +24,6 @@
import java.util.LinkedList;
import java.util.List;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.eclipse.aether.RepositorySystem;
import org.eclipse.aether.RepositorySystemSession;
import org.eclipse.aether.repository.Authentication;
@@ -49,26 +48,28 @@ public abstract class AbstractDependencyResolver {
protected RepositorySystemSession session;
private Proxy proxy = null;
- protected AbstractDependencyResolver(String localRepoPath, ZeppelinConfiguration zConf) {
- if (zConf.getZeppelinProxyUrl() != null) {
+ protected AbstractDependencyResolver(String localRepoPath,
+ String proxyUrl, String proxyUser, String proxyPassword, String mvnRepoUrl) {
+ if (proxyUrl != null) {
try {
- URL proxyUrl = new URL(zConf.getZeppelinProxyUrl());
- Authentication auth = new AuthenticationBuilder().addUsername(zConf.getZeppelinProxyUser()).addPassword(zConf.getZeppelinProxyPassword()).build();
- proxy = new Proxy(proxyUrl.getProtocol(), proxyUrl.getHost(), proxyUrl.getPort(), auth);
+ URL parsedProxyUrl = new URL(proxyUrl);
+ Authentication auth = new AuthenticationBuilder()
+ .addUsername(proxyUser).addPassword(proxyPassword).build();
+ proxy = new Proxy(parsedProxyUrl.getProtocol(), parsedProxyUrl.getHost(),
+ parsedProxyUrl.getPort(), auth);
} catch (MalformedURLException e) {
- LOGGER.error("Proxy Url {} is not valid - skipping Proxy config", zConf.getZeppelinProxyUrl(), e);
+ LOGGER.error("Proxy Url {} is not valid - skipping Proxy config", proxyUrl, e);
}
}
session = Booter.newRepositorySystemSession(system, localRepoPath);
- repos.addAll(Booter.newCentralRepositorys(proxy, zConf)); // add maven central
+ repos.addAll(Booter.newCentralRepositorys(proxy, mvnRepoUrl)); // add maven central
repos.add(Booter.newLocalRepository());
}
- protected AbstractDependencyResolver(String localRepoPath, Proxy proxy,
- ZeppelinConfiguration zConf) {
+ protected AbstractDependencyResolver(String localRepoPath, Proxy proxy, String mvnRepoUrl) {
this.proxy = proxy;
session = Booter.newRepositorySystemSession(system, localRepoPath);
- repos.addAll(Booter.newCentralRepositorys(proxy, zConf)); // add maven central
+ repos.addAll(Booter.newCentralRepositorys(proxy, mvnRepoUrl)); // add maven central
repos.add(Booter.newLocalRepository());
}
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java
index b0e89b96a42..16822c6ae74 100644
--- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java
+++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java
@@ -18,7 +18,6 @@
package org.apache.zeppelin.dep;
import org.apache.commons.lang3.Validate;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.apache.maven.repository.internal.MavenRepositorySystemUtils;
import org.eclipse.aether.DefaultRepositorySystemSession;
import org.eclipse.aether.RepositorySystem;
@@ -83,10 +82,10 @@ static String resolveLocalRepoPath(String localRepoPath) {
}
public static List newCentralRepositorys(Proxy proxy,
- ZeppelinConfiguration zConf) {
+ String mvnRepoUrl) {
String mvnRepoEnv = System.getenv("ZEPPELIN_INTERPRETER_DEP_MVNREPO");
if (mvnRepoEnv == null) {
- mvnRepoEnv = zConf.getString(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_DEP_MVNREPO);
+ mvnRepoEnv = mvnRepoUrl;
}
if (mvnRepoEnv == null) {
mvnRepoEnv = "https://repo1.maven.org/maven2/";
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java
index cd7eea5a05a..e513ac2b66b 100644
--- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java
+++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java
@@ -27,7 +27,6 @@
import org.apache.commons.io.FileUtils;
import org.apache.commons.lang3.StringUtils;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.eclipse.aether.RepositoryException;
import org.eclipse.aether.artifact.Artifact;
import org.eclipse.aether.artifact.DefaultArtifact;
@@ -56,12 +55,13 @@ public class DependencyResolver extends AbstractDependencyResolver {
"org.apache.zeppelin:zeppelin-interpreter",
"org.apache.zeppelin:zeppelin-server"};
- public DependencyResolver(String localRepoPath, ZeppelinConfiguration zConf) {
- super(localRepoPath, zConf);
+ public DependencyResolver(String localRepoPath,
+ String proxyUrl, String proxyUser, String proxyPassword, String mvnRepoUrl) {
+ super(localRepoPath, proxyUrl, proxyUser, proxyPassword, mvnRepoUrl);
}
- public DependencyResolver(String localRepoPath, Proxy proxy, ZeppelinConfiguration zConf) {
- super(localRepoPath, proxy, zConf);
+ public DependencyResolver(String localRepoPath, Proxy proxy, String mvnRepoUrl) {
+ super(localRepoPath, proxy, mvnRepoUrl);
}
public List load(String artifact)
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java
index 9c3c9e59f50..bf09cb7106b 100644
--- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java
+++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java
@@ -22,7 +22,6 @@
import org.apache.commons.lang3.reflect.FieldUtils;
import org.apache.zeppelin.annotation.Experimental;
import org.apache.zeppelin.annotation.ZeppelinApi;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion;
import org.apache.zeppelin.scheduler.Scheduler;
import org.apache.zeppelin.scheduler.SchedulerFactory;
@@ -150,7 +149,6 @@ public Scheduler getScheduler() {
private URL[] classloaderUrls;
protected Properties properties;
protected String userName;
- protected ZeppelinConfiguration zConf;
@ZeppelinApi
public Interpreter(Properties properties) {
@@ -200,10 +198,6 @@ public String getUserName() {
return this.userName;
}
- public void setZeppelinConfiguration(ZeppelinConfiguration zConf) {
- this.zConf = zConf;
- }
-
public void setInterpreterGroup(InterpreterGroup interpreterGroup) {
this.interpreterGroup = interpreterGroup;
}
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/InterpreterOption.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/InterpreterOption.java
index f7b17e362e6..116d2604884 100644
--- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/InterpreterOption.java
+++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/InterpreterOption.java
@@ -20,8 +20,6 @@
import java.util.ArrayList;
import java.util.List;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
-
/**
*
*/
@@ -29,7 +27,7 @@ public class InterpreterOption {
public static final transient String SHARED = "shared";
public static final transient String SCOPED = "scoped";
public static final transient String ISOLATED = "isolated";
- private transient ZeppelinConfiguration zConf;
+ private transient boolean usernameForceLowerCase;
// always set it as true, keep this field just for backward compatibility
boolean remote = true;
@@ -60,8 +58,8 @@ public void setHost(String host) {
this.host = host;
}
- public void setConf(ZeppelinConfiguration zConf) {
- this.zConf = zConf;
+ public void setUsernameForceLowerCase(boolean usernameForceLowerCase) {
+ this.usernameForceLowerCase = usernameForceLowerCase;
}
public boolean permissionIsSet() {
@@ -73,7 +71,7 @@ public void setUserPermission(boolean setPermission) {
}
public List getOwners() {
- if (null != owners && zConf.isUsernameForceLowerCase()) {
+ if (null != owners && usernameForceLowerCase) {
List lowerCaseUsers = new ArrayList<>();
for (String owner : owners) {
lowerCaseUsers.add(owner.toLowerCase());
@@ -117,7 +115,7 @@ public static InterpreterOption fromInterpreterOption(InterpreterOption other) {
option.setPermission = other.setPermission;
option.owners = (null == other.owners) ?
new ArrayList<>() : new ArrayList<>(other.owners);
- option.zConf = other.zConf;
+ option.usernameForceLowerCase = other.usernameForceLowerCase;
return option;
}
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LazyOpenInterpreter.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LazyOpenInterpreter.java
index ec236ce1f28..f794a582837 100644
--- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LazyOpenInterpreter.java
+++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LazyOpenInterpreter.java
@@ -21,7 +21,6 @@
import java.util.List;
import java.util.Properties;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion;
import org.apache.zeppelin.scheduler.Scheduler;
@@ -205,11 +204,6 @@ public void setUserName(String userName) {
this.intp.setUserName(userName);
}
- @Override
- public void setZeppelinConfiguration(ZeppelinConfiguration zConf) {
- this.intp.setZeppelinConfiguration(zConf);
- }
-
@Override
public String getUserName() {
return this.intp.getUserName();
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LifecycleManager.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LifecycleManager.java
index 8f44b2f962d..71528adf6d6 100644
--- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LifecycleManager.java
+++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LifecycleManager.java
@@ -19,19 +19,20 @@
package org.apache.zeppelin.interpreter;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer;
+import java.util.Properties;
+
/**
* Abstract base class for managing the lifecycle of interpreters
*/
public abstract class LifecycleManager {
- protected ZeppelinConfiguration zConf;
+ protected Properties properties;
protected RemoteInterpreterServer remoteInterpreterServer;
- public LifecycleManager(ZeppelinConfiguration zConf, RemoteInterpreterServer remoteInterpreterServer) {
- this.zConf = zConf;
+ public LifecycleManager(Properties properties, RemoteInterpreterServer remoteInterpreterServer) {
+ this.properties = properties;
this.remoteInterpreterServer = remoteInterpreterServer;
}
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/NullLifecycleManager.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/NullLifecycleManager.java
index da09c0fbd61..33609826874 100644
--- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/NullLifecycleManager.java
+++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/NullLifecycleManager.java
@@ -18,18 +18,19 @@
package org.apache.zeppelin.interpreter.lifecycle;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.apache.zeppelin.interpreter.LifecycleManager;
import org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer;
+import java.util.Properties;
+
/**
* Do nothing for the lifecycle of interpreter. User need to explicitly start/stop interpreter.
*/
public class NullLifecycleManager extends LifecycleManager {
- public NullLifecycleManager(ZeppelinConfiguration zConf,
+ public NullLifecycleManager(Properties properties,
RemoteInterpreterServer remoteInterpreterServer) {
- super(zConf, remoteInterpreterServer);
+ super(properties, remoteInterpreterServer);
}
@Override
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/TimeoutLifecycleManager.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/TimeoutLifecycleManager.java
index e6bb97c7b09..75c96580771 100644
--- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/TimeoutLifecycleManager.java
+++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/TimeoutLifecycleManager.java
@@ -18,13 +18,14 @@
package org.apache.zeppelin.interpreter.lifecycle;
import org.apache.thrift.TException;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.apache.zeppelin.interpreter.LifecycleManager;
import org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer;
import org.apache.zeppelin.scheduler.ExecutorFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.time.Duration;
+import java.util.Properties;
import java.util.concurrent.ScheduledExecutorService;
import static java.util.concurrent.TimeUnit.MILLISECONDS;
@@ -41,15 +42,20 @@ public class TimeoutLifecycleManager extends LifecycleManager {
private static final Logger LOGGER = LoggerFactory.getLogger(TimeoutLifecycleManager.class);
+ private static final long DEFAULT_CHECK_INTERVAL = 60000L;
+ private static final long DEFAULT_TIMEOUT_THRESHOLD = 3600000L;
+
private long lastBusyTimeInMillis;
- public TimeoutLifecycleManager(ZeppelinConfiguration zConf,
+ public TimeoutLifecycleManager(Properties properties,
RemoteInterpreterServer remoteInterpreterServer) {
- super(zConf, remoteInterpreterServer);
- long checkInterval = zConf.getTime(ZeppelinConfiguration.ConfVars
- .ZEPPELIN_INTERPRETER_LIFECYCLE_MANAGER_TIMEOUT_CHECK_INTERVAL);
- long timeoutThreshold = zConf.getTime(
- ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_LIFECYCLE_MANAGER_TIMEOUT_THRESHOLD);
+ super(properties, remoteInterpreterServer);
+ long checkInterval = parseTimeValue(properties.getProperty(
+ "zeppelin.interpreter.lifecyclemanager.timeout.checkinterval",
+ String.valueOf(DEFAULT_CHECK_INTERVAL)));
+ long timeoutThreshold = parseTimeValue(properties.getProperty(
+ "zeppelin.interpreter.lifecyclemanager.timeout.threshold",
+ String.valueOf(DEFAULT_TIMEOUT_THRESHOLD)));
ScheduledExecutorService checkScheduler = ExecutorFactory.singleton()
.createOrGetScheduled("TimeoutLifecycleManager", 1);
checkScheduler.scheduleAtFixedRate(() -> {
@@ -64,10 +70,21 @@ public TimeoutLifecycleManager(ZeppelinConfiguration zConf,
LOGGER.debug("Check idle time of interpreter");
}
}, checkInterval, checkInterval, MILLISECONDS);
- LOGGER.info("TimeoutLifecycleManager is started with checkInterval: {}, timeoutThreshold: ΒΈ{}", checkInterval,
+ LOGGER.info("TimeoutLifecycleManager is started with checkInterval: {}, timeoutThreshold: {}", checkInterval,
timeoutThreshold);
}
+ static long parseTimeValue(String value) {
+ try {
+ return Long.parseLong(value);
+ } catch (NumberFormatException e) {
+ if (value.endsWith("ms")) {
+ return Long.parseLong(value.substring(0, value.length() - 2));
+ }
+ return Duration.parse("PT" + value).toMillis();
+ }
+ }
+
@Override
public void onInterpreterProcessStarted(String interpreterGroupId) {
LOGGER.info("Interpreter process: {} is started", interpreterGroupId);
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServer.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServer.java
index 6728e7f441c..e733fd57f8c 100644
--- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServer.java
+++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServer.java
@@ -25,7 +25,6 @@
import org.apache.thrift.server.TThreadPoolServer;
import org.apache.thrift.transport.TServerSocket;
import org.apache.thrift.transport.TTransportException;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.apache.zeppelin.dep.DependencyResolver;
import org.apache.zeppelin.display.AngularObject;
import org.apache.zeppelin.display.AngularObjectRegistry;
@@ -144,7 +143,7 @@ public class RemoteInterpreterServer extends Thread
// pod (RemoteInterpreterServer)
private boolean isForceShutdown = true;
- private ZeppelinConfiguration zConf;
+ private Properties zProperties;
private static Thread shutdownThread;
@@ -200,10 +199,8 @@ public void run() {
@Override
public void init(Map properties) throws InterpreterRPCException, TException {
- this.zConf = ZeppelinConfiguration.load();
- for (Map.Entry entry : properties.entrySet()) {
- this.zConf.setProperty(entry.getKey(), entry.getValue());
- }
+ this.zProperties = new Properties();
+ this.zProperties.putAll(properties);
try {
lifecycleManager = createLifecycleManager();
@@ -213,8 +210,8 @@ public void init(Map properties) throws InterpreterRPCException,
}
if (!isTest) {
- int connectionPoolSize =
- this.zConf.getInt(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_CONNECTION_POOL_SIZE);
+ int connectionPoolSize = Integer.parseInt(
+ zProperties.getProperty("zeppelin.interpreter.connection.poolsize", "100"));
LOGGER.info("Creating RemoteInterpreterEventClient with connection pool size: {}",
connectionPoolSize);
intpEventClient = new RemoteInterpreterEventClient(intpEventServerHost, intpEventServerPort,
@@ -249,8 +246,8 @@ public void shutdown() throws InterpreterRPCException, TException {
shutDownThread.start();
}
- public ZeppelinConfiguration getConf() {
- return this.zConf;
+ public Properties getProperties() {
+ return this.zProperties;
}
public LifecycleManager getLifecycleManager() {
@@ -270,11 +267,13 @@ public boolean isRunning() {
}
private LifecycleManager createLifecycleManager() throws Exception {
- String lifecycleManagerClass = zConf.getLifecycleManagerClass();
+ String lifecycleManagerClass = zProperties.getProperty(
+ "zeppelin.interpreter.lifecyclemanager.class",
+ "org.apache.zeppelin.interpreter.lifecycle.NullLifecycleManager");
Class> clazz = Class.forName(lifecycleManagerClass);
LOGGER.info("Creating interpreter lifecycle manager: {}", lifecycleManagerClass);
- return (LifecycleManager) clazz.getConstructor(ZeppelinConfiguration.class, RemoteInterpreterServer.class)
- .newInstance(zConf, this);
+ return (LifecycleManager) clazz.getConstructor(Properties.class, RemoteInterpreterServer.class)
+ .newInstance(zProperties, this);
}
public static void main(String[] args) throws Exception {
@@ -335,7 +334,11 @@ public void createInterpreter(String interpreterGroupId, String sessionId, Strin
properties.get("zeppelin.interpreter.output.limit"));
}
- depLoader = new DependencyResolver(localRepoPath, zConf);
+ depLoader = new DependencyResolver(localRepoPath,
+ zProperties.getProperty("zeppelin.proxy.url"),
+ zProperties.getProperty("zeppelin.proxy.user"),
+ zProperties.getProperty("zeppelin.proxy.password"),
+ zProperties.getProperty("zeppelin.interpreter.dep.mvnRepo"));
appLoader = new ApplicationLoader(resourcePool, depLoader);
resultCacheInSeconds =
@@ -361,7 +364,6 @@ public void createInterpreter(String interpreterGroupId, String sessionId, Strin
interpreter.setInterpreterGroup(interpreterGroup);
interpreter.setUserName(userName);
- interpreter.setZeppelinConfiguration(zConf);
interpreterGroup.addInterpreterToSession(new LazyOpenInterpreter(interpreter), sessionId);
@@ -484,7 +486,7 @@ public void reconnect(String host, int port) throws InterpreterRPCException, TEx
this.intpEventServerHost = host;
this.intpEventServerPort = port;
intpEventClient = new RemoteInterpreterEventClient(intpEventServerHost, intpEventServerPort,
- this.zConf.getInt(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_CONNECTION_POOL_SIZE));
+ Integer.parseInt(zProperties.getProperty("zeppelin.interpreter.connection.poolsize", "100")));
intpEventClient.setIntpGroupId(interpreterGroupId);
this.angularObjectRegistry = new AngularObjectRegistry(interpreterGroup.getId(), intpEventClient);
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/scheduler/SchedulerFactory.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/scheduler/SchedulerFactory.java
index e3213467fc9..a4178704b59 100644
--- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/scheduler/SchedulerFactory.java
+++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/scheduler/SchedulerFactory.java
@@ -17,7 +17,6 @@
package org.apache.zeppelin.scheduler;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.apache.zeppelin.util.ExecutorUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -50,12 +49,23 @@ public static SchedulerFactory singleton() {
}
private SchedulerFactory() {
- int threadPoolSize = ZeppelinConfiguration
- .getStaticInt(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_SCHEDULER_POOL_SIZE);
+ int threadPoolSize = getSchedulerPoolSize();
LOGGER.info("Scheduler Thread Pool Size: {}", threadPoolSize);
executor = ExecutorFactory.singleton().createOrGet(SCHEDULER_EXECUTOR_NAME, threadPoolSize);
}
+ private static int getSchedulerPoolSize() {
+ String envValue = System.getenv("ZEPPELIN_INTERPRETER_SCHEDULER_POOL_SIZE");
+ if (envValue != null) {
+ return Integer.parseInt(envValue);
+ }
+ String propValue = System.getProperty("zeppelin.scheduler.threadpool.size");
+ if (propValue != null) {
+ return Integer.parseInt(propValue);
+ }
+ return 100;
+ }
+
public void destroy() {
LOGGER.info("Destroy all executors");
synchronized (schedulers) {
diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/conf/ZeppelinConfigurationTest.java b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/conf/ZeppelinConfigurationTest.java
deleted file mode 100644
index 55c68d48a29..00000000000
--- a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/conf/ZeppelinConfigurationTest.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.zeppelin.conf;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertThrows;
-
-import java.time.format.DateTimeParseException;
-
-import org.junit.jupiter.api.Test;
-
-class ZeppelinConfigurationTest {
-
- @Test
- void testTimeUnitToMill() {
- assertEquals(10L, ZeppelinConfiguration.timeUnitToMill("10ms"));
- assertEquals(2000L, ZeppelinConfiguration.timeUnitToMill("2s"));
- assertEquals(60000L, ZeppelinConfiguration.timeUnitToMill("1m"));
- assertEquals(3600000L, ZeppelinConfiguration.timeUnitToMill("1h"));
- }
-
- @Test
- void testTimeUnitToMill_WithoutUnit_1() {
- assertThrows(DateTimeParseException.class, () -> {
- ZeppelinConfiguration.timeUnitToMill("60000");
- });
- }
-
- @Test
- void testTimeUnitToMill_WithoutUnit_2() {
- assertThrows(DateTimeParseException.class, () -> {
- ZeppelinConfiguration.timeUnitToMill("0");
- });
- }
-}
diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/BooterTest.java b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/BooterTest.java
index a2619db3085..7ea565d5284 100644
--- a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/BooterTest.java
+++ b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/BooterTest.java
@@ -17,7 +17,6 @@
package org.apache.zeppelin.dep;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.eclipse.aether.repository.RemoteRepository;
import org.junit.jupiter.api.Test;
@@ -56,8 +55,8 @@ void should_throw_exception_for_null() {
@Test
void getInterpreterMvnRepoPathTest() {
- ZeppelinConfiguration zConf = ZeppelinConfiguration.load("zeppelin-site-test.xml");
- List remoteRepositories = Booter.newCentralRepositorys(null, zConf);
+ String mvnRepoUrl = "https://repo1.maven.org/maven2/,https://repo2.maven.org/maven2/";
+ List remoteRepositories = Booter.newCentralRepositorys(null, mvnRepoUrl);
assertNotNull(remoteRepositories);
assertEquals(2, remoteRepositories.size());
assertEquals("https://repo1.maven.org/maven2/", remoteRepositories.get(0).getUrl());
diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/DependencyResolverTest.java b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/DependencyResolverTest.java
index f51b683a75d..1a41ab4858a 100644
--- a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/DependencyResolverTest.java
+++ b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/DependencyResolverTest.java
@@ -18,7 +18,6 @@
package org.apache.zeppelin.dep;
import org.apache.commons.io.FileUtils;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.eclipse.aether.RepositoryException;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
@@ -45,7 +44,7 @@ static void setUp() throws Exception {
System.currentTimeMillis());
testPath = tmpDir.getAbsolutePath() + "/test-repo";
testCopyPath = new File(tmpDir, "test-copy-repo");
- resolver = new DependencyResolver(testPath, ZeppelinConfiguration.load());
+ resolver = new DependencyResolver(testPath, null, null, null, null);
}
@AfterAll
diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/helium/ApplicationLoaderTest.java b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/helium/ApplicationLoaderTest.java
index 3344a38338f..39b392eb4aa 100644
--- a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/helium/ApplicationLoaderTest.java
+++ b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/helium/ApplicationLoaderTest.java
@@ -18,7 +18,6 @@
package org.apache.zeppelin.helium;
import org.apache.commons.io.FileUtils;
-import org.apache.zeppelin.conf.ZeppelinConfiguration;
import org.apache.zeppelin.dep.DependencyResolver;
import org.apache.zeppelin.interpreter.InterpreterOutput;
import org.apache.zeppelin.resource.LocalResourcePool;
@@ -54,7 +53,7 @@ void loadUnloadApplication() throws Exception {
// given
LocalResourcePool resourcePool = new LocalResourcePool("pool1");
DependencyResolver dep =
- new DependencyResolver(tmpDir.getAbsolutePath(), ZeppelinConfiguration.load());
+ new DependencyResolver(tmpDir.getAbsolutePath(), null, null, null, null);
ApplicationLoader appLoader = new ApplicationLoader(resourcePool, dep);
HeliumPackage pkg1 = createPackageInfo(MockApplication1.class.getName(), "artifact1");
diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServerTest.java b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServerTest.java
index c1700cdef1b..58ef866a744 100644
--- a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServerTest.java
+++ b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServerTest.java
@@ -82,7 +82,7 @@ private void startRemoteInterpreterServer(RemoteInterpreterServer server, int ti
server.getPort()));
server.init(new HashMap<>());
- assertNotNull(server.getConf());
+ assertNotNull(server.getProperties());
assertNotNull(server.getLifecycleManager());
}
diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/service/InterpreterService.java b/zeppelin-server/src/main/java/org/apache/zeppelin/service/InterpreterService.java
index a845bf869a1..d1f330b993c 100644
--- a/zeppelin-server/src/main/java/org/apache/zeppelin/service/InterpreterService.java
+++ b/zeppelin-server/src/main/java/org/apache/zeppelin/service/InterpreterService.java
@@ -71,7 +71,13 @@ public void installInterpreter(
String interpreterBaseDir = zConf.getInterpreterDir();
String localRepoPath = zConf.getInterpreterLocalRepoPath();
- final DependencyResolver dependencyResolver = new DependencyResolver(localRepoPath, zConf);
+ final DependencyResolver dependencyResolver = new DependencyResolver(
+ localRepoPath,
+ zConf.getZeppelinProxyUrl(),
+ zConf.getZeppelinProxyUser(),
+ zConf.getZeppelinProxyPassword(),
+ zConf.getString(
+ ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_DEP_MVNREPO));
// TODO(jl): Make a rule between an interpreter name and an installation directory
List possibleInterpreterDirectories = new ArrayList<>();
diff --git a/zeppelin-server/src/test/java/org/apache/zeppelin/service/InterpreterServiceTest.java b/zeppelin-server/src/test/java/org/apache/zeppelin/service/InterpreterServiceTest.java
index a73c2563d48..d7a89f30abb 100644
--- a/zeppelin-server/src/test/java/org/apache/zeppelin/service/InterpreterServiceTest.java
+++ b/zeppelin-server/src/test/java/org/apache/zeppelin/service/InterpreterServiceTest.java
@@ -102,7 +102,7 @@ void downloadInterpreter() throws IOException {
Path specificInterpreterPath =
Files.createDirectory(Paths.get(interpreterDir.toString(), interpreterName));
DependencyResolver dependencyResolver =
- new DependencyResolver(localRepoDir.toString(), ZeppelinConfiguration.load());
+ new DependencyResolver(localRepoDir.toString(), null, null, null, null);
doNothing().when(mockInterpreterSettingManager).refreshInterpreterTemplates();
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java
similarity index 100%
rename from zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java
rename to zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinLocationStrategy.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinLocationStrategy.java
similarity index 100%
rename from zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinLocationStrategy.java
rename to zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinLocationStrategy.java
diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSetting.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSetting.java
index 2adaa55a42b..f26bc54f0e7 100644
--- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSetting.java
+++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSetting.java
@@ -197,7 +197,7 @@ public Builder setDependencies(List dependencies) {
public Builder setConf(ZeppelinConfiguration zConf) {
interpreterSetting.zConf = zConf;
- interpreterSetting.option.setConf(zConf);
+ interpreterSetting.option.setUsernameForceLowerCase(zConf.isUsernameForceLowerCase());
return this;
}
@@ -664,7 +664,7 @@ public ZeppelinConfiguration getConf() {
public InterpreterSetting setConf(ZeppelinConfiguration zConf) {
this.zConf = zConf;
- this.option.setConf(zConf);
+ this.option.setUsernameForceLowerCase(zConf.isUsernameForceLowerCase());
return this;
}
diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java
index 1f25479aa98..e2959382206 100644
--- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java
+++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java
@@ -178,7 +178,10 @@ public InterpreterSettingManager(ZeppelinConfiguration zConf,
this.interpreterDirPath = Paths.get(zConf.getInterpreterDir());
LOGGER.debug("InterpreterRootPath: {}", interpreterDirPath);
this.dependencyResolver =
- new DependencyResolver(zConf.getString(ConfVars.ZEPPELIN_INTERPRETER_LOCALREPO), zConf);
+ new DependencyResolver(zConf.getString(ConfVars.ZEPPELIN_INTERPRETER_LOCALREPO),
+ zConf.getZeppelinProxyUrl(), zConf.getZeppelinProxyUser(),
+ zConf.getZeppelinProxyPassword(),
+ zConf.getString(ConfVars.ZEPPELIN_INTERPRETER_DEP_MVNREPO));
this.interpreterRepositories = new ArrayList<>();
for (RemoteRepository repo : dependencyResolver.getRepos()) {
this.interpreterRepositories.add(Repository.fromRemoteRepository(repo));
diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/install/InstallInterpreter.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/install/InstallInterpreter.java
index 4c9a3ae3cd7..3038e01452e 100644
--- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/install/InstallInterpreter.java
+++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/install/InstallInterpreter.java
@@ -163,7 +163,8 @@ public void install(String name, String artifact) {
proxy = new Proxy(proxyUrl.getProtocol(), proxyUrl.getHost(), proxyUrl.getPort(), auth);
}
DependencyResolver depResolver =
- new DependencyResolver(localRepoDir, proxy, zConf);
+ new DependencyResolver(localRepoDir, proxy,
+ zConf.getString(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_DEP_MVNREPO));
File installDir = new File(interpreterBaseDir, name);
if (installDir.exists()) {
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterClient.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterClient.java
similarity index 100%
rename from zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterClient.java
rename to zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterClient.java
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLaunchContext.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLaunchContext.java
similarity index 100%
rename from zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLaunchContext.java
rename to zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLaunchContext.java
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncher.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncher.java
similarity index 100%
rename from zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncher.java
rename to zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncher.java
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/recovery/RecoveryStorage.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/recovery/RecoveryStorage.java
similarity index 100%
rename from zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/recovery/RecoveryStorage.java
rename to zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/recovery/RecoveryStorage.java
diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreter.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreter.java
index 859e4e2ddcb..6bd2e202325 100644
--- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreter.java
+++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreter.java
@@ -77,7 +77,6 @@ public RemoteInterpreter(Properties properties,
this.sessionId = sessionId;
this.className = className;
this.setUserName(userName);
- this.setZeppelinConfiguration(zConf);
}
public boolean isOpened() {
diff --git a/zeppelin-zengine/src/test/java/org/apache/zeppelin/interpreter/InterpreterSettingTest.java b/zeppelin-zengine/src/test/java/org/apache/zeppelin/interpreter/InterpreterSettingTest.java
index f7df6715d55..7d4051687bf 100644
--- a/zeppelin-zengine/src/test/java/org/apache/zeppelin/interpreter/InterpreterSettingTest.java
+++ b/zeppelin-zengine/src/test/java/org/apache/zeppelin/interpreter/InterpreterSettingTest.java
@@ -577,7 +577,7 @@ void testLoadDependency() throws InterruptedException {
.setGroup("group")
.setOption(interpreterOption)
.setIntepreterSettingManager(interpreterSettingManager)
- .setDependencyResolver(new DependencyResolver("/tmp", zConf))
+ .setDependencyResolver(new DependencyResolver("/tmp", null, null, null, null))
.setConf(zConf)
.create();
diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncherTest.java b/zeppelin-zengine/src/test/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncherTest.java
similarity index 100%
rename from zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncherTest.java
rename to zeppelin-zengine/src/test/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncherTest.java