zjffdu commented on a change in pull request #3468: [ZEPPELIN-4356] Zeppelin
should stop/die/etc when can't create/access notebook repo
URL: https://github.com/apache/zeppelin/pull/3468#discussion_r329351154
##########
File path:
zeppelin-server/src/main/java/org/apache/zeppelin/server/ZeppelinServer.java
##########
@@ -105,74 +106,76 @@
@Inject
public ZeppelinServer() {
InterpreterOutput.limit =
conf.getInt(ConfVars.ZEPPELIN_INTERPRETER_OUTPUT_LIMIT);
-
packages("org.apache.zeppelin.rest");
}
- public static void main(String[] args) throws InterruptedException {
+ public static void main(String[] args) throws Exception {
final ZeppelinConfiguration conf = ZeppelinConfiguration.create();
conf.setProperty("args", args);
jettyWebServer = setupJettyServer(conf);
ContextHandlerCollection contexts = new ContextHandlerCollection();
- jettyWebServer.setHandler(contexts);
-
- // Web UI
- final WebAppContext webApp = setupWebAppContext(contexts, conf);
+ jettyWebServer.setHandler(contexts);
+ // Web UI
+ final WebAppContext webApp = setupWebAppContext(contexts,
conf);
sharedServiceLocator =
ServiceLocatorFactory.getInstance().create("shared-locator");
ServiceLocatorUtilities.enableImmediateScope(sharedServiceLocator);
+ ServiceLocatorUtilities.addClasses(sharedServiceLocator,
+ NotebookRepoSync.class,
+ ImmediateErrorHandlerImpl.class);
+ ImmediateErrorHandlerImpl handler =
sharedServiceLocator.getService(ImmediateErrorHandlerImpl.class);
+
ServiceLocatorUtilities.bind(
- sharedServiceLocator,
- new AbstractBinder() {
- @Override
- protected void configure() {
- Credentials credentials =
- new Credentials(
- conf.credentialsPersist(),
- conf.getCredentialsPath(),
- conf.getCredentialsEncryptKey());
-
- bindAsContract(InterpreterFactory.class).in(Singleton.class);
-
bindAsContract(NotebookRepoSync.class).to(NotebookRepo.class).in(Singleton.class);
-
bind(LuceneSearch.class).to(SearchService.class).in(Singleton.class);
- bindAsContract(Helium.class).in(Singleton.class);
- bind(conf).to(ZeppelinConfiguration.class);
-
bindAsContract(InterpreterSettingManager.class).in(Singleton.class);
- bindAsContract(InterpreterService.class).in(Singleton.class);
- bind(credentials).to(Credentials.class);
- bindAsContract(GsonProvider.class).in(Singleton.class);
-
bindAsContract(WebApplicationExceptionMapper.class).in(Singleton.class);
- bindAsContract(AdminService.class).in(Singleton.class);
- bindAsContract(AuthorizationService.class).to(Singleton.class);
- // TODO(jl): Will make it more beautiful
- if (!StringUtils.isBlank(conf.getShiroPath())) {
-
bind(ShiroAuthenticationService.class).to(AuthenticationService.class).in(Singleton.class);
- } else {
- // TODO(jl): Will be added more type
-
bind(NoAuthenticationService.class).to(AuthenticationService.class).in(Singleton.class);
- }
- bindAsContract(HeliumBundleFactory.class).in(Singleton.class);
- bindAsContract(HeliumApplicationFactory.class).in(Singleton.class);
- bindAsContract(ConfigurationService.class).in(Singleton.class);
- bindAsContract(NotebookService.class).in(Singleton.class);
- bindAsContract(JobManagerService.class).in(Singleton.class);
- bindAsContract(Notebook.class).in(Singleton.class);
- bindAsContract(NotebookServer.class)
- .to(AngularObjectRegistryListener.class)
- .to(RemoteInterpreterProcessListener.class)
- .to(ApplicationEventListener.class)
- .to(NoteEventListener.class)
- .to(WebSocketServlet.class)
- .in(Singleton.class);
- if (conf.isZeppelinNotebookCronEnable()) {
-
bind(QuartzSchedulerService.class).to(SchedulerService.class).in(Singleton.class);
- } else {
-
bind(NoSchedulerService.class).to(SchedulerService.class).in(Singleton.class);
- }
- }
- });
+ sharedServiceLocator,
+ new AbstractBinder() {
Review comment:
unnecessary format change ?
----------------------------------------------------------------
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