Skip to content

Commit 409c65c

Browse files
committed
IIFE refactoring of job page
1 parent 4c45e08 commit 409c65c

File tree

3 files changed

+80
-67
lines changed

3 files changed

+80
-67
lines changed

zeppelin-web/src/app/interpreter/interpreter.filter.js

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,15 @@
1212
* limitations under the License.
1313
*/
1414
'use strict';
15+
(function() {
1516

16-
angular.module('zeppelinWebApp').filter('sortByKey', function() {
17-
return function(properties) {
18-
var sortedKeys = properties ? Object.keys(properties) : [];
19-
return sortedKeys.sort();
20-
};
21-
});
17+
angular.module('zeppelinWebApp').filter('sortByKey', sortByKey);
18+
19+
function sortByKey() {
20+
return function(properties) {
21+
var sortedKeys = properties ? Object.keys(properties) : [];
22+
return sortedKeys.sort();
23+
};
24+
}
25+
26+
})();

zeppelin-web/src/app/jobmanager/jobmanager.controller.js

Lines changed: 62 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -12,78 +12,82 @@
1212
* limitations under the License.
1313
*/
1414
'use strict';
15+
(function() {
1516

16-
angular.module('zeppelinWebApp')
17-
.controller('JobmanagerCtrl',
18-
function($scope, websocketMsgSrv, $interval) {
17+
angular.module('zeppelinWebApp').controller('JobmanagerCtrl', JobmanagerCtrl);
1918

20-
$scope.filterValueToName = function(filterValue) {
21-
var index = _.findIndex($scope.ACTIVE_INTERPRETERS, {value: filterValue});
19+
JobmanagerCtrl.$inject = ['$scope', 'websocketMsgSrv', '$interval'];
2220

23-
if ($scope.ACTIVE_INTERPRETERS[index].name !== undefined) {
24-
return $scope.ACTIVE_INTERPRETERS[index].name;
25-
} else {
26-
return 'undefined';
27-
}
28-
};
29-
30-
$scope.init = function() {
31-
$scope.jobInfomations = [];
32-
$scope.JobInfomationsByFilter = $scope.jobInfomations;
21+
function JobmanagerCtrl($scope, websocketMsgSrv, $interval) {
22+
$scope.filterValueToName = function(filterValue) {
23+
var index = _.findIndex($scope.ACTIVE_INTERPRETERS, {value: filterValue});
3324

34-
websocketMsgSrv.getNotebookJobsList();
25+
if ($scope.ACTIVE_INTERPRETERS[index].name !== undefined) {
26+
return $scope.ACTIVE_INTERPRETERS[index].name;
27+
} else {
28+
return 'undefined';
29+
}
30+
};
3531

36-
$scope.$on('$destroy', function() {
37-
websocketMsgSrv.unsubscribeJobManager();
38-
});
39-
};
32+
$scope.init = function() {
33+
$scope.jobInfomations = [];
34+
$scope.JobInfomationsByFilter = $scope.jobInfomations;
4035

41-
/*
42-
** $scope.$on functions below
43-
*/
36+
websocketMsgSrv.getNotebookJobsList();
4437

45-
$scope.$on('setNotebookJobs', function(event, responseData) {
46-
$scope.lastJobServerUnixTime = responseData.lastResponseUnixTime;
47-
$scope.jobInfomations = responseData.jobs;
48-
$scope.jobInfomationsIndexs = $scope.jobInfomations ? _.indexBy($scope.jobInfomations, 'notebookId') : {};
38+
$scope.$on('$destroy', function() {
39+
websocketMsgSrv.unsubscribeJobManager();
4940
});
41+
};
5042

51-
$scope.$on('setUpdateNotebookJobs', function(event, responseData) {
52-
var jobInfomations = $scope.jobInfomations;
53-
var indexStore = $scope.jobInfomationsIndexs;
54-
$scope.lastJobServerUnixTime = responseData.lastResponseUnixTime;
55-
var notes = responseData.jobs;
56-
notes.map(function(changedItem) {
57-
if (indexStore[changedItem.notebookId] === undefined) {
58-
var newItem = angular.copy(changedItem);
59-
jobInfomations.push(newItem);
60-
indexStore[changedItem.notebookId] = newItem;
61-
} else {
62-
var changeOriginTarget = indexStore[changedItem.notebookId];
43+
/*
44+
** $scope.$on functions below
45+
*/
46+
47+
$scope.$on('setNotebookJobs', function(event, responseData) {
48+
$scope.lastJobServerUnixTime = responseData.lastResponseUnixTime;
49+
$scope.jobInfomations = responseData.jobs;
50+
$scope.jobInfomationsIndexs = $scope.jobInfomations ? _.indexBy($scope.jobInfomations, 'notebookId') : {};
51+
});
6352

64-
if (changedItem.isRemoved !== undefined && changedItem.isRemoved === true) {
53+
$scope.$on('setUpdateNotebookJobs', function(event, responseData) {
54+
var jobInfomations = $scope.jobInfomations;
55+
var indexStore = $scope.jobInfomationsIndexs;
56+
$scope.lastJobServerUnixTime = responseData.lastResponseUnixTime;
57+
var notes = responseData.jobs;
58+
notes.map(function(changedItem) {
59+
if (indexStore[changedItem.notebookId] === undefined) {
60+
var newItem = angular.copy(changedItem);
61+
jobInfomations.push(newItem);
62+
indexStore[changedItem.notebookId] = newItem;
63+
} else {
64+
var changeOriginTarget = indexStore[changedItem.notebookId];
6565

66-
// remove Item.
67-
var removeIndex = _.findIndex(indexStore, changedItem.notebookId);
68-
if (removeIndex > -1) {
69-
indexStore.splice(removeIndex, 1);
70-
}
66+
if (changedItem.isRemoved !== undefined && changedItem.isRemoved === true) {
7167

72-
removeIndex = _.findIndex(jobInfomations, {'notebookId': changedItem.notebookId});
73-
if (removeIndex) {
74-
jobInfomations.splice(removeIndex, 1);
75-
}
68+
// remove Item.
69+
var removeIndex = _.findIndex(indexStore, changedItem.notebookId);
70+
if (removeIndex > -1) {
71+
indexStore.splice(removeIndex, 1);
72+
}
7673

77-
} else {
78-
// change value for item.
79-
changeOriginTarget.isRunningJob = changedItem.isRunningJob;
80-
changeOriginTarget.notebookName = changedItem.notebookName;
81-
changeOriginTarget.notebookType = changedItem.notebookType;
82-
changeOriginTarget.interpreter = changedItem.interpreter;
83-
changeOriginTarget.unixTimeLastRun = changedItem.unixTimeLastRun;
84-
changeOriginTarget.paragraphs = changedItem.paragraphs;
74+
removeIndex = _.findIndex(jobInfomations, {'notebookId': changedItem.notebookId});
75+
if (removeIndex) {
76+
jobInfomations.splice(removeIndex, 1);
8577
}
78+
79+
} else {
80+
// change value for item.
81+
changeOriginTarget.isRunningJob = changedItem.isRunningJob;
82+
changeOriginTarget.notebookName = changedItem.notebookName;
83+
changeOriginTarget.notebookType = changedItem.notebookType;
84+
changeOriginTarget.interpreter = changedItem.interpreter;
85+
changeOriginTarget.unixTimeLastRun = changedItem.unixTimeLastRun;
86+
changeOriginTarget.paragraphs = changedItem.paragraphs;
8687
}
87-
});
88+
}
8889
});
8990
});
91+
}
92+
93+
})();

zeppelin-web/src/app/jobmanager/jobs/job.controller.js

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,13 @@
1212
* limitations under the License.
1313
*/
1414
'use strict';
15+
(function() {
1516

16-
angular.module('zeppelinWebApp')
17-
.controller('JobCtrl', function($scope) {
17+
angular.module('zeppelinWebApp').controller('JobCtrl', JobCtrl);
1818

19+
JobCtrl.$inject = ['$scope'];
20+
21+
function JobCtrl($scope) {
1922
$scope.init = function(jobInformation) {
2023
$scope.progressValue = 0;
2124
};
@@ -34,5 +37,6 @@ angular.module('zeppelinWebApp')
3437
var result = Math.ceil(runningJobCount / totalCount * 100);
3538
return isNaN(result) ? 0 : result;
3639
};
40+
}
3741

38-
});
42+
})();

0 commit comments

Comments
 (0)