You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by al...@apache.org on 2014/02/24 15:14:43 UTC
git commit: AMBARI-4801. Jobs and Job pages should refresh in
background every 6s. (alexantonenko)
Repository: ambari
Updated Branches:
refs/heads/trunk ce202e3b1 -> 44619ac77
AMBARI-4801. Jobs and Job pages should refresh in background every 6s. (alexantonenko)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/44619ac7
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/44619ac7
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/44619ac7
Branch: refs/heads/trunk
Commit: 44619ac7745b274f0d41fb22045fbfffb97f8ed5
Parents: ce202e3
Author: Alex Antonenko <hi...@gmail.com>
Authored: Mon Feb 24 16:12:37 2014 +0200
Committer: Alex Antonenko <hi...@gmail.com>
Committed: Mon Feb 24 16:12:37 2014 +0200
----------------------------------------------------------------------
.../main/jobs/hive_job_details_controller.js | 13 +++++++------
ambari-web/app/controllers/main/jobs_controller.js | 11 +++++++++++
ambari-web/app/routes/main.js | 9 +++++++--
ambari-web/app/utils/jobs.js | 2 +-
4 files changed, 26 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/44619ac7/ambari-web/app/controllers/main/jobs/hive_job_details_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/jobs/hive_job_details_controller.js b/ambari-web/app/controllers/main/jobs/hive_job_details_controller.js
index 5962af1..e04392f 100644
--- a/ambari-web/app/controllers/main/jobs/hive_job_details_controller.js
+++ b/ambari-web/app/controllers/main/jobs/hive_job_details_controller.js
@@ -24,23 +24,24 @@ App.MainHiveJobDetailsController = Em.Controller.extend({
content : null,
loaded : false,
loadTimeout: null,
+ job: null,
- loadJobDetails : function(job) {
+ loadJobDetails : function() {
var self = this;
var timeout = this.get('loadTimeout');
var yarnService = App.YARNService.find().objectAt(0);
if (yarnService != null) {
- var self = this;
- this.set('loaded', false);
- if (job != null) {
- jobsUtils.refreshJobDetails(job, function() {
+ var content = this.get('content');
+ if (content != null) {
+ jobsUtils.refreshJobDetails(content, function() {
+ self.set('content', self.get('job'));
self.set('loaded', true);
});
}
}else{
clearTimeout(timeout);
timeout = setTimeout(function(){
- self.loadJobDetails(job);
+ self.loadJobDetails();
}, 300);
}
},
http://git-wip-us.apache.org/repos/asf/ambari/blob/44619ac7/ambari-web/app/controllers/main/jobs_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/jobs_controller.js b/ambari-web/app/controllers/main/jobs_controller.js
index 4fc19de..e92f6c8 100644
--- a/ambari-web/app/controllers/main/jobs_controller.js
+++ b/ambari-web/app/controllers/main/jobs_controller.js
@@ -27,6 +27,17 @@ App.MainJobsController = Em.ArrayController.extend({
loaded : false,
loading : false,
loadJobsTimeout: null,
+ jobsUpdateInterval: 6000,
+ jobsUpdate: null,
+
+ updateJobs: function (controllerName, funcName) {
+ clearInterval(this.get('jobsUpdate'));
+ var self = this;
+ var interval = setInterval(function () {
+ App.router.get(controllerName)[funcName]();
+ }, this.jobsUpdateInterval);
+ this.set('jobsUpdate', interval);
+ },
totalOfJobs: 0,
setTotalOfJobs: function () {
http://git-wip-us.apache.org/repos/asf/ambari/blob/44619ac7/ambari-web/app/routes/main.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/routes/main.js b/ambari-web/app/routes/main.js
index 255955d..dc7cbf5 100644
--- a/ambari-web/app/routes/main.js
+++ b/ambari-web/app/routes/main.js
@@ -126,6 +126,9 @@ module.exports = Em.Route.extend({
});
}
},
+ exit: function(router) {
+ clearInterval(router.get('mainJobsController').jobsUpdate);
+ },
index: Ember.Route.extend({
route: '/',
connectOutlets : function(router) {
@@ -135,6 +138,7 @@ module.exports = Em.Route.extend({
});
} else {
router.get('mainJobsController').loadJobs();
+ router.get('mainJobsController').updateJobs('mainJobsController', 'refreshLoadedJobs');
router.get('mainController').connectOutlet('mainJobs');
}
}
@@ -143,8 +147,9 @@ module.exports = Em.Route.extend({
route : '/:job_id',
connectOutlets : function(router, job) {
if (job) {
- router.get('mainHiveJobDetailsController').loadJobDetails(job);
- router.get('mainController').connectOutlet('mainHiveJobDetails');
+ router.get('mainController').connectOutlet('mainHiveJobDetails', job);
+ router.get('mainHiveJobDetailsController').loadJobDetails();
+ router.get('mainJobsController').updateJobs('mainHiveJobDetailsController', 'loadJobDetails');
}
}
}),
http://git-wip-us.apache.org/repos/asf/ambari/blob/44619ac7/ambari-web/app/utils/jobs.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/utils/jobs.js b/ambari-web/app/utils/jobs.js
index c8e51da..eb89a41 100644
--- a/ambari-web/app/utils/jobs.js
+++ b/ambari-web/app/utils/jobs.js
@@ -52,7 +52,7 @@ module.exports = {
complete : function(jqXHR, textStatus) {
// Now get the Tez DAG ID from the DAG name
var hiveRecord = App.HiveJob.find(hiveJobId);
- App.router.get('mainHiveJobDetailsController').set('content', hiveRecord);
+ App.router.get('mainHiveJobDetailsController').set('job', hiveRecord);
var tezDagName = hiveRecord.get('tezDag.name');
if (tezDagName != null) {
var sender = {