Repository: zeppelin
Updated Branches:
refs/heads/master dcf2c7a2c -> 36e5f6b08
[ZEPPELIN-2215] Progress bar for Spell execution
### What is this PR for?
Add progress bar for spell execution.
- Used `RUNNING` state to display progress bar
- Decided not to display `{number}%` for spell, since we can't calculate in
advance.
### What type of PR is it?
[Improvement]
### Todos
NONE
### What is the Jira issue?
[ZEPPELIN-2215](https://issues.apache.org/jira/browse/ZEPPELIN-2215)
### How should this be tested?
- Install any spell what you want. However, I suggest
[zeppelin-echo-spell1.0.6](https://www.npmjs.com/package/zeppelin-echo-spell)
because it allow you to [get delayed
result](https://github.com/1ambda/zeppelin-echo-spell/blob/master/index.js#L23-#L25)
(default delay is 1000 millisecond.)
- Execute the spell
### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? - NO
* Is there breaking changes for older versions? - NO
* Does this needs documentation? - NO
Author: 1ambda <[email protected]>
Closes #2105 from 1ambda/ZEPPELIN-2215/progress-bar-for-spell and squashes the
following commits:
e913eff [1ambda] fix: Remove duplicated line
79e63d4 [1ambda] feat: Don't display '%' for spell'
Project: http://git-wip-us.apache.org/repos/asf/zeppelin/repo
Commit: http://git-wip-us.apache.org/repos/asf/zeppelin/commit/36e5f6b0
Tree: http://git-wip-us.apache.org/repos/asf/zeppelin/tree/36e5f6b0
Diff: http://git-wip-us.apache.org/repos/asf/zeppelin/diff/36e5f6b0
Branch: refs/heads/master
Commit: 36e5f6b08c8e8d61671a998415c6313e06148845
Parents: dcf2c7a
Author: 1ambda <[email protected]>
Authored: Thu Mar 16 10:33:19 2017 +0900
Committer: ahyoungryu <[email protected]>
Committed: Fri Mar 17 13:22:07 2017 +0900
----------------------------------------------------------------------
.../src/app/notebook/paragraph/paragraph-control.html | 2 +-
.../src/app/notebook/paragraph/paragraph.controller.js | 10 +++++++++-
2 files changed, 10 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/zeppelin/blob/36e5f6b0/zeppelin-web/src/app/notebook/paragraph/paragraph-control.html
----------------------------------------------------------------------
diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph-control.html
b/zeppelin-web/src/app/notebook/paragraph/paragraph-control.html
index 1411725..f81ccee 100644
--- a/zeppelin-web/src/app/notebook/paragraph/paragraph-control.html
+++ b/zeppelin-web/src/app/notebook/paragraph/paragraph-control.html
@@ -38,7 +38,7 @@ limitations under the License.
{{paragraph.status}}
</span>
- <span ng-if="paragraph.status=='RUNNING'">
+ <span ng-if="paragraph.status === 'RUNNING' && paragraph.executor !==
'SPELL'">
{{getProgress()}}%
</span>
http://git-wip-us.apache.org/repos/asf/zeppelin/blob/36e5f6b0/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js
----------------------------------------------------------------------
diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js
b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js
index 0f752fe..75d565b 100644
--- a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js
+++ b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js
@@ -17,6 +17,12 @@ import {
ParagraphStatus, isParagraphRunning,
} from './paragraph.status';
+const ParagraphExecutor = {
+ SPELL: 'SPELL',
+ INTERPRETER: 'INTERPRETER',
+ NONE: '', /** meaning `DONE` */
+};
+
angular.module('zeppelinWebApp').controller('ParagraphCtrl', ParagraphCtrl);
function ParagraphCtrl($scope, $rootScope, $route, $window, $routeParams,
$location,
@@ -277,6 +283,7 @@ function ParagraphCtrl($scope, $rootScope, $route, $window,
$routeParams, $locat
$scope.cleanupSpellTransaction = function() {
const status = ParagraphStatus.FINISHED;
+ $scope.paragraph.executor = ParagraphExecutor.NONE;
$scope.paragraph.status = status;
$scope.paragraph.results.code = status;
@@ -295,8 +302,9 @@ function ParagraphCtrl($scope, $rootScope, $route, $window,
$routeParams, $locat
$scope.runParagraphUsingSpell = function(paragraphText,
magic, digestRequired, propagated) {
+ $scope.paragraph.status = 'RUNNING';
+ $scope.paragraph.executor = ParagraphExecutor.SPELL;
$scope.paragraph.results = {};
- $scope.paragraph.status = ParagraphStatus.RUNNING;
$scope.paragraph.errorMessage = '';
if (digestRequired) { $scope.$digest(); }