GitHub user zjffdu opened a pull request: https://github.com/apache/zeppelin/pull/2592
ZEPPELIN-2685. Improvement on Interpreter class ### What is this PR for? Main changes on Interpreter * Add throw InterpreterException for the abstract methods of `Interpreter`, this would enforce the implementation to throw `InterpreterException`. * field name refactoring. ** `property` -> `properties` ** `getProperty()` --> `getProperties()` ** `setProperty()` --> `setProperties` * Introduce launcher layer for interpreter launching. ** abstract cass `InterpreterLauncher` ** For now, only 2 implementation: `ShellScriptLauncher` & `SparkLauncher`. We could allow interpreter to specify its own launcher class, but it could be future work. ### What type of PR is it? [Improvement | Refactoring] ### Todos * [ ] - Task ### What is the Jira issue? * https://issues.apache.org/jira/browse/ZEPPELIN-2685 ### How should this be tested? Unit test is covered ### Screenshots (if appropriate) ### Questions: * Does the licenses files need update? No * Is there breaking changes for older versions? No * Does this needs documentation? No You can merge this pull request into a Git repository by running: $ git pull https://github.com/zjffdu/zeppelin ZEPPELIN-2685 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/zeppelin/pull/2592.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #2592 ---- commit f54cb1d0a0f8bbf8cbd9a65ed33ceb9d8e1730c8 Author: Jeff Zhang <zjf...@apache.org> Date: 2017-08-31T12:21:04Z ZEPPELIN-2685. Improvement on Interpreter class ---- ---