diff options
author | Yusaku Sako <yusaku@apache.org> | 2012-12-09 13:57:36 +0000 |
---|---|---|
committer | Yusaku Sako <yusaku@apache.org> | 2012-12-09 13:57:36 +0000 |
commit | 46eb1a01782ee64c2d7cb7f1a1fe54f04ba1df50 (patch) | |
tree | e37ef40cd67ce12d367d756f19afb2e54602f634 /ambari-web | |
parent | d1ad27f934055d87b2481e36fb65a08755081ee2 (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.js | 14 | ||||
-rw-r--r-- | ambari-web/app/messages.js | 2 | ||||
-rw-r--r-- | ambari-web/app/utils/helper.js | 11 |
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) { |