geode-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From kl...@apache.org
Subject [08/57] [abbrv] incubator-geode git commit: GEODE-12: update copyright headers
Date Mon, 25 Jan 2016 17:44:43 GMT
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ec004fc1/gemfire-pulse/src/main/webapp/scripts/pulsescript/PulseCallbacks.js
----------------------------------------------------------------------
diff --git a/gemfire-pulse/src/main/webapp/scripts/pulsescript/PulseCallbacks.js b/gemfire-pulse/src/main/webapp/scripts/pulsescript/PulseCallbacks.js
index 6b12b74..8fbe567 100644
--- a/gemfire-pulse/src/main/webapp/scripts/pulsescript/PulseCallbacks.js
+++ b/gemfire-pulse/src/main/webapp/scripts/pulsescript/PulseCallbacks.js
@@ -1,1724 +1,1743 @@
-/*=========================================================================
- * Copyright (c) 2012-2014 Pivotal Software, Inc. All Rights Reserved.
- * This product is protected by U.S. and international copyright
- * and intellectual property laws. Pivotal products are covered by
- * one or more patents listed at http://www.pivotal.io/patents.
- *=========================================================================
- */
-
-/**
- *  @overview
- * This is the actual response handling and processing of the web calls
- * that are made by the PulseFunctions class. It will also process the 
- * JSON response.
- *
- * @name PulseCallbacks.js
- * @author ashutosh zambare.
- * @version 1.0
- *
- */
-
-/**
- * @function
- * 
- * @param r
- *                This is the JSON object that is returned by the AJAX call made
- *                by the PulseFunctions.
- */
-var getPulseVersionBack = function(data) {
-
-  if (data.pulseVersion != undefined && data.pulseVersion != "") {
-    // Set Pulse version details
-    $('#pulseVersion').html(data.pulseVersion);
-    $('#pulseVer').html(data.pulseVersion);
-    $('#buildId').html(data.buildId);
-    $('#buildDate').html(data.buildDate);
-    $('#sourceDate').html(data.sourceDate);
-    $('#sourceRevision').html(data.sourceRevision);
-    $('#sourceRepository').html(data.sourceRepository);
-
-    // Display version details link
-    $('#pulseVersionDetailsLink').show();
-  } else {
-    // Hide version details link
-    $('#pulseVersionDetailsLink').hide();
-  }
-};
-
-
-/**
- * Default handler for ClusterDetails service,
- * function used for getting the response of Cluster Basic Details and wired
- * them with HTML representing tags.
- */
-var getClusterDetailsBack = null;
-
-/**
- * For Gemfire, handler for ClusterDetails service
- * function used for getting the response of Cluster Basic Details and wired
- * them with HTML representing tags.
- */
-var getClusterDetailsGemfireBack = function(data) {
-
-  if (severAlerts.length > 0) { // Severe
-    $('#clusterStatusText').html("Severe");
-    $("#clusterStatusIcon").addClass("severeStatus");
-  } else if (errorAlerts.length > 0) { // Error
-    $('#clusterStatusText').html("Error");
-    $("#clusterStatusIcon").addClass("errorStatus");
-    $("#clusterStatusIcon").removeClass("severeStatus");
-  } else if (warningAlerts.length > 0) { // Warning
-    $('#clusterStatusText').html("Warning");
-    $("#clusterStatusIcon").addClass("warningStatus");
-    $("#clusterStatusIcon").removeClass("severeStatus");
-    $("#clusterStatusIcon").removeClass("errorStatus");
-  } else { // Normal
-    $('#clusterStatusText').html("Normal");
-    $("#clusterStatusIcon").addClass("normalStatus");
-    $("#clusterStatusIcon").removeClass("severeStatus");
-    $("#clusterStatusIcon").removeClass("errorStatus");
-    $("#clusterStatusIcon").removeClass("warningStatus");
-  }
-
-  $('#clusterName').html(data.clusterName);
-  $('#clusterTotalMembersText').html(data.totalMembers);
-  $('#clusterServersText').html(data.servers);
-  $('#clusterClientsText').html(data.clients);
-  $('#clusterLocatorsText').html(data.locators);
-  $('#clusterTotalRegionsText').html(data.totalRegions);
-  $('#clusterTotalHeap').html(data.totalHeap);
-  $('#clusterFunctions').html(data.functions);
-  $('#clusterUniqueCQs').html(data.uniqueCQs);
-  $('#clusterSubscriptionsText').html(data.subscriptions);
-  $('#userName').html(data.userName);
-
-};
-
-/**
- * function to sort array based on
- *  string property
- */
-var sortedArray =  function dynamicSort(property) { 
-	return function (obj1,obj2) {
-        return obj1[property] > obj2[property] ? 1
-            : obj1[property] < obj2[property] ? -1 : 0;
-    } 
-}
-
-/**
- * For SQLfire, handler for ClusterDetails service
- * function used for getting the response of Cluster Basic Details and wired
- * them with HTML representing tags.
- */
-var getClusterDetailsSQLfireBack = function(data) {
-
-  if (severAlerts.length > 0) { // Severe
-    $('#clusterStatusText').html("Severe");
-    $("#clusterStatusIcon").addClass("severeStatus");
-  } else if (errorAlerts.length > 0) { // Error
-    $('#clusterStatusText').html("Error");
-    $("#clusterStatusIcon").addClass("errorStatus");
-    $("#clusterStatusIcon").removeClass("severeStatus");
-  } else if (warningAlerts.length > 0) { // Warning
-    $('#clusterStatusText').html("Warning");
-    $("#clusterStatusIcon").addClass("warningStatus");
-    $("#clusterStatusIcon").removeClass("severeStatus");
-    $("#clusterStatusIcon").removeClass("errorStatus");
-  } else { // Normal
-    $('#clusterStatusText').html("Normal");
-    $("#clusterStatusIcon").addClass("normalStatus");
-    $("#clusterStatusIcon").removeClass("severeStatus");
-    $("#clusterStatusIcon").removeClass("errorStatus");
-    $("#clusterStatusIcon").removeClass("warningStatus");
-  }
-
-  $('#clusterName').html(data.clusterName);
-  $('#clusterTotalMembersText').html(data.totalMembers);
-  $('#clusterServersText').html(data.servers);
-  $('#clusterClientsText').html(data.clients);
-  $('#clusterLocatorsText').html(data.locators);
-  $('#clusterTotalRegionsText').html(data.totalRegions);
-  $('#clusterTotalHeap').html(data.totalHeap);
-  $('#clusterFunctions').html(data.functions);
-  $('#clusterTxnCommittedText').html(data.txnCommitted);
-  $('#clusterTxnRollbackText').html(data.txnRollback);
-  $('#userName').html(data.userName);
-
-};
-
-/**
- * Default handler for ClusterKeyStatistics service,
- * function used for getting the response of Cluster Key Statistics widget and wired
- * them with HTML representing tags.
- */
-var getClusterKeyStatisticsBack = null;
-
-/**
- * For Gemfire, handler for ClusterKeyStatistics service 
- * function used for getting the response of Cluster Key Statistics widget and
- * wired them with HTML representing tags.
- */
-var getClusterKeyStatisticsGemfireBack = function(data) {
-
-  // sparkline graph options
-  var sparklineOptions = {
-    width : '300px',
-    height : '20px',
-    lineColor : '#00CCFF',
-    fillColor : false,
-    spotColor : false,
-    minSpotColor : false,
-    maxSpotColor : false
-  };
-
-  var writePerSecTrend = data.writePerSecTrend;
-  var readPerSecTrend = data.readPerSecTrend;
-  var queriesPerSecTrend = data.queriesPerSecTrend;
-
-  var sumWrites = 0;
-  for ( var i = 0; i < writePerSecTrend.length; i++) {
-    sumWrites += writePerSecTrend[i];
-  }
-
-  var avgWrites = 0;
-  if (writePerSecTrend.length > 0) {
-    avgWrites = sumWrites / writePerSecTrend.length;
-  }
-
-  var sumReads = 0;
-  for ( var i = 0; i < readPerSecTrend.length; i++) {
-    sumReads += readPerSecTrend[i];
-  }
-
-  var avgReads = 0;
-  if (readPerSecTrend.length > 0) {
-    avgReads = sumReads / readPerSecTrend.length;
-  }
-
-  var sumQueries = 0;
-  for ( var i = 0; i < queriesPerSecTrend.length; i++) {
-    sumQueries += queriesPerSecTrend[i];
-  }
-
-  var avgQueries = 0;
-  if (queriesPerSecTrend.length > 0) {
-    avgQueries = sumQueries / queriesPerSecTrend.length;
-  }
-  // write per sec
-  $('#writePerSec').html(applyNotApplicableCheck(avgWrites.toFixed(2)));
-  $('#writePerSecSparkLine').sparkline(writePerSecTrend, sparklineOptions);
-
-  // read per second
-  $('#readPerSec').html(applyNotApplicableCheck(avgReads.toFixed(2)));
-  $('#readPerSecSparkLine').sparkline(readPerSecTrend, sparklineOptions);
-
-  // queries per sec
-  $('#queriesPerSec').html(avgQueries.toFixed(2));
-  $('#queriesPerSecSparkLine').sparkline(queriesPerSecTrend, sparklineOptions);
-};
-
-/**
- * For SQLfire, handler for ClusterKeyStatistics service
- * function used for getting the response of Cluster Key Statistics widget and
- * wired them with HTML representing tags.
- */
-var getClusterKeyStatisticsSQLfireBack = function(data) {
-
-  // sparkline graph options
-  var sparklineOptions = {
-    width : '300px',
-    height : '20px',
-    lineColor : '#00CCFF',
-    fillColor : false,
-    spotColor : false,
-    minSpotColor : false,
-    maxSpotColor : false
-  };
-
-  var writePerSecTrend = data.writePerSecTrend;
-  var readPerSecTrend = data.readPerSecTrend;
-  var queriesPerSecTrend = data.queriesPerSecTrend;
-
-  var sumWrites = 0;
-  for ( var i = 0; i < writePerSecTrend.length; i++) {
-    sumWrites += writePerSecTrend[i];
-  }
-
-  var avgWrites = 0;
-  if (writePerSecTrend.length > 0) {
-    avgWrites = sumWrites / writePerSecTrend.length;
-  }
-
-  var sumReads = 0;
-  for ( var i = 0; i < readPerSecTrend.length; i++) {
-    sumReads += readPerSecTrend[i];
-  }
-
-  var avgReads = 0;
-  if (readPerSecTrend.length > 0) {
-    avgReads = sumReads / readPerSecTrend.length;
-  }
-
-  var sumQueries = 0;
-  for ( var i = 0; i < queriesPerSecTrend.length; i++) {
-    sumQueries += queriesPerSecTrend[i];
-  }
-
-  var avgQueries = 0;
-  if (queriesPerSecTrend.length > 0) {
-    avgQueries = sumQueries / queriesPerSecTrend.length;
-  }
-  // write per sec
-  $('#writePerSec').html(applyNotApplicableCheck(avgWrites.toFixed(2)));
-  $('#writePerSecSparkLine').sparkline(writePerSecTrend, sparklineOptions);
-
-  // read per second
-  $('#readPerSec').html(applyNotApplicableCheck(avgReads.toFixed(2)));
-  $('#readPerSecSparkLine').sparkline(readPerSecTrend, sparklineOptions);
-};
-
-/**
- * function used for getting the response of Cluster WAN Info widget and wired
- * them with HTML representing tags.
- */
-var getClusterWANInfoBack = function(data) {
-  var clusterList = data.connectedClusters;
-  var htmlList = "";
-  if (clusterList.length > 0) {
-    $('#wanInfoWidget').show();
-    for ( var i = 0; i < clusterList.length; i++) {
-      if (clusterList[i].status == true) {
-        htmlList += '<div class="statusUpDowmBlock statusUp">' + "Cluster_"
-            + clusterList[i].name + '</div>';
-      } else {
-        htmlList += '<div class="statusUpDowmBlock statusDown">' + "Cluster_"
-            + clusterList[i].name + '</div>';
-      }
-    }
-    $('#wanInfoList').html(htmlList);
-    $('.scroll-pane_1').jScrollPane();
-  } else {
-    $('#wanInfoWidget').hide();
-  }
-};
-
-/**
- * function used for getting the response of Cluster Memory Usage widget and
- * wired them with HTML representing tags.
- */
-var getClusterMemoryUsageBack = function(data) {
-
-  var memoryUsageTrend = [];
-  memoryUsageTrend = data.memoryUsageTrend;
-
-  var sumMemory = 0;
-  for ( var i = 0; i < memoryUsageTrend.length; i++) {
-    sumMemory += memoryUsageTrend[i];
-  }
-
-  var avgMemory = 0;
-  if (memoryUsageTrend.length > 0) {
-    avgMemory = sumMemory / memoryUsageTrend.length;
-  }
-
-  var sparklineOptions = {
-    width : '230px',
-    height : '72px',
-    lineColor : '#FAB948',
-    fillColor : false,
-    spotRadius : 2.5,
-    labelPosition : 'left',
-    spotColor : false,
-    minSpotColor : false,
-    maxSpotColor : false,
-    lineWidth : 2
-  };
-
-  $('#memoryUsage').sparkline(memoryUsageTrend, sparklineOptions);
-  // checking if currentMemoryUsage > 1024 then show the result in GB else
-  // show the result in MB
-  if (data.currentMemoryUsage > 1024) {
-    var memoryUsageGB = (avgMemory / 1024).toFixed(2);
-    $('#currentMemoryUsage').html(memoryUsageGB);
-    $('#memoryUsageMB').html("GB");
-
-  } else {
-    $('#currentMemoryUsage').html(applyNotApplicableCheck(avgMemory.toFixed(2)));
-    $('#memoryUsageMB').html("MB");
-  }
-
-};
-
-/**
- * function used for getting the response of Cluster GCPauses widget and wired
- * them with HTML representing tags.
- */
-var getClusterJVMPausesBack = function(data) {
-
-  var gCPausesTrend = [];
-  gCPausesTrend = data.gCPausesTrend;
-
-  var sparklineOptions = {
-    width : '230px',
-    height : '72px',
-    lineColor : '#FAB948',
-    fillColor : false,
-    spotRadius : 2.5,
-    labelPosition : 'left',
-    spotColor : false,
-    minSpotColor : false,
-    maxSpotColor : false,
-    lineWidth : 2
-  };
-
-  var sumOfPauses = 0;
-  for ( var i = 0; i < gCPausesTrend.length; i++) {
-    sumOfPauses += gCPausesTrend[i];
-  }
-
-  $('#gcPauses').sparkline(gCPausesTrend, sparklineOptions);
-  $('#currentGCPauses').html(sumOfPauses);
-};
-
-/**
- * function used for getting the response of Cluster ThroughputWrites widget and
- * wired them with HTML representing tags.
- */
-var getClusterDiskThroughputBack = function(data) {
-
-  var throughputReads = data.throughputReads;
-  var throughputWrites = data.throughputWrites;
-
-  var readsSum = 0;
-  for ( var i = 0; i < throughputReads.length; i++) {
-    readsSum += throughputReads[i];
-  }
-
-  var avgThroughputReads = 0;
-  if (throughputReads.length > 0) {
-    avgThroughputReads = readsSum / throughputReads.length;
-  }
-
-  var writesSum = 0;
-  for ( var i = 0; i < throughputWrites.length; i++) {
-    writesSum += throughputWrites[i];
-  }
-
-  var avgThroughputWrites = 0;
-  if (throughputWrites.length > 0) {
-    avgThroughputWrites = writesSum / throughputWrites.length;
-  }
-
-  var sparklineOptions = {
-    width : '230px',
-    height : '72px',
-    lineColor : '#FAB948',
-    lineWidth : 2,
-    fillColor : false,
-    spotRadius : 3,
-    spotColor : false,
-    minSpotColor : false,
-    maxSpotColor : false,
-    highlightSpotColor : false,
-    composite : false
-  };
-
-  // Reads trends
-  $('#diskReadsThroughputTrend').sparkline(throughputReads, sparklineOptions);
-  $('#diskReadsThroughput').html(applyNotApplicableCheck(avgThroughputReads.toFixed(2)));
-
-  // Writes trends
-  sparklineOptions.lineColor = '#2e84bb';
-  $('#diskWritesThroughputTrend').sparkline(throughputWrites, sparklineOptions);
-  $('#diskWritesThroughput').html(applyNotApplicableCheck(avgThroughputWrites.toFixed(2)));
-};
-
-/**
- * function used for getting the response of Member Clients widget and wired
- * them with HTML representing tags.
- */
-var getMemberClientsBack = function(data) {
-  $('#memberClientsList').jqGrid('clearGridData');
-  var clients = data.memberClients;
-  if (clients.length > 0) {
-    $('#memberClientsWidget').show();
-    for ( var i = 0; i < clients.length; i++) {
-      var clientData = clients[i];
-      $('#memberClientsList').jqGrid('addRowData', i + 1, clientData);
-    }
-
-    var gridUserData = jQuery("#memberClientsList").getGridParam('userData');
-
-    // Apply sort order ans sort columns on updated jqgrid data
-    jQuery("#memberClientsList").jqGrid('setGridParam', {
-      sortname : gridUserData.sortColName,
-      sortorder : gridUserData.sortOrder
-    });
-    // Reload jqgrid
-    jQuery("#memberClientsList").trigger("reloadGrid");
-
-  } else {
-    $('#memberClientsWidget').hide();
-  }
-};
-
-/**
- * function used for getting the response of Member Basic Details widget and wired
- * them with HTML representing tags.
- */
-var getMemberDetailsBack = function(data) {
-
-  // check if data for member is available or not
-  if (data.errorOnMember != undefined && data.errorOnMember != null
-      && $.trim(data.errorOnMember) != "") {
-
-    // Display error message
-    var message = data.errorOnMember;
-    message += "<div class=\"clear\"></div>"
-               + "<a onclick=\"openClusterDetail();\" href=\"#.\" >" 
-               + "Go To Cluster View</a>";
-    $('#connectionErrorMsgDiv').html(message);
-    $('#connectionStatusDiv').show();
-    return;
-  }
-
-  $('#userName').html(data.userName);
-  $('#clusterNameLink').html(data.clusterName);
-  $('#memberName').html(data.name);
-  $('#memberName').prop('title', data.name);
-  $('#memberRegionsCount').html(data.regionsCount);
-  $('#loadAverage').html(applyNotApplicableCheck(data.loadAverage));
-  $('#sockets').html(applyNotApplicableCheck(data.sockets));
-  $('#threads').html(data.threads);
-
-  // off heap free size
-  var offHeapFreeSize = convertBytesToMBorGB(data.offHeapFreeSize);
-  $('#offHeapFreeSize').html(offHeapFreeSize[0]+" "+offHeapFreeSize[1]);
-
-  // off heap used size
-  var offHeapUsedSize = convertBytesToMBorGB(data.offHeapUsedSize);
-  $('#offHeapUsedSize').html(offHeapUsedSize[0]+" "+offHeapUsedSize[1]);
-
-  $('#numClients').html(data.numClients);
-  
-  // setting member status according to notification alert
-  $('#memberStatus').html(data.status);
-  if (data.status == "Severe") { // Severes
-    if ($("#memberStatusIcon").hasClass("normalStatus"))
-      $("#memberStatusIcon").removeClass("normalStatus");
-    if ($("#memberStatusIcon").hasClass("errorStatus"))
-      $("#memberStatusIcon").removeClass("errorStatus");
-    if ($("#memberStatusIcon").hasClass("warningStatus"))
-      $("#memberStatusIcon").removeClass("warningStatus");
-
-    $('#memberStatus').html("Severe");
-    $("#memberStatusIcon").addClass("severeStatus");
-
-  } else if (data.status == "Error") { // Error
-
-    if ($("#memberStatusIcon").hasClass("normalStatus")) {
-      $("#memberStatusIcon").removeClass("normalStatus");
-    }
-    if ($("#memberStatusIcon").hasClass("warningStatus")) {
-      $("#memberStatusIcon").removeClass("warningStatus");
-    }
-    $("#memberStatusIcon").addClass("errorStatus");
-    $('#memberStatus').html("Error");
-  } else if (data.status == "Warning") { // Warning
-
-    if ($("#memberStatusIcon").hasClass("normalStatus")) {
-      $("#memberStatusIcon").removeClass("normalStatus");
-    }
-    if ($("#memberStatusIcon").hasClass("errorStatus")) {
-      $("#memberStatusIcon").removeClass("errorStatus");
-    }
-    if ($("#memberStatusIcon").hasClass("severeStatus")) {
-      $("#memberStatusIcon").removeClass("severeStatus");
-    }
-    $('#memberStatus').html("Warning");
-    $("#memberStatusIcon").addClass("warningStatus");
-  } else { // Normal
-
-    if ($("#memberStatusIcon").hasClass("severeStatus"))
-      $("#memberStatusIcon").removeClass("severeStatus");
-    if ($("#memberStatusIcon").hasClass("errorStatus"))
-      $("#memberStatusIcon").removeClass("errorStatus");
-    if ($("#memberStatusIcon").hasClass("warningStatus"))
-      $("#memberStatusIcon").removeClass("warningStatus");
-    $('#memberStatus').html("Normal");
-    $("#memberStatusIcon").addClass("normalStatus");
-  }
-  
-};
-
-/**
- * function used for getting the response of Member KeyStatistics widget and
- * wired them with HTML representing tags.
- */
-var getMemberKeyStatisticsBack = function(data) {
-  // sparkline graph options
-  var sparklineOptions = {
-    width : '300px',
-    height : '20px',
-    lineColor : '#00CCFF',
-    fillColor : false,
-    spotColor : false,
-    minSpotColor : false,
-    maxSpotColor : false
-  };
-
-  // cpu usage
-  var sumCPUUsage = 0;
-  var cpuUsageTrend = data.cpuUsageTrend;
-
-  for ( var i = 0; i < cpuUsageTrend.length; i++) {
-    sumCPUUsage += cpuUsageTrend[i];
-  }
-
-  var avgCPUUsage = 0;
-  if (cpuUsageTrend.length > 0) {
-    avgCPUUsage = sumCPUUsage / cpuUsageTrend.length;
-  }
-
-  $('#memberCPUUsageValue').html(avgCPUUsage.toFixed(2));
-  $('#memberCPUUsageSparkLine').sparkline(data.cpuUsageTrend, sparklineOptions);
-
-  // gets per sec
-  var readPerSecTrend = data.readPerSecTrend;
-  var sumReads = 0;
-  for ( var i = 0; i < readPerSecTrend.length; i++) {
-    sumReads += readPerSecTrend[i];
-  }
-
-  var avgReads = 0;
-  if (readPerSecTrend.length > 0) {
-    avgReads = sumReads / readPerSecTrend.length;
-  }
-
-  $('#memberGetsPerSecValue').html(applyNotApplicableCheck(avgReads.toFixed(2)));
-  $('#memberGetsPerSecSparkLine').sparkline(data.readPerSecTrend,
-      sparklineOptions);
-
-  // puts per sec
-  var writePerSecTrend = data.writePerSecTrend;
-  var sumWrites = 0;
-  for ( var i = 0; i < writePerSecTrend.length; i++) {
-    sumWrites += writePerSecTrend[i];
-  }
-
-  var avgWrites = 0;
-  if (writePerSecTrend.length > 0) {
-    avgWrites = sumWrites / writePerSecTrend.length;
-  }
-
-  $('#memberPutsPerSecValue').html(applyNotApplicableCheck(avgWrites.toFixed(2)));
-  $('#memberPutsPerSecSparkLineBar').sparkline(data.writePerSecTrend,
-      sparklineOptions);
-};
-
-/**
- * function used for getting the response of Member GCPauses widget and wired
- * them with HTML representing tags.
- */
-var getMemberGCPausesBack = function(data) {
-
-  gcPausesTrend = data.gcPausesTrend;
-
-  var sparklineOptions = {
-    width : '230px',
-    height : '72px',
-    lineColor : '#FAB948',
-    fillColor : false,
-    spotRadius : 2.5,
-    labelPosition : 'left',
-    spotColor : false,
-    minSpotColor : false,
-    maxSpotColor : false,
-    lineWidth : 2
-  };
-
-  var sumOfPauses = 0;
-  for ( var i = 0; i < gcPausesTrend.length; i++) {
-    sumOfPauses += gcPausesTrend[i];
-  }
-
-  $('#memberGCPauses').sparkline(gcPausesTrend, sparklineOptions);
-  $('#memberGcPausesAvg').html(sumOfPauses);
-};
-
-/**
- * function used for getting the response of Member HeapUsage widget and wired
- * them with HTML representing tags.
- */
-var getMemberHeapUsageBack = function(data) {
-  var heapUsageTrend = [];
-  heapUsageTrend = data.heapUsageTrend;
-  var sumMemory = 0;
-  for ( var i = 0; i < heapUsageTrend.length; i++) {
-    sumMemory += heapUsageTrend[i];
-  }
-
-  var avgMemory = 0;
-  if (heapUsageTrend.length > 0) {
-    avgMemory = sumMemory / heapUsageTrend.length;
-  }
-
-  var sparklineOptions = {
-    width : '230px',
-    height : '72px',
-    lineColor : '#FAB948',
-    fillColor : false,
-    spotRadius : 2.5,
-    labelPosition : 'left',
-    spotColor : false,
-    minSpotColor : false,
-    maxSpotColor : false,
-    lineWidth : 2
-  };
-
-  $('#memberHeapUsage').sparkline(heapUsageTrend, sparklineOptions);
-  // set current value
-  if (avgMemory > 1024) {
-    var heapUsageGB = (avgMemory / 1024).toFixed(2);
-    $('#memberHeapUsageAvg').html(
-        heapUsageGB + ' <span class="font-size23 paddingL5">GB</span>');
-
-  } else {
-    $('#memberHeapUsageAvg')
-        .html(
-            applyNotApplicableCheck(avgMemory.toFixed(2))
-                + ' <span class="font-size23 paddingL5">MB</span>');
-  }
-};
-
-/**
- * function used for getting the response of Member TroughputWrites widget and
- * wired them with HTML representing tags.
- */
-var getMemberDiskThroughputBack = function(data) {
-  var throughputReadsTrend = data.throughputReadsTrend;
-  var throughputWritesTrend = data.throughputWritesTrend;
-
-  var readsSum = 0;
-  for ( var i = 0; i < throughputReadsTrend.length; i++) {
-    readsSum += throughputReadsTrend[i];
-  }
-
-  var avgThroughputReads = 0;
-  if (throughputReadsTrend.length > 0) {
-    avgThroughputReads = readsSum / throughputReadsTrend.length;
-  }
-
-  var writesSum = 0;
-  for ( var i = 0; i < throughputWritesTrend.length; i++) {
-    writesSum += throughputWritesTrend[i];
-  }
-
-  var avgThroughputWrites = 0;
-  if (throughputWritesTrend.length > 0) {
-    avgThroughputWrites = writesSum / throughputWritesTrend.length;
-  }
-
-  var sparklineOptions = {
-    width : '230px',
-    height : '72px',
-    lineColor : '#FAB948',
-    lineWidth : 2,
-    fillColor : false,
-    spotRadius : 3,
-    spotColor : false,
-    minSpotColor : false,
-    maxSpotColor : false,
-    highlightSpotColor : false,
-    composite : false
-  };
-
-  // Reads trends
-  // sparklineOptions.lineColor = '#87b025';
-  $('#diskReadsThroughputTrend').sparkline(throughputReadsTrend,
-      sparklineOptions);
-  $('#diskReadsThroughput').html(applyNotApplicableCheck(avgThroughputReads.toFixed(2)));
-
-  // Writes trends
-  sparklineOptions.lineColor = '#2e84bb';
-  $('#diskWritesThroughputTrend').sparkline(throughputWritesTrend,
-      sparklineOptions);
-  $('#diskWritesThroughput').html(applyNotApplicableCheck(avgThroughputWrites.toFixed(2)));
-
-};
-
-/**
- * function used for getting the response of Member GatewayHub widget and wired
- * them with HTML representing tags.
- */
-var getMemberGatewayHubBack = function(data) {
-
-  var gatewayDetails = data;
-
-  if ((!data.isGatewayReceiver) && (!data.isGatewaySender)) {
-    // hide widget
-    $('#MemberGatewayHubWidget').hide();
-    return;
-  } else {
-    // show widget
-    $('#MemberGatewayHubWidget').show();
-  }
-
-  if (data.isGatewayReceiver) {
-    if (data.listeningPort != undefined && data.listeningPort != "") {
-      $('#receiverListeningPort').html(data.listeningPort);
-    } else {
-      $('#receiverListeningPort').html('-');
-    }
-
-    if (data.linkTroughput != undefined) {
-      $('#receiverLinkThroughput').html(data.linkTroughput.toFixed(1));
-    } else {
-      $('#receiverLinkThroughput').html('-');
-    }
-
-    if (data.avgBatchLatency != undefined ) {
-      $('#receiverAvgBatchLatency').html(
-          data.avgBatchLatency
-              + ' <span class="font-size13 paddingL5">ms</span>');
-    } else {
-      $('#receiverAvgBatchLatency').html('-');
-    }
-  } else {
-    $('#receiverListeningPort').html('-');
-    $('#receiverLinkThroughput').html('-');
-    $('#receiverAvgBatchLatency').html('-');
-  }
-
-  if (data.isGatewaySender) {
-
-    var endPoints = gatewayDetails.gatewaySenders;
-    var htmlListEndPoints = "";
-
-    endPoints = endPoints.sort(sortedArray('id'));
-
-    for ( var i = 0; i < endPoints.length; i++) {
-      htmlListEndPoints += '<div>'
-          + '<span class="pointDetailsPaddingMember pointC1" title="'
-          + endPoints[i].id + '">' + endPoints[i].id + '</span>'
-          + '<span class="pointDetailsPaddingMember pointC2" title="'
-          + endPoints[i].queueSize + '">' + endPoints[i].queueSize + '</span>';
-      if (endPoints[i].status == true) {
-        htmlListEndPoints += '<span class="pointDetailsPaddingMember pointC3" title="Running"><img src="images/status-up.png"></span>';
-      } else if (endPoints[i].status == false) {
-        htmlListEndPoints += '<span class="pointDetailsPaddingMember pointC3" title="Not Running"><img src="images/status-down.png"></span>';
-      }
-      htmlListEndPoints += '</div>';
-    }
-    $('#gatewaySendersList').html(htmlListEndPoints);
-    if(endPoints.length == 0){
-      $('#idGatewaySenderMoreDetailsLink').hide();
-    }
-
-    var regionList = gatewayDetails.regionsInvolved;
-    var htmlListRegions = "";
-    for ( var i = 0; i < regionList.length; i++) {
-      htmlListRegions += '<div> <span class="pointDetailsPaddingMember pointC1-2">'
-          + regionList[i].name
-          + '</span><span class="pointDetailsPaddingMember pointC3"></div>';
-    }
-    $('#regionInvolvedList').html(htmlListRegions);
-    
-    // initialize for the popup
-    gatewaysenderEndpoints = gatewayDetails.gatewaySenders;
-
-    $('.pointGridData').jScrollPane();
-    $('#idGatewaySenderMoreDetailsLink').show();
-  } else {
-    $('#idGatewaySenderMoreDetailsLink').hide();
-  }
-};
-
-/**
- * function used for getting the response of Member Asynch Event Queues widget and wired
- * them with HTML representing tags.
- */
-var getMemberAsynchEventQueuesBack = function(data) {
-
-  if (!data.isAsyncEventQueuesPresent) {
-    // hide widget
-    $('#MemberAsynchEventQueuesWidget').hide();
-    return;
-  } else {
-    // show widget
-    $('#MemberAsynchEventQueuesWidget').show();
-  }
-
-  asyncEventQueueData = data.asyncEventQueues;
-  asyncEventQueueData = asyncEventQueueData.sort(sortedArray('id'));
-  if (asyncEventQueueData.length > 0){
-      var htmlListQueues = "";
-    
-      for ( var i = 0; i < asyncEventQueueData.length; i++) {
-        htmlListQueues += '<div>'
-            + '<span class="pointDetailsPaddingMember pointC1" title="'
-            + asyncEventQueueData[i].id + '">' + asyncEventQueueData[i].id + '</span>'
-            + '<span class="pointDetailsPaddingMember pointC2" title="'
-            + asyncEventQueueData[i].queueSize + '">' + asyncEventQueueData[i].queueSize + '</span>';
-
-        if (asyncEventQueueData[i].primary == true) {
-          htmlListQueues += '<span class="pointDetailsPaddingMember pointC3" title="Primary">Primary</span>';
-        } else if (asyncEventQueueData[i].primary == false) {
-          htmlListQueues += '<span class="pointDetailsPaddingMember pointC3" title="Not Primary">Secondary</span>';
-        }
-        
-        htmlListQueues += '</div>';
-      }
-      
-      $('#asynchList').html(htmlListQueues);
-      $('.pointGridData').jScrollPane();
-      $('#idAsynchMoreDetailsLink').show();
-  } else {
-    $('#idAsynchMoreDetailsLink').hide();
-  }
-};
-
-var getClearAllAlertsBack = function(data) {
-  numTotalSeverAlerts = 0;
-  numTotalErrorAlerts = 0;
-  numTotalWarningAlerts = 0;
-
-  severAlerts.splice(0, severAlerts.length);
-  errorAlerts.splice(0, errorAlerts.length);
-  warningAlerts.splice(0, warningAlerts.length);
-
-  document.getElementById("severeList").innerHTML = "";
-  document.getElementById("severeTotalCount").innerHTML = "";
-  document.getElementById("severeTotalCount").innerHTML = "0";
-
-  document.getElementById("errorList").innerHTML = "";
-  document.getElementById("errorTotalCount").innerHTML = "";
-  document.getElementById("errorTotalCount").innerHTML = "0";
-
-  document.getElementById("warningList").innerHTML = "";
-  document.getElementById("warningTotalCount").innerHTML = "";
-  document.getElementById("warningTotalCount").innerHTML = "0";
-
-  document.getElementById("allAlertList").innerHTML = "";
-  document.getElementById("allAlertCount").innerHTML = "";
-  document.getElementById("allAlertCount").innerHTML = "0";
-
-  // Hide Load More
-  $('#containerLoadMoreAlertsLink').hide();
-
-  // update dashboard stats
-  displayClusterStatus();
-
-  if (!(document.getElementById("memberStatusIcon") == null)) {
-    $('#memberStatus').html("Normal");
-    $("#memberStatusIcon").addClass("normalStatus");
-
-    if ($("#memberStatusIcon").hasClass("severeStatus"))
-      $("#memberStatusIcon").removeClass("severeStatus");
-    if ($("#memberStatusIcon").hasClass("errorStatus"))
-      $("#memberStatusIcon").removeClass("errorStatus");
-    if ($("#memberStatusIcon").hasClass("warningStatus"))
-      $("#memberStatusIcon").removeClass("warningStatus");
-  }
-  $("#allAlertScrollPane").addClass("hide-scroll-pane");
-};
-
-function getSystemAlertsBack(data) {
-  if (data.connectedFlag) {
-    $('#connectionStatusDiv').hide();
-  } else {
-    $('#connectionStatusDiv').show();
-    $('#connectionErrorMsgDiv').html(data.connectedErrorMsg);
-  }
-
-  $('#pageNumber').val(data.pageNumber);
-
-  // Update global alerts variables
-  severAlerts = new Array();
-  if(undefined != data.systemAlerts.severe){
-    severAlerts = data.systemAlerts.severe;
-  }
-
-  errorAlerts = new Array();
-  if(undefined != data.systemAlerts.errors){
-    errorAlerts = data.systemAlerts.errors;
-  }
-
-  warningAlerts = new Array();
-  if(undefined != data.systemAlerts.warnings){
-    warningAlerts = data.systemAlerts.warnings;
-  }
-
-  infoAlerts = new Array();
-  if(undefined != data.systemAlerts.info){
-    infoAlerts = data.systemAlerts.info;
-  }
-  
-  // Apply filter if text criteria is already specified by user on ui
-  applyFilterOnNotificationsList(currentActiveNotificationTab);
-  
-};
-
-/**
- * function used for getting the response of Cluster R Graph widget and wired
- * them with HTML representing tags.
- */
-var getClusterMembersRGraphBack = function(data) {
-  // if member count is < 50 then make R-Graph as default view
-  if ("" == flagActiveTab && data.memberCount <= 50) {
-    openViewPanel('member', 'default','rgraph');
-  } else if ("" == flagActiveTab && data.memberCount > 50
-      && data.memberCount <= 100) { 
-    // if member count is > 50 and <=100 then make Tree map as default view
-    openViewPanel('member', 'default','treemap');
-  } else if ("" == flagActiveTab && data.memberCount > 100) { // if member
-    // count is > 100 then make grid as default view
-    openViewPanel('member', 'default','grid');
-  }
-
-  if (flagActiveTab == "MEM_R_GRAPH_DEF") // if
-  {
-    clusteRGraph.loadJSON(data.clustor);
-    clusteRGraph.compute('end');
-    if (vMode != 8)
-      refreshNodeAccAlerts();
-    clusteRGraph.refresh();
-  }
-};
-
-var getClusterMembersBack = function(data) {
-
-  gblClusterMembers = data.members;
-
-  memberCount = data.members.length;
-
-  if (flagActiveTab == "MEM_TREE_MAP_DEF") {
-    updateClusterMembersTreeMapDefault(data);
-  } else if (flagActiveTab == "MEM_TREE_MAP_SG") {
-    updateClusterMembersTreeMapSG(data);
-  } else if (flagActiveTab == "MEM_TREE_MAP_RZ") {
-    updateClusterMembersTreeMapRZ(data);
-  } else if (flagActiveTab == "MEM_GRID_DEF") {
-    updateClusterMembersGridDefault(data);
-  } else if (flagActiveTab == "MEM_GRID_SG") {
-    updateClusterMembersGridSG(data);
-  } else if (flagActiveTab == "MEM_GRID_RZ") {
-    updateClusterMembersGridRZ(data);
-  } else {
-    // Do Nothing
-  }
-};
-
-/**
- * function used for getting the response of Cluster Member Default Tree Map 
- * widget and wired them with HTML representing tags.
- */
-var updateClusterMembersTreeMapDefault = function(data) {
-  var members = data.members;
-
-  var json = buildDefaultMembersTreeMapData(members);
-
-  clusterMemberTreeMap.loadJSON(json);
-  clusterMemberTreeMap.refresh();
-};
-
-/**
- * function used for getting the response of Cluster Member Default Tree Map 
- * widget and wired them with HTML representing tags.
- */
-var updateClusterMembersTreeMapSG = function(data) {
-  var members = data.members;
-
-  var json = buildSGMembersTreeMapData(members);
-
-  clusterSGMemberTreeMap.loadJSON(json);
-  clusterSGMemberTreeMap.refresh();
-};
-
-/**
- * function used for getting the response of Cluster Member Default Tree Map 
- * widget and wired them with HTML representing tags.
- */
-var updateClusterMembersTreeMapRZ = function(data) {
-  var members = data.members;
-
-  var json = buildRZMembersTreeMapData(members);
-
-  clusterRZMemberTreeMap.loadJSON(json);
-  clusterRZMemberTreeMap.refresh();
-};
-
-/**
- * function used for getting the response of Cluster Member Default Tree Map 
- * widget and wired them with HTML representing tags.
- */
-var updateClusterRegionsTreeMapDefault = function(data) {
-  var regions = data.regions;
-
-  var json = buildRegionsTreeMapData(regions);
-
-  clusterRegionsTreeMap.loadJSON(json);
-  clusterRegionsTreeMap.refresh();
-};
-
-var updateClusterMembersGridDefault = function(data) {
-  var members = data.members;
-
-  memberCount = members.length;
-
-  $('#memberList').jqGrid('clearGridData');
-
-  for ( var i = 0; i < members.length; i++) {
-    var memberData = members[i];
-    $('#memberList').jqGrid('addRowData',
-        memberData.memberId + "&" + memberData.name, memberData);
-  }
-
-  var gridUserData = jQuery("#memberList").getGridParam('userData');
-
-  // Apply sort order ans sort columns on updated jqgrid data
-  jQuery("#memberList").jqGrid('setGridParam', {
-    sortname : gridUserData.sortColName,
-    sortorder : gridUserData.sortOrder
-  });
-  // Reload jqgrid
-  jQuery("#memberList").trigger("reloadGrid");
-
-  // apply scroll if grid container block is not minimized
-  if ($("#LargeBlock_1").css("display") != "none") {
-    $('.ui-jqgrid-bdiv').jScrollPane();
-  }
-};
-
-var updateClusterMembersGridSG = function(data) {
-  var members = buildSGMembersGridData(data.members);
-
-  $('#memberListSG').jqGrid('clearGridData');
-
-  for ( var i = 0; i < members.length; i++) {
-    var memberData = members[i];
-    $('#memberListSG').jqGrid('addRowData',
-        memberData.memberId + "&" + memberData.name, memberData);
-  }
-
-  var gridUserData = jQuery("#memberListSG").getGridParam('userData');
-
-  // Apply sort order ans sort columns on updated jqgrid data
-  jQuery("#memberListSG").jqGrid('setGridParam', {
-    sortname : gridUserData.sortColName,
-    sortorder : gridUserData.sortOrder
-  });
-  // Reload jqgrid
-  jQuery("#memberListSG").trigger("reloadGrid");
-
-  // apply scroll if grid container block is not minimized
-  if ($("#LargeBlock_1").css("display") != "none") {
-    $('.ui-jqgrid-bdiv').jScrollPane();
-  }
-};
-
-var updateClusterMembersGridRZ = function(data) {
-  var members = buildRZMembersGridData(data.members);
-
-  $('#memberListRZ').jqGrid('clearGridData');
-
-  for ( var i = 0; i < members.length; i++) {
-    var memberData = members[i];
-    $('#memberListRZ').jqGrid('addRowData',
-        memberData.memberId + "&" + memberData.name, memberData);
-  }
-
-  var gridUserData = jQuery("#memberListRZ").getGridParam('userData');
-
-  // Apply sort order ans sort columns on updated jqgrid data
-  jQuery("#memberListRZ").jqGrid('setGridParam', {
-    sortname : gridUserData.sortColName,
-    sortorder : gridUserData.sortOrder
-  });
-  // Reload jqgrid
-  jQuery("#memberListRZ").trigger("reloadGrid");
-
-  // apply scroll if grid container block is not minimized
-  if ($("#LargeBlock_1").css("display") != "none") {
-    $('.ui-jqgrid-bdiv').jScrollPane();
-  }
-};
-
-var updateClusterRegionsGridDefault = function(data) {
-  var regions = data.regions;
-
-  $('#regionsList').jqGrid('clearGridData');
-
-  for ( var i = 0; i < regions.length; i++) {
-    var regionData = regions[i];
-    $('#regionsList').jqGrid('addRowData',
-        regionData.id + "&" + regionData.name, regionData);
-  }
-
-  var gridUserData = jQuery("#regionsList").getGridParam('userData');
-
-  // Apply sort order ans sort columns on updated jqgrid data
-  jQuery("#regionsList").jqGrid('setGridParam', {
-    sortname : gridUserData.sortColName,
-    sortorder : gridUserData.sortOrder
-  });
-  // Reload jqgrid
-  jQuery("#regionsList").trigger("reloadGrid");
-
-  // apply scroll if grid container block is not minimized
-  if ($("#LargeBlock_1").css("display") != "none") {
-    $('.ui-jqgrid-bdiv').jScrollPane();
-  }
-};
-
-// function used for applying filter of cluster regions in data view screen
-var applyFilterOnClusterRegions = function() {
-  // console.log("applyFilterOnClusterRegions called");
-  var searchKeyword = extractFilterTextFrom("filterClusterRegionsBox");
-
-  if (searchKeyword != "") {
-    var filteredClusterRegions = new Array();
-    for ( var i = 0; i < clusterDataViewRegions.length; i++) {
-      // filtered list
-      if (clusterDataViewRegions[i].name.toLowerCase().indexOf(searchKeyword) !== -1) {
-        filteredClusterRegions.push(clusterDataViewRegions[i]);
-      }
-    }
-    updateDataViewDetails(filteredClusterRegions);
-  } else {
-    updateDataViewDetails(clusterDataViewRegions);
-  }
-};
-
-// update the cluster regions grid and treemap view on data view page
-function updateDataViewDetails(clusterRegions) {
-
-  $('#regionList').jqGrid('clearGridData');
-  jQuery("#regionList").trigger("reloadGrid");
-
-  // variable to store value of total of entry counts of all regions
-  var totalOfEntryCounts = 0;
-  // flag to determine if all regions are having entry count = 0
-  var flagSetEntryCountsToZero = false;
-
-  // Calculate the total of all regions entry counts
-  for ( var i = 0; i < clusterRegions.length; i++) {
-    totalOfEntryCounts += clusterRegions[i].entryCount;
-  }
-
-  // If totalOfEntryCounts is zero and at least one region is present
-  // then set flagSetEntryCountsToZero to avoid displaying circles
-  // in treemap as all valid regions are zero area regions and also display
-  // all regions with evenly placement of blocks
-  if (totalOfEntryCounts == 0 && clusterRegions.length > 0) {
-    flagSetEntryCountsToZero = true;
-  }
-
-  var childerensVal = [];
-  if (clusterRegions.length > 0) {
-
-    if (selectedDataViewTM == "") {
-      selectedDataViewTM = clusterRegions[0].regionPath;
-    } else {
-      // check selected region exists or not
-      // if selected region does not exists, set first region as selected
-      // region
-      var selectedRegionExists = false;
-      for ( var i = 0; i < clusterRegions.length; i++) {
-        if (selectedDataViewTM == clusterRegions[i].regionPath) {
-          selectedRegionExists = true;
-        }
-      }
-      if (!selectedRegionExists) {
-        selectedDataViewTM = clusterRegions[0].regionPath;
-      }
-    }
-
-    for ( var i = 0; i < clusterRegions.length; i++) {
-
-      $('#regionList').jqGrid('addRowData', i + 1, clusterRegions[i]);
-      var entryCount = clusterRegions[i].systemRegionEntryCount;
-      // If flagSetEntryCountsToZero is true then set entry count to
-      // display all
-      // regions with evenly placement of blocks
-      if (flagSetEntryCountsToZero && entryCount == 0) {
-        entryCount = 1;
-      }
-      var color = colorCodeForRegions;
-      if(clusterRegions[i].systemRegionEntryCount == 0){
-        color = colorCodeForZeroEntryCountRegions;
-      }
-
-      if (selectedDataViewTM == clusterRegions[i].regionPath)
-        color = colorCodeForSelectedRegion;
-
-      var wanEnabled = clusterRegions[i].wanEnabled;
-      var wanEnabledxt = "";
-      if (wanEnabled == true)
-        wanEnabledxt = "WAN Enabled";
-      // if (entryCount == 0)
-      // entryCount = 1;
-      var dataVal = {
-        "name" : clusterRegions[i].name,
-        "id" : clusterRegions[i].regionPath,
-        "$color" : color,
-        "$area" : entryCount,
-        "systemRegionEntryCount" : clusterRegions[i].systemRegionEntryCount,
-        "type" : clusterRegions[i].type,
-        "regionPath" : clusterRegions[i].regionPath,
-        "entrySize" : clusterRegions[i].entrySize,
-        "memberCount" : clusterRegions[i].memberCount,
-        "writes" : clusterRegions[i].putsRate,
-        "reads" : clusterRegions[i].getsRate,
-        "emptyNodes" : clusterRegions[i].emptyNodes,
-        "persistence" : clusterRegions[i].persistence,
-        "isEnableOffHeapMemory" : clusterRegions[i].isEnableOffHeapMemory,
-        "compressionCodec" : clusterRegions[i].compressionCodec,
-        "isHDFSWriteOnly" : clusterRegions[i].isHDFSWriteOnly,
-        "memberNames" : clusterRegions[i].memberNames,
-        "memoryWritesTrend" : clusterRegions[i].memoryWritesTrend,
-        "memoryReadsTrend" : clusterRegions[i].memoryReadsTrend,
-        "diskWritesTrend" : clusterRegions[i].diskWritesTrend,
-        "diskReadsTrend" : clusterRegions[i].diskReadsTrend,
-        "memoryUsage" : clusterRegions[i].memoryUsage,
-        "dataUsage" : clusterRegions[i].dataUsage,
-        "totalDataUsage" : clusterRegions[i].totalDataUsage,
-        "totalMemory" : clusterRegions[i].totalMemory
-      };
-      var childrenVal = {
-        "children" : [],
-        "data" : dataVal,
-        "id" : clusterRegions[i].regionPath,
-        "name" : wanEnabledxt
-      };
-      if (selectedDataViewTM == clusterRegions[i].regionPath)
-        displayRegionDetails(dataVal);
-      childerensVal[i] = childrenVal;
-    }
-
-  } else {
-    var dataVal = {
-      "name" : "",
-      "id" : "",
-      "$color" : "",
-      "$area" : 0,
-      "systemRegionEntryCount" : "",
-      "type" : "",
-      "regionPath" : "",
-      "entrySize" : "",
-      "memberCount" : "",
-      "writes" : "",
-      "reads" : "",
-      "emptyNodes" : "",
-      "persistence" : "",
-      "isEnableOffHeapMemory" : "",
-      "compressionCodec" : "",
-      "isHDFSWriteOnly" : "",
-      "memberNames" : "",
-      "memoryWritesTrend" : "",
-      "memoryReadsTrend" : "",
-      "diskWritesTrend" : "",
-      "diskReadsTrend" : "",
-      "memoryUsage" : 0,
-      "dataUsage" : "",
-      "totalDataUsage" : "",
-      "totalMemory" : 0
-    };
-    displayRegionDetails(dataVal);
-  }
-
-  var json = {
-    "children" : childerensVal,
-    "data" : {},
-    "id" : "root",
-    "name" : "Regions"
-  };
-
-  var gridUserData = jQuery("#regionList").getGridParam('userData');
-
-  // Apply sort order ans sort columns on updated jqgrid data
-  jQuery("#regionList").jqGrid('setGridParam', {
-    sortname : gridUserData.sortColName,
-    sortorder : gridUserData.sortOrder
-  });
-  // Reload jqgrid
-  jQuery("#regionList").trigger("reloadGrid");
-  $('.ui-jqgrid-bdiv').jScrollPane();
-
-  // Load treemap
-  dataViewRegionTM.loadJSON(json);
-  dataViewRegionTM.refresh();
-
-}
-
-// Callback function for ClusterRegion serice
-var getClusterRegionsBack = function(data) {
-  
-  if (flagActiveTab == "DATA_TREE_MAP_DEF") {
-    updateClusterRegionsTreeMapDefault(data);
-  } else if (flagActiveTab == "DATA_GRID_DEF") {
-    updateClusterRegionsGridDefault(data);
-  }
-  
-};
-
-//Callback function for ClusterRegion serice
-var getClusterRegionBack = function(data) {
-
-  $('#userName').html(data.userName);
-  document.getElementById("clusterName").innerHTML = data.clusterName;
-  clusterDataViewRegions = data.region;
-  // aaply filter and update data view details
-  applyFilterOnClusterRegions();
-};
-
-// function used for applying filter of member names in data view screen
-var applyFilterOnMembersList = function() {
-  var searchKeyword = extractFilterTextFrom('filterMembersListBox');
-  var htmlMemberListWithFilter = '';
-  if (searchKeyword != "") {
-    for ( var i = 0; i < memberList.length; i++) {
-      // filtered list
-      if (memberList[i].name.toLowerCase().indexOf(searchKeyword) !== -1) {
-        var divId = memberList[i].id + "&" + memberList[i].name;
-        htmlMemberListWithFilter += "<div class='pointDetailsPadding' title='"
-            + memberList[i].name + "' id='" + divId
-            + "' onClick = 'javascript:openMemberDetails(this.id)'>"
-            + memberList[i].name + "</div>";
-      }
-    }
-  } else {
-    for ( var i = 0; i < memberList.length; i++) {
-      // non filtered list
-      var divId = memberList[i].id + "&" + memberList[i].name;
-      htmlMemberListWithFilter += "<div class='pointDetailsPadding' title='"
-          + memberList[i].name + "' id='" + divId
-          + "' onClick = 'javascript:openMemberDetails(this.id)'>"
-          + memberList[i].name + "</div>";
-    }
-  }
-  document.getElementById("memberNames").innerHTML = htmlMemberListWithFilter;
-  $('.regionMembersSearchBlock').jScrollPane();
-};
-
-// function used for redirecting to member details page on click of any member
-// name from
-// the member names list.
-var openMemberDetails = function(divId) {
-  var member = divId.split("&");
-  location.href = 'MemberDetails.html?member=' + member[0] + '&memberName='
-      + member[1];
-};
-
-// function used for applying filter of member regions in member details page
-var applyFilterOnMemberRegions = function() {
-  // console.log("applyFilterOnMemberRegions called");
-  var searchKeyword = extractFilterTextFrom("filterMemberRegionsBox");
-
-  if (searchKeyword != "") {
-    var filteredMemberRegions = new Array();
-    for ( var i = 0; i < memberRegions.length; i++) {
-      // filtered list
-      if (memberRegions[i].name.toLowerCase().indexOf(searchKeyword) !== -1) {
-        filteredMemberRegions.push(memberRegions[i]);
-      }
-    }
-    updateMemberRegionViewDetails(filteredMemberRegions);
-  } else {
-    updateMemberRegionViewDetails(memberRegions);
-  }
-};
-
-// update the member regions grid and treemap view on members details page
-function updateMemberRegionViewDetails(regions) {
-
-  $('#memberRegionsList').jqGrid('clearGridData');
-  jQuery("#memberRegionsList").trigger("reloadGrid");
-
-  var childerensVal = [];
-
-  // variable to store value of total of entry counts of all regions
-  var totalOfEntryCounts = 0;
-  // flag to determine if all regions are having entry count = 0
-  var flagSetEntryCountsToZero = false;
-
-  // Calculate the total of all regions entry counts
-  for ( var i = 0; i < regions.length; i++) {
-    totalOfEntryCounts += regions[i].entryCount;
-  }
-
-  // If totalOfEntryCounts is zero and at least one region is present
-  // then set flagSetEntryCountsToZero to avoid displaying circles
-  // in treemap as all valid regions are zero area regions and also display
-  // all regions with evenly placement of blocks
-  if (totalOfEntryCounts == 0 && regions.length > 0) {
-    flagSetEntryCountsToZero = true;
-  }
-
-  for ( var i = 0; i < regions.length; i++) {
-    var regionData = regions[i];
-    $('#memberRegionsList').jqGrid('addRowData', i + 1, regionData);
-    var name = "";
-    name = regions[i].name;
-    var regionFullPath = regions[i].fullPath;
-    var entryCount = regions[i].entryCount;
-    // If flagSetEntryCountsToZero is true then set entry count to display
-    // all
-    // regions with evenly placement of blocks
-    if (flagSetEntryCountsToZero && entryCount == 0) {
-      entryCount = 1;
-    }
-    // if(entryCount == 0)
-    // entryCount = 1;
-
-    var colorCode = colorCodeForRegions;
-    if(regions[i].entryCount == 0){
-      colorCode = colorCodeForZeroEntryCountRegions;
-    }
-
-    var dataVal = {
-      "name" : name,
-      "id" : regionFullPath,
-      "$color" : colorCode,
-      "$area" : entryCount,
-      "regionType" : regions[i].type,
-      "entryCount" : regions[i].entryCount,
-      "entrySize" : regions[i].entrySize
-    };
-    var childrenVal = {
-      "children" : [],
-      "data" : dataVal,
-      "name" : name,
-      "id" : regionFullPath
-    };
-    childerensVal[i] = childrenVal;
-    
-  }
-
-  var gridUserData = jQuery("#memberRegionsList").getGridParam('userData');
-
-  // Apply sort order ans sort columns on updated jqgrid data
-  jQuery("#memberRegionsList").jqGrid('setGridParam', {
-    sortname : gridUserData.sortColName,
-    sortorder : gridUserData.sortOrder
-  });
-  
-  var gridHeight = 250;
-  // Adjust height of div and grid dynamically based on no of rows
-  if(regions.length > 10) {
-    gridHeight = 450;
-  }
-
-  jQuery("#memberRegionsList").jqGrid( 'setGridParam', {height : gridHeight} );
-  $("#gridBlocks_Panel").css('height', gridHeight + 54);
-
-  var gviewMemberRegionsListBDiv = $('#gview_memberRegionsList').children('.ui-jqgrid-bdiv');
-  gviewMemberRegionsListBDiv.css('height',gridHeight);
-
-  // Reload jqgrid
-  jQuery("#memberRegionsList").trigger("reloadGrid");
-  // apply scroll if grid container block is not minimized
-  if ($("#LargeBlock_1").css("display") != "none") {
-    $('.ui-jqgrid-bdiv').jScrollPane();
-  }
-
-  if (regions.length > 0) {
-    var json = {
-      "children" : childerensVal,
-      "data" : {},
-      "name" : "Regions",
-      "id" : "Root"
-    };
-
-    memberRegionsTreeMap.loadJSON(json);
-    memberRegionsTreeMap.refresh();
-  } else {
-    var json = {
-      "children" : [],
-      "data" : {},
-      "name" : "Regions",
-      "id" : "Root"
-    };
-    memberRegionsTreeMap.loadJSON(json);
-    memberRegionsTreeMap.refresh();
-  }
-
-}
-
-// Callback function for MemberRegions serice
-var getMemberRegionsBack = function(data) {
-
-  $('#memberRegionsList').jqGrid('clearGridData');
-
-  memberRegions = data.memberRegions;
-  // apply filter and update region details
-  applyFilterOnMemberRegions();
-};
-
-/**
- * function used for getting the response of Members Name List widget and wired
- * them with HTML representing tags.
- */
-var getMembersListBack = function(data) {
-
-  // Update global list of cluster members
-  membersList = data.clusterMembers;
-
-  // update tabname
-  $('#clusterNameLink').html(data.clusterName);
-
-  // add filter functionality
-  if (!isMemberListFilterHandlerBound) {
-    $('#filterMembersBox').bind("keyup", applyFilterOnMembersListDropDown);
-    isMemberListFilterHandlerBound = true;
-  }
-
-  // apply filter criteria if exist
-  $('#filterMembersBox').keyup();
-
-};
-
-var getQueryStatisticsBack = function(data) {
-  
-  // each refresh display jmx connectiopn status
-  if (data.connectedFlag) {
-    $('#connectionStatusDiv').hide();
-  } else {
-    $('#connectionStatusDiv').show();
-    $('#connectionErrorMsgDiv').html(data.connectedErrorMsg);
-  }
-  
-  //load the data
-  $('#queryStatisticsList').jqGrid('clearGridData');
-  if (data.queriesList.length > 0) {
-
-    // load all queries
-    grid.jqGrid("getGridParam").data = data.queriesList;
-    
-    var gridUserData = jQuery("#queryStatisticsList").getGridParam('userData');
-    // Apply sort order ans sort columns on updated jqgrid data
-    jQuery("#queryStatisticsList").jqGrid('setGridParam', {
-      sortname : gridUserData.sortColName,
-      sortorder : gridUserData.sortOrder
-    });
-    
-    // Reload jqgrid
-    jQuery("#queryStatisticsList").trigger("reloadGrid");
-    var queryStatisticsList = $('#gview_queryStatisticsList');
-    var queryStatisticsListChild = queryStatisticsList
-        .children('.ui-jqgrid-bdiv');
-    var api = queryStatisticsListChild.data('jsp');
-    api.reinitialise();
-    
-    $('#queryStatisticsList').toggle();
-    refreshTheGrid($('#queryStatisticsList'));
-  }
-};
-
-//Callback function for ClusterSelectedRegion serice
-var getClusterSelectedRegionBack = function(data) {
-
-  $('#userName').html(data.userName);
-  $('#clusterName').html(data.clusterName);
-  $('#idClusterName').html(data.clusterName);
-  
-  var regionName = data.selectedRegion.name;
-  if(regionName){
-    // display details of regions
-    displaySelectedRegionDetails(regionName, data);
-  } else {
-    // check if region error is there and display it
-    if (data.selectedRegion.errorOnRegion != undefined && data.selectedRegion.errorOnRegion != null
-        && $.trim(data.selectedRegion.errorOnRegion) != "") {
-
-      // Display error message
-      var message = data.selectedRegion.errorOnRegion;
-      message += "<div class=\"clear\"></div>"
-                 + "<a onclick=\"openClusterDetail();\" href=\"#.\" >" 
-                 + "Go To Cluster View</a>";
-      $('#connectionErrorMsgDiv').html(message);
-      $('#connectionStatusDiv').show();
-      return;
-    }
-  }
-};
-
-var getClusterSelectedRegionsMemberBack = function(data) {
-  
-  regionMembers = data.selectedRegionsMembers;
-  applyFilterOnRegionMembers();
-
-};
-
-function updateClusterSelectedRegionMembers(regionOnMembers){
-  
-  //check if region error is there and display it
-  if (regionOnMembers.errorOnRegion != undefined 
-      && regionOnMembers.errorOnRegion != null
-      && $.trim(regionOnMembers.errorOnRegion) != "") {
-
-    // Display error message
-    var message = regionOnMembers.errorOnRegion;
-    message += "<div class=\"clear\"></div>"
-               + "<a onclick=\"openClusterDetail();\" href=\"#.\" >" 
-               + "Go To Cluster View</a>";
-    $('#connectionErrorMsgDiv').html(message);
-    $('#connectionStatusDiv').show();
-    return;
-  }
-
-  if(regionOnMembers){
-
-    // build members tree map
-    globalJson = buildMemberTreeMap(regionOnMembers);
-      
-    regionMemberTreeMap.loadJSON(globalJson);
-    regionMemberTreeMap.refresh();
-
-    updateSelectedRegionMembersGrid(regionOnMembers);
-
-    memberOnRegionJson = regionOnMembers;
-
-    if(tipObj != null){
-        var key = '';
-        var spo = {
-            width : '110px',
-            height : '50px',
-            lineColor : '#FAB948',
-            fillColor : false,
-            spotRadius : 2.5,
-            labelPosition : 'left',
-            spotColor : false,
-            minSpotColor : false,
-            maxSpotColor : false,
-            lineWidth : 2
-        };
-        
-        var memberName = tipObj.find('#idMemberName').html();
-        key = 'memberOnRegionJson.' + memberName + '.entryCount';
-        tipObj.find('#regionMemberEntryCount').html(eval(key));
-        key = 'memberOnRegionJson.' + memberName + '.entrySize';
-        tipObj.find('#regionMemberEntrySize').html(eval(key));
-        key = 'memberOnRegionJson.' + memberName + '.accessor';
-        tipObj.find('#regionMemberAccessor').html(eval(key));
-        
-        key = 'memberOnRegionJson.' + memberName + '.memoryReadsTrend';
-        tipObj.find('#memberMemoryReadsTrend').sparkline(eval(key),spo);
-        key = 'memberOnRegionJson.' + memberName + '.diskReadsTrend';
-        tipObj.find('#memberDiskReadsTrend').sparkline(eval(key),spo);
-        
-        // Writes trends
-        spo.lineColor = '#2e84bb';
-        key = 'memberOnRegionJson.' + memberName + '.diskWritesTrend';
-        tipObj.find('#memberDiskWritesTrend').sparkline(eval(key),spo);
-        key = 'memberOnRegionJson.' + memberName + '.memoryWritesTrend';
-        tipObj.find('#memberMemoryWritesTrend').sparkline(eval(key),spo);
-        
-        $.sparkline_display_visible(); 
-    }
-  }
-};
-
-function refreshTheGrid(gridDiv) {
-  setTimeout(function(){gridDiv.toggle();}, 500);
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+/*=========================================================================
+ * Copyright (c) 2012-2014 Pivotal Software, Inc. All Rights Reserved.
+ * This product is protected by U.S. and international copyright
+ * and intellectual property laws. Pivotal products are covered by
+ * one or more patents listed at http://www.pivotal.io/patents.
+ *=========================================================================
+ */
+
+/**
+ *  @overview
+ * This is the actual response handling and processing of the web calls
+ * that are made by the PulseFunctions class. It will also process the 
+ * JSON response.
+ *
+ * @name PulseCallbacks.js
+ * @author ashutosh zambare.
+ * @version 1.0
+ *
+ */
+
+/**
+ * @function
+ * 
+ * @param r
+ *                This is the JSON object that is returned by the AJAX call made
+ *                by the PulseFunctions.
+ */
+var getPulseVersionBack = function(data) {
+
+  if (data.pulseVersion != undefined && data.pulseVersion != "") {
+    // Set Pulse version details
+    $('#pulseVersion').html(data.pulseVersion);
+    $('#pulseVer').html(data.pulseVersion);
+    $('#buildId').html(data.buildId);
+    $('#buildDate').html(data.buildDate);
+    $('#sourceDate').html(data.sourceDate);
+    $('#sourceRevision').html(data.sourceRevision);
+    $('#sourceRepository').html(data.sourceRepository);
+
+    // Display version details link
+    $('#pulseVersionDetailsLink').show();
+  } else {
+    // Hide version details link
+    $('#pulseVersionDetailsLink').hide();
+  }
+};
+
+
+/**
+ * Default handler for ClusterDetails service,
+ * function used for getting the response of Cluster Basic Details and wired
+ * them with HTML representing tags.
+ */
+var getClusterDetailsBack = null;
+
+/**
+ * For Gemfire, handler for ClusterDetails service
+ * function used for getting the response of Cluster Basic Details and wired
+ * them with HTML representing tags.
+ */
+var getClusterDetailsGemfireBack = function(data) {
+
+  if (severAlerts.length > 0) { // Severe
+    $('#clusterStatusText').html("Severe");
+    $("#clusterStatusIcon").addClass("severeStatus");
+  } else if (errorAlerts.length > 0) { // Error
+    $('#clusterStatusText').html("Error");
+    $("#clusterStatusIcon").addClass("errorStatus");
+    $("#clusterStatusIcon").removeClass("severeStatus");
+  } else if (warningAlerts.length > 0) { // Warning
+    $('#clusterStatusText').html("Warning");
+    $("#clusterStatusIcon").addClass("warningStatus");
+    $("#clusterStatusIcon").removeClass("severeStatus");
+    $("#clusterStatusIcon").removeClass("errorStatus");
+  } else { // Normal
+    $('#clusterStatusText').html("Normal");
+    $("#clusterStatusIcon").addClass("normalStatus");
+    $("#clusterStatusIcon").removeClass("severeStatus");
+    $("#clusterStatusIcon").removeClass("errorStatus");
+    $("#clusterStatusIcon").removeClass("warningStatus");
+  }
+
+  $('#clusterName').html(data.clusterName);
+  $('#clusterTotalMembersText').html(data.totalMembers);
+  $('#clusterServersText').html(data.servers);
+  $('#clusterClientsText').html(data.clients);
+  $('#clusterLocatorsText').html(data.locators);
+  $('#clusterTotalRegionsText').html(data.totalRegions);
+  $('#clusterTotalHeap').html(data.totalHeap);
+  $('#clusterFunctions').html(data.functions);
+  $('#clusterUniqueCQs').html(data.uniqueCQs);
+  $('#clusterSubscriptionsText').html(data.subscriptions);
+  $('#userName').html(data.userName);
+
+};
+
+/**
+ * function to sort array based on
+ *  string property
+ */
+var sortedArray =  function dynamicSort(property) { 
+	return function (obj1,obj2) {
+        return obj1[property] > obj2[property] ? 1
+            : obj1[property] < obj2[property] ? -1 : 0;
+    } 
+}
+
+/**
+ * For SQLfire, handler for ClusterDetails service
+ * function used for getting the response of Cluster Basic Details and wired
+ * them with HTML representing tags.
+ */
+var getClusterDetailsSQLfireBack = function(data) {
+
+  if (severAlerts.length > 0) { // Severe
+    $('#clusterStatusText').html("Severe");
+    $("#clusterStatusIcon").addClass("severeStatus");
+  } else if (errorAlerts.length > 0) { // Error
+    $('#clusterStatusText').html("Error");
+    $("#clusterStatusIcon").addClass("errorStatus");
+    $("#clusterStatusIcon").removeClass("severeStatus");
+  } else if (warningAlerts.length > 0) { // Warning
+    $('#clusterStatusText').html("Warning");
+    $("#clusterStatusIcon").addClass("warningStatus");
+    $("#clusterStatusIcon").removeClass("severeStatus");
+    $("#clusterStatusIcon").removeClass("errorStatus");
+  } else { // Normal
+    $('#clusterStatusText').html("Normal");
+    $("#clusterStatusIcon").addClass("normalStatus");
+    $("#clusterStatusIcon").removeClass("severeStatus");
+    $("#clusterStatusIcon").removeClass("errorStatus");
+    $("#clusterStatusIcon").removeClass("warningStatus");
+  }
+
+  $('#clusterName').html(data.clusterName);
+  $('#clusterTotalMembersText').html(data.totalMembers);
+  $('#clusterServersText').html(data.servers);
+  $('#clusterClientsText').html(data.clients);
+  $('#clusterLocatorsText').html(data.locators);
+  $('#clusterTotalRegionsText').html(data.totalRegions);
+  $('#clusterTotalHeap').html(data.totalHeap);
+  $('#clusterFunctions').html(data.functions);
+  $('#clusterTxnCommittedText').html(data.txnCommitted);
+  $('#clusterTxnRollbackText').html(data.txnRollback);
+  $('#userName').html(data.userName);
+
+};
+
+/**
+ * Default handler for ClusterKeyStatistics service,
+ * function used for getting the response of Cluster Key Statistics widget and wired
+ * them with HTML representing tags.
+ */
+var getClusterKeyStatisticsBack = null;
+
+/**
+ * For Gemfire, handler for ClusterKeyStatistics service 
+ * function used for getting the response of Cluster Key Statistics widget and
+ * wired them with HTML representing tags.
+ */
+var getClusterKeyStatisticsGemfireBack = function(data) {
+
+  // sparkline graph options
+  var sparklineOptions = {
+    width : '300px',
+    height : '20px',
+    lineColor : '#00CCFF',
+    fillColor : false,
+    spotColor : false,
+    minSpotColor : false,
+    maxSpotColor : false
+  };
+
+  var writePerSecTrend = data.writePerSecTrend;
+  var readPerSecTrend = data.readPerSecTrend;
+  var queriesPerSecTrend = data.queriesPerSecTrend;
+
+  var sumWrites = 0;
+  for ( var i = 0; i < writePerSecTrend.length; i++) {
+    sumWrites += writePerSecTrend[i];
+  }
+
+  var avgWrites = 0;
+  if (writePerSecTrend.length > 0) {
+    avgWrites = sumWrites / writePerSecTrend.length;
+  }
+
+  var sumReads = 0;
+  for ( var i = 0; i < readPerSecTrend.length; i++) {
+    sumReads += readPerSecTrend[i];
+  }
+
+  var avgReads = 0;
+  if (readPerSecTrend.length > 0) {
+    avgReads = sumReads / readPerSecTrend.length;
+  }
+
+  var sumQueries = 0;
+  for ( var i = 0; i < queriesPerSecTrend.length; i++) {
+    sumQueries += queriesPerSecTrend[i];
+  }
+
+  var avgQueries = 0;
+  if (queriesPerSecTrend.length > 0) {
+    avgQueries = sumQueries / queriesPerSecTrend.length;
+  }
+  // write per sec
+  $('#writePerSec').html(applyNotApplicableCheck(avgWrites.toFixed(2)));
+  $('#writePerSecSparkLine').sparkline(writePerSecTrend, sparklineOptions);
+
+  // read per second
+  $('#readPerSec').html(applyNotApplicableCheck(avgReads.toFixed(2)));
+  $('#readPerSecSparkLine').sparkline(readPerSecTrend, sparklineOptions);
+
+  // queries per sec
+  $('#queriesPerSec').html(avgQueries.toFixed(2));
+  $('#queriesPerSecSparkLine').sparkline(queriesPerSecTrend, sparklineOptions);
+};
+
+/**
+ * For SQLfire, handler for ClusterKeyStatistics service
+ * function used for getting the response of Cluster Key Statistics widget and
+ * wired them with HTML representing tags.
+ */
+var getClusterKeyStatisticsSQLfireBack = function(data) {
+
+  // sparkline graph options
+  var sparklineOptions = {
+    width : '300px',
+    height : '20px',
+    lineColor : '#00CCFF',
+    fillColor : false,
+    spotColor : false,
+    minSpotColor : false,
+    maxSpotColor : false
+  };
+
+  var writePerSecTrend = data.writePerSecTrend;
+  var readPerSecTrend = data.readPerSecTrend;
+  var queriesPerSecTrend = data.queriesPerSecTrend;
+
+  var sumWrites = 0;
+  for ( var i = 0; i < writePerSecTrend.length; i++) {
+    sumWrites += writePerSecTrend[i];
+  }
+
+  var avgWrites = 0;
+  if (writePerSecTrend.length > 0) {
+    avgWrites = sumWrites / writePerSecTrend.length;
+  }
+
+  var sumReads = 0;
+  for ( var i = 0; i < readPerSecTrend.length; i++) {
+    sumReads += readPerSecTrend[i];
+  }
+
+  var avgReads = 0;
+  if (readPerSecTrend.length > 0) {
+    avgReads = sumReads / readPerSecTrend.length;
+  }
+
+  var sumQueries = 0;
+  for ( var i = 0; i < queriesPerSecTrend.length; i++) {
+    sumQueries += queriesPerSecTrend[i];
+  }
+
+  var avgQueries = 0;
+  if (queriesPerSecTrend.length > 0) {
+    avgQueries = sumQueries / queriesPerSecTrend.length;
+  }
+  // write per sec
+  $('#writePerSec').html(applyNotApplicableCheck(avgWrites.toFixed(2)));
+  $('#writePerSecSparkLine').sparkline(writePerSecTrend, sparklineOptions);
+
+  // read per second
+  $('#readPerSec').html(applyNotApplicableCheck(avgReads.toFixed(2)));
+  $('#readPerSecSparkLine').sparkline(readPerSecTrend, sparklineOptions);
+};
+
+/**
+ * function used for getting the response of Cluster WAN Info widget and wired
+ * them with HTML representing tags.
+ */
+var getClusterWANInfoBack = function(data) {
+  var clusterList = data.connectedClusters;
+  var htmlList = "";
+  if (clusterList.length > 0) {
+    $('#wanInfoWidget').show();
+    for ( var i = 0; i < clusterList.length; i++) {
+      if (clusterList[i].status == true) {
+        htmlList += '<div class="statusUpDowmBlock statusUp">' + "Cluster_"
+            + clusterList[i].name + '</div>';
+      } else {
+        htmlList += '<div class="statusUpDowmBlock statusDown">' + "Cluster_"
+            + clusterList[i].name + '</div>';
+      }
+    }
+    $('#wanInfoList').html(htmlList);
+    $('.scroll-pane_1').jScrollPane();
+  } else {
+    $('#wanInfoWidget').hide();
+  }
+};
+
+/**
+ * function used for getting the response of Cluster Memory Usage widget and
+ * wired them with HTML representing tags.
+ */
+var getClusterMemoryUsageBack = function(data) {
+
+  var memoryUsageTrend = [];
+  memoryUsageTrend = data.memoryUsageTrend;
+
+  var sumMemory = 0;
+  for ( var i = 0; i < memoryUsageTrend.length; i++) {
+    sumMemory += memoryUsageTrend[i];
+  }
+
+  var avgMemory = 0;
+  if (memoryUsageTrend.length > 0) {
+    avgMemory = sumMemory / memoryUsageTrend.length;
+  }
+
+  var sparklineOptions = {
+    width : '230px',
+    height : '72px',
+    lineColor : '#FAB948',
+    fillColor : false,
+    spotRadius : 2.5,
+    labelPosition : 'left',
+    spotColor : false,
+    minSpotColor : false,
+    maxSpotColor : false,
+    lineWidth : 2
+  };
+
+  $('#memoryUsage').sparkline(memoryUsageTrend, sparklineOptions);
+  // checking if currentMemoryUsage > 1024 then show the result in GB else
+  // show the result in MB
+  if (data.currentMemoryUsage > 1024) {
+    var memoryUsageGB = (avgMemory / 1024).toFixed(2);
+    $('#currentMemoryUsage').html(memoryUsageGB);
+    $('#memoryUsageMB').html("GB");
+
+  } else {
+    $('#currentMemoryUsage').html(applyNotApplicableCheck(avgMemory.toFixed(2)));
+    $('#memoryUsageMB').html("MB");
+  }
+
+};
+
+/**
+ * function used for getting the response of Cluster GCPauses widget and wired
+ * them with HTML representing tags.
+ */
+var getClusterJVMPausesBack = function(data) {
+
+  var gCPausesTrend = [];
+  gCPausesTrend = data.gCPausesTrend;
+
+  var sparklineOptions = {
+    width : '230px',
+    height : '72px',
+    lineColor : '#FAB948',
+    fillColor : false,
+    spotRadius : 2.5,
+    labelPosition : 'left',
+    spotColor : false,
+    minSpotColor : false,
+    maxSpotColor : false,
+    lineWidth : 2
+  };
+
+  var sumOfPauses = 0;
+  for ( var i = 0; i < gCPausesTrend.length; i++) {
+    sumOfPauses += gCPausesTrend[i];
+  }
+
+  $('#gcPauses').sparkline(gCPausesTrend, sparklineOptions);
+  $('#currentGCPauses').html(sumOfPauses);
+};
+
+/**
+ * function used for getting the response of Cluster ThroughputWrites widget and
+ * wired them with HTML representing tags.
+ */
+var getClusterDiskThroughputBack = function(data) {
+
+  var throughputReads = data.throughputReads;
+  var throughputWrites = data.throughputWrites;
+
+  var readsSum = 0;
+  for ( var i = 0; i < throughputReads.length; i++) {
+    readsSum += throughputReads[i];
+  }
+
+  var avgThroughputReads = 0;
+  if (throughputReads.length > 0) {
+    avgThroughputReads = readsSum / throughputReads.length;
+  }
+
+  var writesSum = 0;
+  for ( var i = 0; i < throughputWrites.length; i++) {
+    writesSum += throughputWrites[i];
+  }
+
+  var avgThroughputWrites = 0;
+  if (throughputWrites.length > 0) {
+    avgThroughputWrites = writesSum / throughputWrites.length;
+  }
+
+  var sparklineOptions = {
+    width : '230px',
+    height : '72px',
+    lineColor : '#FAB948',
+    lineWidth : 2,
+    fillColor : false,
+    spotRadius : 3,
+    spotColor : false,
+    minSpotColor : false,
+    maxSpotColor : false,
+    highlightSpotColor : false,
+    composite : false
+  };
+
+  // Reads trends
+  $('#diskReadsThroughputTrend').sparkline(throughputReads, sparklineOptions);
+  $('#diskReadsThroughput').html(applyNotApplicableCheck(avgThroughputReads.toFixed(2)));
+
+  // Writes trends
+  sparklineOptions.lineColor = '#2e84bb';
+  $('#diskWritesThroughputTrend').sparkline(throughputWrites, sparklineOptions);
+  $('#diskWritesThroughput').html(applyNotApplicableCheck(avgThroughputWrites.toFixed(2)));
+};
+
+/**
+ * function used for getting the response of Member Clients widget and wired
+ * them with HTML representing tags.
+ */
+var getMemberClientsBack = function(data) {
+  $('#memberClientsList').jqGrid('clearGridData');
+  var clients = data.memberClients;
+  if (clients.length > 0) {
+    $('#memberClientsWidget').show();
+    for ( var i = 0; i < clients.length; i++) {
+      var clientData = clients[i];
+      $('#memberClientsList').jqGrid('addRowData', i + 1, clientData);
+    }
+
+    var gridUserData = jQuery("#memberClientsList").getGridParam('userData');
+
+    // Apply sort order ans sort columns on updated jqgrid data
+    jQuery("#memberClientsList").jqGrid('setGridParam', {
+      sortname : gridUserData.sortColName,
+      sortorder : gridUserData.sortOrder
+    });
+    // Reload jqgrid
+    jQuery("#memberClientsList").trigger("reloadGrid");
+
+  } else {
+    $('#memberClientsWidget').hide();
+  }
+};
+
+/**
+ * function used for getting the response of Member Basic Details widget and wired
+ * them with HTML representing tags.
+ */
+var getMemberDetailsBack = function(data) {
+
+  // check if data for member is available or not
+  if (data.errorOnMember != undefined && data.errorOnMember != null
+      && $.trim(data.errorOnMember) != "") {
+
+    // Display error message
+    var message = data.errorOnMember;
+    message += "<div class=\"clear\"></div>"
+               + "<a onclick=\"openClusterDetail();\" href=\"#.\" >" 
+               + "Go To Cluster View</a>";
+    $('#connectionErrorMsgDiv').html(message);
+    $('#connectionStatusDiv').show();
+    return;
+  }
+
+  $('#userName').html(data.userName);
+  $('#clusterNameLink').html(data.clusterName);
+  $('#memberName').html(data.name);
+  $('#memberName').prop('title', data.name);
+  $('#memberRegionsCount').html(data.regionsCount);
+  $('#loadAverage').html(applyNotApplicableCheck(data.loadAverage));
+  $('#sockets').html(applyNotApplicableCheck(data.sockets));
+  $('#threads').html(data.threads);
+
+  // off heap free size
+  var offHeapFreeSize = convertBytesToMBorGB(data.offHeapFreeSize);
+  $('#offHeapFreeSize').html(offHeapFreeSize[0]+" "+offHeapFreeSize[1]);
+
+  // off heap used size
+  var offHeapUsedSize = convertBytesToMBorGB(data.offHeapUsedSize);
+  $('#offHeapUsedSize').html(offHeapUsedSize[0]+" "+offHeapUsedSize[1]);
+
+  $('#numClients').html(data.numClients);
+  
+  // setting member status according to notification alert
+  $('#memberStatus').html(data.status);
+  if (data.status == "Severe") { // Severes
+    if ($("#memberStatusIcon").hasClass("normalStatus"))
+      $("#memberStatusIcon").removeClass("normalStatus");
+    if ($("#memberStatusIcon").hasClass("errorStatus"))
+      $("#memberStatusIcon").removeClass("errorStatus");
+    if ($("#memberStatusIcon").hasClass("warningStatus"))
+      $("#memberStatusIcon").removeClass("warningStatus");
+
+    $('#memberStatus').html("Severe");
+    $("#memberStatusIcon").addClass("severeStatus");
+
+  } else if (data.status == "Error") { // Error
+
+    if ($("#memberStatusIcon").hasClass("normalStatus")) {
+      $("#memberStatusIcon").removeClass("normalStatus");
+    }
+    if ($("#memberStatusIcon").hasClass("warningStatus")) {
+      $("#memberStatusIcon").removeClass("warningStatus");
+    }
+    $("#memberStatusIcon").addClass("errorStatus");
+    $('#memberStatus').html("Error");
+  } else if (data.status == "Warning") { // Warning
+
+    if ($("#memberStatusIcon").hasClass("normalStatus")) {
+      $("#memberStatusIcon").removeClass("normalStatus");
+    }
+    if ($("#memberStatusIcon").hasClass("errorStatus")) {
+      $("#memberStatusIcon").removeClass("errorStatus");
+    }
+    if ($("#memberStatusIcon").hasClass("severeStatus")) {
+      $("#memberStatusIcon").removeClass("severeStatus");
+    }
+    $('#memberStatus').html("Warning");
+    $("#memberStatusIcon").addClass("warningStatus");
+  } else { // Normal
+
+    if ($("#memberStatusIcon").hasClass("severeStatus"))
+      $("#memberStatusIcon").removeClass("severeStatus");
+    if ($("#memberStatusIcon").hasClass("errorStatus"))
+      $("#memberStatusIcon").removeClass("errorStatus");
+    if ($("#memberStatusIcon").hasClass("warningStatus"))
+      $("#memberStatusIcon").removeClass("warningStatus");
+    $('#memberStatus').html("Normal");
+    $("#memberStatusIcon").addClass("normalStatus");
+  }
+  
+};
+
+/**
+ * function used for getting the response of Member KeyStatistics widget and
+ * wired them with HTML representing tags.
+ */
+var getMemberKeyStatisticsBack = function(data) {
+  // sparkline graph options
+  var sparklineOptions = {
+    width : '300px',
+    height : '20px',
+    lineColor : '#00CCFF',
+    fillColor : false,
+    spotColor : false,
+    minSpotColor : false,
+    maxSpotColor : false
+  };
+
+  // cpu usage
+  var sumCPUUsage = 0;
+  var cpuUsageTrend = data.cpuUsageTrend;
+
+  for ( var i = 0; i < cpuUsageTrend.length; i++) {
+    sumCPUUsage += cpuUsageTrend[i];
+  }
+
+  var avgCPUUsage = 0;
+  if (cpuUsageTrend.length > 0) {
+    avgCPUUsage = sumCPUUsage / cpuUsageTrend.length;
+  }
+
+  $('#memberCPUUsageValue').html(avgCPUUsage.toFixed(2));
+  $('#memberCPUUsageSparkLine').sparkline(data.cpuUsageTrend, sparklineOptions);
+
+  // gets per sec
+  var readPerSecTrend = data.readPerSecTrend;
+  var sumReads = 0;
+  for ( var i = 0; i < readPerSecTrend.length; i++) {
+    sumReads += readPerSecTrend[i];
+  }
+
+  var avgReads = 0;
+  if (readPerSecTrend.length > 0) {
+    avgReads = sumReads / readPerSecTrend.length;
+  }
+
+  $('#memberGetsPerSecValue').html(applyNotApplicableCheck(avgReads.toFixed(2)));
+  $('#memberGetsPerSecSparkLine').sparkline(data.readPerSecTrend,
+      sparklineOptions);
+
+  // puts per sec
+  var writePerSecTrend = data.writePerSecTrend;
+  var sumWrites = 0;
+  for ( var i = 0; i < writePerSecTrend.length; i++) {
+    sumWrites += writePerSecTrend[i];
+  }
+
+  var avgWrites = 0;
+  if (writePerSecTrend.length > 0) {
+    avgWrites = sumWrites / writePerSecTrend.length;
+  }
+
+  $('#memberPutsPerSecValue').html(applyNotApplicableCheck(avgWrites.toFixed(2)));
+  $('#memberPutsPerSecSparkLineBar').sparkline(data.writePerSecTrend,
+      sparklineOptions);
+};
+
+/**
+ * function used for getting the response of Member GCPauses widget and wired
+ * them with HTML representing tags.
+ */
+var getMemberGCPausesBack = function(data) {
+
+  gcPausesTrend = data.gcPausesTrend;
+
+  var sparklineOptions = {
+    width : '230px',
+    height : '72px',
+    lineColor : '#FAB948',
+    fillColor : false,
+    spotRadius : 2.5,
+    labelPosition : 'left',
+    spotColor : false,
+    minSpotColor : false,
+    maxSpotColor : false,
+    lineWidth : 2
+  };
+
+  var sumOfPauses = 0;
+  for ( var i = 0; i < gcPausesTrend.length; i++) {
+    sumOfPauses += gcPausesTrend[i];
+  }
+
+  $('#memberGCPauses').sparkline(gcPausesTrend, sparklineOptions);
+  $('#memberGcPausesAvg').html(sumOfPauses);
+};
+
+/**
+ * function used for getting the response of Member HeapUsage widget and wired
+ * them with HTML representing tags.
+ */
+var getMemberHeapUsageBack = function(data) {
+  var heapUsageTrend = [];
+  heapUsageTrend = data.heapUsageTrend;
+  var sumMemory = 0;
+  for ( var i = 0; i < heapUsageTrend.length; i++) {
+    sumMemory += heapUsageTrend[i];
+  }
+
+  var avgMemory = 0;
+  if (heapUsageTrend.length > 0) {
+    avgMemory = sumMemory / heapUsageTrend.length;
+  }
+
+  var sparklineOptions = {
+    width : '230px',
+    height : '72px',
+    lineColor : '#FAB948',
+    fillColor : false,
+    spotRadius : 2.5,
+    labelPosition : 'left',
+    spotColor : false,
+    minSpotColor : false,
+    maxSpotColor : false,
+    lineWidth : 2
+  };
+
+  $('#memberHeapUsage').sparkline(heapUsageTrend, sparklineOptions);
+  // set current value
+  if (avgMemory > 1024) {
+    var heapUsageGB = (avgMemory / 1024).toFixed(2);
+    $('#memberHeapUsageAvg').html(
+        heapUsageGB + ' <span class="font-size23 paddingL5">GB</span>');
+
+  } else {
+    $('#memberHeapUsageAvg')
+        .html(
+            applyNotApplicableCheck(avgMemory.toFixed(2))
+                + ' <span class="font-size23 paddingL5">MB</span>');
+  }
+};
+
+/**
+ * function used for getting the response of Member TroughputWrites widget and
+ * wired them with HTML representing tags.
+ */
+var getMemberDiskThroughputBack = function(data) {
+  var throughputReadsTrend = data.throughputReadsTrend;
+  var throughputWritesTrend = data.throughputWritesTrend;
+
+  var readsSum = 0;
+  for ( var i = 0; i < throughputReadsTrend.length; i++) {
+    readsSum += throughputReadsTrend[i];
+  }
+
+  var avgThroughputReads = 0;
+  if (throughputReadsTrend.length > 0) {
+    avgThroughputReads = readsSum / throughputReadsTrend.length;
+  }
+
+  var writesSum = 0;
+  for ( var i = 0; i < throughputWritesTrend.length; i++) {
+    writesSum += throughputWritesTrend[i];
+  }
+
+  var avgThroughputWrites = 0;
+  if (throughputWritesTrend.length > 0) {
+    avgThroughputWrites = writesSum / throughputWritesTrend.length;
+  }
+
+  var sparklineOptions = {
+    width : '230px',
+    height : '72px',
+    lineColor : '#FAB948',
+    lineWidth : 2,
+    fillColor : false,
+    spotRadius : 3,
+    spotColor : false,
+    minSpotColor : false,
+    maxSpotColor : false,
+    highlightSpotColor : false,
+    composite : false
+  };
+
+  // Reads trends
+  // sparklineOptions.lineColor = '#87b025';
+  $('#diskReadsThroughputTrend').sparkline(throughputReadsTrend,
+      sparklineOptions);
+  $('#diskReadsThroughput').html(applyNotApplicableCheck(avgThroughputReads.toFixed(2)));
+
+  // Writes trends
+  sparklineOptions.lineColor = '#2e84bb';
+  $('#diskWritesThroughputTrend').sparkline(throughputWritesTrend,
+      sparklineOptions);
+  $('#diskWritesThroughput').html(applyNotApplicableCheck(avgThroughputWrites.toFixed(2)));
+
+};
+
+/**
+ * function used for getting the response of Member GatewayHub widget and wired
+ * them with HTML representing tags.
+ */
+var getMemberGatewayHubBack = function(data) {
+
+  var gatewayDetails = data;
+
+  if ((!data.isGatewayReceiver) && (!data.isGatewaySender)) {
+    // hide widget
+    $('#MemberGatewayHubWidget').hide();
+    return;
+  } else {
+    // show widget
+    $('#MemberGatewayHubWidget').show();
+  }
+
+  if (data.isGatewayReceiver) {
+    if (data.listeningPort != undefined && data.listeningPort != "") {
+      $('#receiverListeningPort').html(data.listeningPort);
+    } else {
+      $('#receiverListeningPort').html('-');
+    }
+
+    if (data.linkTroughput != undefined) {
+      $('#receiverLinkThroughput').html(data.linkTroughput.toFixed(1));
+    } else {
+      $('#receiverLinkThroughput').html('-');
+    }
+
+    if (data.avgBatchLatency != undefined ) {
+      $('#receiverAvgBatchLatency').html(
+          data.avgBatchLatency
+              + ' <span class="font-size13 paddingL5">ms</span>');
+    } else {
+      $('#receiverAvgBatchLatency').html('-');
+    }
+  } else {
+    $('#receiverListeningPort').html('-');
+    $('#receiverLinkThroughput').html('-');
+    $('#receiverAvgBatchLatency').html('-');
+  }
+
+  if (data.isGatewaySender) {
+
+    var endPoints = gatewayDetails.gatewaySenders;
+    var htmlListEndPoints = "";
+
+    endPoints = endPoints.sort(sortedArray('id'));
+
+    for ( var i = 0; i < endPoints.length; i++) {
+      htmlListEndPoints += '<div>'
+          + '<span class="pointDetailsPaddingMember pointC1" title="'
+          + endPoints[i].id + '">' + endPoints[i].id + '</span>'
+          + '<span class="pointDetailsPaddingMember pointC2" title="'
+          + endPoints[i].queueSize + '">' + endPoints[i].queueSize + '</span>';
+      if (endPoints[i].status == true) {
+        htmlListEndPoints += '<span class="pointDetailsPaddingMember pointC3" title="Running"><img src="images/status-up.png"></span>';
+      } else if (endPoints[i].status == false) {
+        htmlListEndPoints += '<span class="pointDetailsPaddingMember pointC3" title="Not Running"><img src="images/status-down.png"></span>';
+      }
+      htmlListEndPoints += '</div>';
+    }
+    $('#gatewaySendersList').html(htmlListEndPoints);
+    if(endPoints.length == 0){
+      $('#idGatewaySenderMoreDetailsLink').hide();
+    }
+
+    var regionList = gatewayDetails.regionsInvolved;
+    var htmlListRegions = "";
+    for ( var i = 0; i < regionList.length; i++) {
+      htmlListRegions += '<div> <span class="pointDetailsPaddingMember pointC1-2">'
+          + regionList[i].name
+          + '</span><span class="pointDetailsPaddingMember pointC3"></div>';
+    }
+    $('#regionInvolvedList').html(htmlListRegions);
+    
+    // initialize for the popup
+    gatewaysenderEndpoints = gatewayDetails.gatewaySenders;
+
+    $('.pointGridData').jScrollPane();
+    $('#idGatewaySenderMoreDetailsLink').show();
+  } else {
+    $('#idGatewaySenderMoreDetailsLink').hide();
+  }
+};
+
+/**
+ * function used for getting the response of Member Asynch Event Queues widget and wired
+ * them with HTML representing tags.
+ */
+var getMemberAsynchEventQueuesBack = function(data) {
+
+  if (!data.isAsyncEventQueuesPresent) {
+    // hide widget
+    $('#MemberAsynchEventQueuesWidget').hide();
+    return;
+  } else {
+    // show widget
+    $('#MemberAsynchEventQueuesWidget').show();
+  }
+
+  asyncEventQueueData = data.asyncEventQueues;
+  asyncEventQueueData = asyncEventQueueData.sort(sortedArray('id'));
+  if (asyncEventQueueData.length > 0){
+      var htmlListQueues = "";
+    
+      for ( var i = 0; i < asyncEventQueueData.length; i++) {
+        htmlListQueues += '<div>'
+            + '<span class="pointDetailsPaddingMember pointC1" title="'
+            + asyncEventQueueData[i].id + '">' + asyncEventQueueData[i].id + '</span>'
+            + '<span class="pointDetailsPaddingMember pointC2" title="'
+            + asyncEventQueueData[i].queueSize + '">' + asyncEventQueueData[i].queueSize + '</span>';
+
+        if (asyncEventQueueData[i].primary == true) {
+          htmlListQueues += '<span class="pointDetailsPaddingMember pointC3" title="Primary">Primary</span>';
+        } else if (asyncEventQueueData[i].primary == false) {
+          htmlListQueues += '<span class="pointDetailsPaddingMember pointC3" title="Not Primary">Secondary</span>';
+        }
+        
+        htmlListQueues += '</div>';
+      }
+      
+      $('#asynchList').html(htmlListQueues);
+      $('.pointGridData').jScrollPane();
+      $('#idAsynchMoreDetailsLink').show();
+  } else {
+    $('#idAsynchMoreDetailsLink').hide();
+  }
+};
+
+var getClearAllAlertsBack = function(data) {
+  numTotalSeverAlerts = 0;
+  numTotalErrorAlerts = 0;
+  numTotalWarningAlerts = 0;
+
+  severAlerts.splice(0, severAlerts.length);
+  errorAlerts.splice(0, errorAlerts.length);
+  warningAlerts.splice(0, warningAlerts.length);
+
+  document.getElementById("severeList").innerHTML = "";
+  document.getElementById("severeTotalCount").innerHTML = "";
+  document.getElementById("severeTotalCount").innerHTML = "0";
+
+  document.getElementById("errorList").innerHTML = "";
+  document.getElementById("errorTotalCount").innerHTML = "";
+  document.getElementById("errorTotalCount").innerHTML = "0";
+
+  document.getElementById("warningList").innerHTML = "";
+  document.getElementById("warningTotalCount").innerHTML = "";
+  document.getElementById("warningTotalCount").innerHTML = "0";
+
+  document.getElementById("allAlertList").innerHTML = "";
+  document.getElementById("allAlertCount").innerHTML = "";
+  document.getElementById("allAlertCount").innerHTML = "0";
+
+  // Hide Load More
+  $('#containerLoadMoreAlertsLink').hide();
+
+  // update dashboard stats
+  displayClusterStatus();
+
+  if (!(document.getElementById("memberStatusIcon") == null)) {
+    $('#memberStatus').html("Normal");
+    $("#memberStatusIcon").addClass("normalStatus");
+
+    if ($("#memberStatusIcon").hasClass("severeStatus"))
+      $("#memberStatusIcon").removeClass("severeStatus");
+    if ($("#memberStatusIcon").hasClass("errorStatus"))
+      $("#memberStatusIcon").removeClass("errorStatus");
+    if ($("#memberStatusIcon").hasClass("warningStatus")

<TRUNCATED>

Mime
View raw message