summaryrefslogtreecommitdiff
path: root/ambari-web
diff options
context:
space:
mode:
authorYusaku Sako <yusaku@apache.org>2012-12-09 13:57:36 +0000
committerYusaku Sako <yusaku@apache.org>2012-12-09 13:57:36 +0000
commit46eb1a01782ee64c2d7cb7f1a1fe54f04ba1df50 (patch)
treee37ef40cd67ce12d367d756f19afb2e54602f634 /ambari-web
parentd1ad27f934055d87b2481e36fb65a08755081ee2 (diff)
AMBARI-1023. Dashboard page should handle API sending JSON as strings and objects. (Srimanth Gunturi via yusaku)
git-svn-id: https://svn.apache.org/repos/asf/incubator/ambari/branches/AMBARI-666@1418958 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'ambari-web')
-rw-r--r--ambari-web/app/mappers/services_mapper.js14
-rw-r--r--ambari-web/app/messages.js2
-rw-r--r--ambari-web/app/utils/helper.js11
3 files changed, 19 insertions, 8 deletions
diff --git a/ambari-web/app/mappers/services_mapper.js b/ambari-web/app/mappers/services_mapper.js
index be092501f0..0440adce5f 100644
--- a/ambari-web/app/mappers/services_mapper.js
+++ b/ambari-web/app/mappers/services_mapper.js
@@ -155,9 +155,9 @@ App.servicesMapper = App.QuickDataMapper.create({
item.nameNodeComponent = component;
finalConfig = jQuery.extend(finalConfig, hdfsConfig);
// Get the live, dead & decommision nodes from string json
- var liveNodesJson = jQuery.parseJSON(component.ServiceComponentInfo.LiveNodes);
- var deadNodesJson = jQuery.parseJSON(component.ServiceComponentInfo.DeadNodes);
- var decommisionNodesJson = jQuery.parseJSON(component.ServiceComponentInfo.DecomNodes);
+ var liveNodesJson = App.parseJSON(component.ServiceComponentInfo.LiveNodes);
+ var deadNodesJson = App.parseJSON(component.ServiceComponentInfo.DeadNodes);
+ var decommisionNodesJson = App.parseJSON(component.ServiceComponentInfo.DecomNodes);
item.live_data_nodes = [];
item.dead_data_nodes = [];
item.decommision_data_nodes = [];
@@ -200,9 +200,9 @@ App.servicesMapper = App.QuickDataMapper.create({
// Get the live, gray & black nodes from string json
item.map_slots = 0;
item.reduce_slots = 0;
- var liveNodesJson = jQuery.parseJSON(component.ServiceComponentInfo.AliveNodes);
- var grayNodesJson = jQuery.parseJSON(component.ServiceComponentInfo.GrayListedNodes);
- var blackNodesJson = jQuery.parseJSON(component.ServiceComponentInfo.BlackListedNodes);
+ var liveNodesJson = App.parseJSON(component.ServiceComponentInfo.AliveNodes);
+ var grayNodesJson = App.parseJSON(component.ServiceComponentInfo.GrayListedNodes);
+ var blackNodesJson = App.parseJSON(component.ServiceComponentInfo.BlackListedNodes);
item.alive_trackers = [];
item.gray_list_trackers = [];
item.black_list_trackers = [];
@@ -253,7 +253,7 @@ App.servicesMapper = App.QuickDataMapper.create({
if (component.ServiceComponentInfo && component.ServiceComponentInfo.component_name == "HBASE_MASTER") {
item.masterComponent = component;
finalConfig = jQuery.extend(finalConfig, hbaseConfig);
- var regionsArray = jQuery.parseJSON(component.ServiceComponentInfo.RegionsInTransition);
+ var regionsArray = App.parseJSON(component.ServiceComponentInfo.RegionsInTransition);
item.regions_in_transition = regionsArray == null ? 0 : regionsArray.length;
}
if (component.ServiceComponentInfo && component.ServiceComponentInfo.component_name == "HBASE_REGIONSERVER") {
diff --git a/ambari-web/app/messages.js b/ambari-web/app/messages.js
index 10eea686fb..7d6a1ef85a 100644
--- a/ambari-web/app/messages.js
+++ b/ambari-web/app/messages.js
@@ -316,7 +316,7 @@ Em.I18n.translations = {
'dashboard.services.mapreduce.reduceSlots':'Reduce Slots',
'dashboard.services.mapreduce.tasks.maps':'Tasks: Maps',
'dashboard.services.mapreduce.tasks.reduces':'Tasks: Reduces',
- 'dashboard.services.mapreduce.reduceSlotsSummary':'{0} occuped / {1} reserved',
+ 'dashboard.services.mapreduce.reduceSlotsSummary':'{0} occupied / {1} reserved',
'dashboard.services.mapreduce.tasksSummary':'{0} running / {1} waiting',
'dashboard.services.mapreduce.slotCapacitySummary':'{0} maps / {1} reduces / {2} avg per node',
'dashboard.services.mapreduce.jobTrackerHeap':'JobTracker Heap',
diff --git a/ambari-web/app/utils/helper.js b/ambari-web/app/utils/helper.js
index 3fd44d6bb2..14b6e5d8b0 100644
--- a/ambari-web/app/utils/helper.js
+++ b/ambari-web/app/utils/helper.js
@@ -137,6 +137,17 @@ App.formatUrl = function (urlTemplate, substitutes, testUrl) {
return formatted;
}
+/**
+ * Certain variables can have JSON in string
+ * format, or in JSON format itself.
+ */
+App.parseJSON = function(value){
+ if(typeof value == "string"){
+ return jQuery.parseJSON(value);
+ }
+ return value;
+};
+
App.format = {
role: function (role) {
switch (role) {