InterpreterSettingManager implements NoteEventListener, ClusterEventListener { public InterpreterSetting get(String id) { return interpreterSettings.get(id); } @Inject  InterpreterSettingManager(ZeppelinConfiguration zeppelinConfiguration,
                                   AngularObjectRegistryListener angularObjectRegistryListener,
                                   RemoteInterpreterProcessListener
                                       remoteInterpreterProcessListener,
                                   ApplicationEventListener appEventListener);  InterpreterSettingManager(ZeppelinConfiguration conf,
      InterpreterOption defaultOption,
      AngularObjectRegistryListener angularObjectRegistryListener,
      RemoteInterpreterProcessListener remoteInterpreterProcessListener,
      ApplicationEventListener appEventListener,
      ConfigStorage configStorage); RemoteInterpreterEventServer getInterpreterEventServer(); void refreshInterpreterTemplates(); void saveToFile(); void setNotebook(Notebook notebook); Notebook getNotebook(); RemoteInterpreterProcessListener getRemoteInterpreterProcessListener(); ApplicationEventListener getAppEventListener(); InterpreterSetting getDefaultInterpreterSetting(String noteId); InterpreterSetting getInterpreterSettingByName(String name); ManagedInterpreterGroup getInterpreterGroupById(String groupId); Map<String, Object> getEditorSetting(String paragraphText, String noteId); Map<String, Object> getConfigSetting(String interpreterGroupId); List<ManagedInterpreterGroup> getAllInterpreterGroup(); void removeInterpreterGroup(String intpGroupId); ResourceSet getAllResources(); RecoveryStorage getRecoveryStorage(); void removeResourcesBelongsToParagraph(String noteId, String paragraphId); void removeResourcesBelongsToNote(String noteId); List<String> getInterpreterSettingIds(); InterpreterSetting createNewSetting(String name, String group,
                                             List<Dependency> dependencies,
                                             InterpreterOption option,
                                             Map<String, InterpreterProperty> properties); Map<String, InterpreterSetting> getInterpreterSettingTemplates(); List<RemoteRepository> getRepositories(); void addRepository(String id, String url, boolean snapshot, Authentication auth,
      Proxy proxy); void removeRepository(String id); void setPropertyAndRestart(
      String id,
      InterpreterOption option,
      Map<String, InterpreterProperty> properties,
      List<Dependency> dependencies); void restart(String settingId, String user, String noteId); void restart(String settingId, ExecutionContext executionContext); @VisibleForTesting void restart(String id); InterpreterSetting get(String id); @VisibleForTesting InterpreterSetting getByName(String name); void remove(String id); List<InterpreterSetting> get(); InterpreterSetting getDefaultInterpreterSetting(); @VisibleForTesting List<String> getSettingIds(); void close(String settingId); void close(); @ManagedAttribute Set<String> getRunningInterpreters(); @Override void onNoteRemove(Note note, AuthenticationInfo subject); @Override void onNoteCreate(Note note, AuthenticationInfo subject); @Override void onNoteUpdate(Note note, AuthenticationInfo subject); @Override void onParagraphRemove(Paragraph p); @Override void onParagraphCreate(Paragraph p); @Override void onParagraphUpdate(Paragraph p); @Override void onParagraphStatusChange(Paragraph p, Job.Status status); @Override void onClusterEvent(String msg);  }
@Test public void testInterpreterInclude() throws Exception { try { System.setProperty(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_INCLUDES.getVarName(), "mock1"); setUp(); assertEquals(1, interpreterSettingManager.get().size()); assertEquals("mock1", interpreterSettingManager.get().get(0).getGroup()); } finally { System.clearProperty(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_INCLUDES.getVarName()); } }