geode-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jensde...@apache.org
Subject [34/96] [abbrv] [partial] incubator-geode git commit: GEODE-12: rename pulse to gemfire-pulse and make build pass
Date Thu, 21 Jan 2016 22:55:15 GMT
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/446f451a/gemfire-pulse/src/main/webapp/MemberDetails.html
----------------------------------------------------------------------
diff --git a/gemfire-pulse/src/main/webapp/MemberDetails.html b/gemfire-pulse/src/main/webapp/MemberDetails.html
new file mode 100644
index 0000000..e0d8cc0
--- /dev/null
+++ b/gemfire-pulse/src/main/webapp/MemberDetails.html
@@ -0,0 +1,601 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta http-equiv="X-UA-Compatible" content="IE=edge" />
+<meta http-equiv="CACHE-CONTROL" content="NO-CACHE,NO-STORE" />
+<meta http-equiv="PRAGMA" content="NO-CACHE" />
+<meta http-equiv="EXPIRES" content="-1">
+<title>Pulse</title>
+<link href="css/common.css" rel="stylesheet" type="text/css" />
+<link href="css/style.css" rel="stylesheet" type="text/css" />
+
+<!-- fix IE Ui issues-->
+
+<!--[if IE 7]>
+  <link href="css/ie/ie7.css" type="text/css" rel="stylesheet"/>
+ <![endif]-->
+<!--[if IE 8]>
+  <link href="css/ie/ie8.css" type="text/css" rel="stylesheet"/>
+ <![endif]-->
+<!--[if IE 9]>
+  <link href="css/ie/ie9.css" type="text/css" rel="stylesheet"/>
+ <![endif]-->
+<!-- IE Fix for HTML5 Tags -->
+<!--[if lt IE 9]>
+<script src='scripts/lib/html5.js'></script>
+  <script type="text/javascript" src="scripts/lib/excanvas.js"></script>
+  <script type="text/javascript"> if (!window.console) console = {log: function() {}}; </script>
+  <![endif]-->
+  
+<!-- Rgraph and TreeMap-->
+<link type="text/css" href="css/base.css" rel="stylesheet" />
+<link type="text/css" href="css/Treemap.css" rel="stylesheet" />
+
+<!--Custom Scroll Bar-->
+<!-- styles needed by jScrollPane - include in your own sites -->
+<link type="text/css" href="css/jquery.jscrollpane.css" rel="stylesheet" media="all" />
+<!--Grid View-->
+<link rel="stylesheet" type="text/css" media="screen" href="css/grid/ui.jqgrid.css" />
+
+<!-- JavaScripts -->
+
+  <!-- Start: JQuery plugins JS -->
+  <script type="text/javascript" src='scripts/lib/jquery-1.7.2.js'></script>
+  <script type="text/javascript" src="scripts/lib/jit.js"></script>
+  <script type="text/javascript" src="scripts/lib/jquery.sparkline.js"></script>
+  <script type="text/javascript" src="scripts/lib/jquery.i18n.properties.js"></script>
+  <!-- End: JQuery plugins JS -->
+  
+  <!-- Start: Common JS -->
+  <script type="text/javascript" src='scripts/lib/common.js'></script>
+  <!-- End: Common JS -->
+
+	<!-- the mousewheel plugin -->
+	<script type="text/javascript" src="scripts/lib/jquery.mousewheel.js"></script>
+	<!-- the jScrollPane script -->
+	<script type="text/javascript" src="scripts/lib/jquery.jscrollpane.js"></script>
+	<!--Place Holder tag-->
+	<script type="text/javascript" src="scripts/lib/jquery.placeholder.js"></script>
+	<!--Grid View-->
+  <script src="scripts/lib/grid.locale-en.js" type="text/javascript"></script>
+  <script src="scripts/lib/jquery.jqGrid.src.js" type="text/javascript"></script>
+  <script src="scripts/lib/jquery.tablednd.js" type="text/javascript"></script>
+  
+  <!-- jQuery plugin to support automatically updating fuzzy timestamps 
+  (e.g. "4 minutes ago" or "about 1 day ago") -->
+  <script type="text/javascript" src="scripts/lib/jquery.timeago.js"></script>
+  
+  <!-- Start: Members Widgets JS -->
+  <script type="text/javascript" src="scripts/pulsescript/PulseCallbacks.js"></script>
+<script type="text/javascript" src="scripts/pulsescript/PulseFunctions.js"></script>
+<script type="text/javascript" src='scripts/pulsescript/common.js'></script>
+  <script type="text/javascript" src="scripts/pulsescript/MemberDetails.js"></script>
+</head>
+
+<body onload="return checkMedia();">
+<!-- Connection lost-->
+<div class="connectionLostMasterBlock hide" id="connectionStatusDiv" >
+<div class="connectionLostInnerBlock">
+    <label class="left">Connecting ...</label>
+    <div class="clear"></div>
+    <div id="connectionErrorMsgDiv"></div>
+</div>
+</div>
+	<div id="canvasWidth">
+	<!--Top Links-->
+  <div class="headerTopLinksMaster">
+    <div class="right">
+      <div class="left position-relative"><a href="#."class="left headerTopLinks aboutClicked-Off">About</a> 
+        <!-- About Dropdown-->
+        <div id="detailsAbout" class="aboutBlock display-none">
+          <div class="aboutDetailsBlock">
+            <div class="left widthfull-100per marginBottom30">
+              <div class="left"><img data-prod-custom="pulse-aboutimg-custom" src="images/about.png">
+                <div>
+                 <div class="aboutVersionBlock left" id="pulseVersion"></div>
+                 <div class="left termsBlock">&nbsp;<a id="pulseVersionDetailsLink" href="#dialog1" class="display-none" >Version Details</a></div>
+                </div>
+              </div>
+              <div data-prod-custom="pulse-about-custom" class="right aboutText">The Pulse tool monitors Pivotal&#0153; GemFire&#0169; system in real time. It provides health information, detailed operational and configuration data, system alerts, throughput performance and statistics for system members and connected clients.</div>
+            </div>
+            <div class="left widthfull-100per">
+                <div class="left copyright">
+                  Copyright &#0169; 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 <a href="http://www.pivotal.io/patents"
+                  target="_blank" class="termsBlockLink text-center">http://www.pivotal.io/patents</a>.
+                </div>
+               
+                <div class="left copyright">Pivotal is a registered
+                  trademark or trademark of Pivotal Software, Inc. in the United States and
+                  other jurisdictions. All other marks and names mentioned herein
+                  may be trademarks of their respective companies.</div>
+               
+                <div class="left termsBlock">
+                  <a href="oslicenses.txt" target="_blank">Open Source
+                    Licenses</a>
+                </div>
+               <!--  <div class="right termsBlock">
+                  Pulse <a href="#.">Terms of Service</a>
+                </div>-->
+              </div>
+            </div>
+        </div>
+      
+      </div>
+      <div class="left headerTopSeperator"></div>
+      <div class="left"><a data-prod-custom="pulse-help-custom" target="_blank" href="http://gemfire.docs.pivotal.io/latest/userguide/index.html#tools_modules/pulse/chapter_overview.html" class="left headerTopLinks" class="left headerTopLinks">Help</a></div>
+      <div class="left headerTopSeperator"></div>
+      <div class="left headerTopLinks welcomeLabelPRZero">Welcome</div>
+      <div class="left headerTopLinks textbold font-size12" id="userName"></div>
+      <div class="left headerTopSeperator"></div>
+      <div class="left"><a href="pulse/clusterLogout" class="left headerTopLinks">Sign Out</a></div>
+    </div>
+  </div>
+		<!-- Header block-->
+		<header>
+			<div class="left">
+				<a id="clusterNameLink" href="#." class="left textbold HeaderLink HeaderLinkActive" onclick="openClusterDetail();"></a>
+			</div>
+			<div class="textbold right logoBlock">
+				<a href="#.">[LOGO]</a>
+			</div>
+		</header>
+		<div class="clear"></div>
+		<div class="subHeader">
+			<ul>
+				<li><a href="#." class="active" onclick="openClusterDetail();">Cluster View</a></li>
+				<!-- Hide Data Browser tab for gemfirexd (Pulse-Cheetah Release) -->
+				<li><a href="#."  onclick="openDataBrowser();">Data Browser</a></li>
+				<!-- Hide Query Statistics tab for gemfire -->
+				<li id="subTabQueryStatistics"><a href="#." onclick="openQueryStatistics();">Query Statistics</a></li>
+			</ul>
+		<div class="clear"></div>
+		</div>
+		<!-- Middle block-->
+		<div class="left widthfull-100per">
+			<!--Top Right Block 1-->
+			<div class="right widthfull-100per marginTB10">
+				<!-- Tab-->
+				  <div id="notificationsPanel" class="right marginL10 TabTopPanel position-relative" 
+				  data-role="widget" data-widgetid="CluserAlertNotification" data-active ="yes" data-timeline="5000">
+				  </div>
+				<!-- <div class="right marginL10">
+					<a href="#." class="left linkButton" onclick="openDataView();">Data View</a>
+				</div> -->
+				<div class="left position-relative membersNameTopMargin" data-role="widget" data-widgetid="MembersList" data-active ="yes" data-timeline="5000">
+					<a href="#." class="memberClicked-Off" id="userLink">
+					 <span id="memberName" class="member_txt">Member Name</span>
+				  </a>
+					<!-- Setting Dropdown-->
+					<div id="setting" class="settingBlock" style="display: none">
+						<div class="memeberNameSearch position-relative">
+							<div class="searchBlockMaster">
+								<input type="button" class="searchButton">
+								<input type="text" class="searchBox" placeholder="Search"
+								id="filterMembersBox" >
+							</div>
+						</div>
+						<div id="clusterMembersList" class="jsonSuggestScrollFilter">
+						  <div id="clusterMembersContainer"> </div>
+						</div>  
+					</div>
+				</div>
+			</div>
+			<!--Middle Block 1-->
+			<div class="left leftBlockCanvas">
+				<!-- Status Block-->
+				<div class="statusmasterBlock left" data-role="widget" data-widgetid="MemberDetails" data-active ="yes" data-timeline="5000">
+					<!--Status Block Normal-->
+					<div class="statusFirstBlock left">
+						<div class="statusMasterBlock" id="memberStatusIcon">
+							<div id="memberStatus" class="textbold"> </div>
+							<div class="labeltext">Member Status</div>
+						</div>
+					</div>
+					<!-- Deails B1-->
+					<!-- <div class="borderRightDarkBlue detailsBlock">
+						<div id="memberDiskStorageUsed" class="color-d2d5d7 font-size23"> </div>
+						<span class="labeltext">Disk Storage Used</span>
+					</div> -->
+					<!-- Deails B2-->
+					<div class=" detailsBlock">
+						<div id="memberRegionsCount" class="color-d2d5d7 font-size23"> </div>
+						<span data-prod-custom="pulse-regionstableCaps-custom" class="labeltext">Regions</span>
+					</div>
+					<!-- Deails B3-->
+					<div class=" detailsBlock">
+						<div id="threads" class="color-d2d5d7 font-size23"></div>
+						<span class="labeltext">Threads</span>
+					</div>
+					<!-- Deails B4-->
+					<div class=" detailsBlock">
+						<div id="sockets" class="color-d2d5d7 font-size23"></div>
+						<span class="labeltext">Sockets</span>
+					</div>
+					<!-- Deails B5-->
+					<div class=" detailsBlock">
+						<div id="loadAverage" class="color-d2d5d7 font-size23"></div>
+						<span class="labeltext">Load Avg.</span>
+					</div>
+					<!-- Deails B6-->
+					<div class=" detailsBlock display-none">
+					  <div id="offHeapFreeSize" class="color-d2d5d7 font-size23"></div>
+					  <span class="labeltext">Off-Heap Free Size</span>
+					</div>
+					<!-- Deails B7-->
+					<div class=" detailsBlock display-none">
+					  <div id="offHeapUsedSize" class="color-d2d5d7 font-size23"></div>
+					  <span class="labeltext">Off-Heap Used Size</span>
+					</div>
+					<!-- Deails B8-->
+					<div class=" detailsBlock">
+					  <div id="numClients" class="color-d2d5d7 font-size23"></div>
+					  <span class="labeltext">Clients</span>
+					</div>
+				</div>
+				<div class="clear"></div>
+				<div>
+					<div class="middleTopologyBlock">
+						<!-- Large Block-->
+						<div class="canvasBlockLarge marginBR10-11 left">
+							<div class="left widthfull-100per canvasBlockInnerBlock">
+								<span data-prod-custom="pulse-memberRegionsTables-custom" class="left marginL10 canvasHeading">Member Regions</span>
+								<a id="btnLargeBlock_1" class="minusIcon borderLeftToggleBlock" onClick="toggleDiv('LargeBlock_1');"></a>
+								<a id="btngridIcon" class="gridIcon " onClick="tabGridNew('gview_memberRegionsList');"></a>
+								<a id="btnchartIcon" class="chartIconActive " onClick="tabChart();"></a>
+							</div>
+							<div class="left canvasInnerBlock" id="LargeBlock_1">
+							<div class="left widthfull-100per canvasBlockInnerBlock regionHeading">
+							   <!-- Search-->
+							   <div class="left marginBottom6 marginL10 marginTop6">
+							     <div class="searchBlockMaster">
+							       <input type="button" class="searchButton">
+							       <input type="text" placeholder="Search"
+							         onkeyup="applyFilterOnMemberRegions();" class="searchBox"
+							         id="filterMemberRegionsBox">
+							     </div>
+							   </div>
+							</div>
+								<!--Grid  Block-->
+								<div class="gridBlocksPanel left display-none canvasBlockLargeGridContent"
+									id="gridBlocks_Panel">
+									<div class="left widthfull-100per">
+										<table id="memberRegionsList">
+										</table>
+									</div>
+								</div>
+								<!--chart  Block-->
+								<div class="chartBlocksPanel left canvasBlockLargeContent membersTreeViewHeight" id="chartBlocks_Panel">
+									<div class="left widthfull-100per" >
+										<div class="marginB11 left widthfull-100per" >
+											<!-- <div class="left marginL10">
+												<span class="left colorCodeBlock managerCode"></span><span
+													class="left marginL10">Managers</span>
+											</div>
+											<div class="left marginL10">
+												<span class="left colorCodeBlock colorCode-ffae00"></span><span
+													class="left marginL10">Locators</span>
+											</div> -->
+										<!-- 	<div class="searchBlockMaster">
+												<input type="button" class="searchButton"> <input
+													type="text" class="searchBox" id="searchRegionName" 
+													placeholder="Search" onKeydown="Javascript: if (event.keyCode==13) searchName();">
+											</div>-->
+										</div>
+										<div class="treeViewGraph position-relative" data-role="widget" data-widgetid="MemberRegionSummary" data-active ="yes" data-timeline="5000">
+											<!-- tree view Control-->
+											<div id="center-containerTree">
+ 												<!-- <div id="TreeMap"></div> -->
+												<div id="memberRegionSummary" style="width:100%; height:410px; overflow:hidden;"></div>
+											</div>
+										</div>
+									</div>
+								</div>
+							</div>
+						</div>
+						<!-- Member Clients -->
+						<div class="canvasBlockLarge marginBR10-11 left" id="memberClientsWidget" data-role="widget" data-widgetid="MemberClients" data-active ="yes" data-timeline="5000">
+              <div class="left widthfull-100per canvasBlockInnerBlock">
+                <span class="left marginL10 canvasHeading">Member Clients</span>
+                <a id="btnLargeBlock_2" class="minusIcon borderLeftToggleBlock" onClick="toggleDiv('LargeBlock_2');"></a>
+              </div>
+              <div
+                class="left canvasInnerBlock canvasBlockLargeGridContent"
+                id="LargeBlock_2" >
+                <!--Grid  Block-->
+                <div class="gridBlocksPanel left"
+                  id="gridBlocks_Panel" >
+                  <div class="left widthfull-100per" >
+                    <table id="memberClientsList">
+                    </table>
+                  </div>
+                </div>
+              </div>
+            </div>
+						<!-- Block 4-->
+						<div class="canvasBlockKeyStats marginBR10-11 left" data-role="widget" data-widgetid="MemberKeyStatistics" data-active ="yes" data-timeline="5000">
+							<div class="left width495 canvasBlockInnerBlock" >
+								<span class="left marginL10 canvasHeading">Key Statistics</span><a
+									id="btnSmallBlock_4" class="minusIcon"
+									onClick="toggleDiv('SmallBlock_4');"></a>
+							</div>
+							<div class="left canvasInnerBlock canvasContentBlockKeyStats"
+								id="SmallBlock_4" >
+								<div class="graphBlocksContent left" >
+									<span class="marginB11 left widthfull-100per">Last 15
+										Minutes</span>
+									<!--Line 1-->
+									<div class="left widthfull-100per marginB10" >
+										<span id="memberCPUUsageSparkLine" class="left lineGraphKeyStats"> </span>
+										<span id="memberCPUUsageValue" class="color-d2d5d7 font-size23"> </span>
+										<span class="paddingL5">% CPU Usage</span>
+									</div>
+                  <!--Line 2-->
+                  <!-- <div class="left widthfull-100per ">
+                    <span id="memberMemoryUsageSparkLine" class="left lineGraphKeyStats"> </span>
+                    <span id="memberMemoryUsageValue" class="color-d2d5d7 font-size23"> </span>
+                    <span class="paddingL5">MB</span>
+                  </div> -->
+									<!--Line 3-->
+									<div class="left widthfull-100per marginB10" >
+										<span id="memberGetsPerSecSparkLine" class="left lineGraphKeyStats"> </span>
+										<span id="memberGetsPerSecValue" class="color-d2d5d7 font-size23">345.12</span>
+										<span data-prod-custom="pulse-readgetpersec-custom" class="paddingL5">Read/Sec</span>
+									</div>
+									<!--Line 4-->
+									<div class="left widthfull-100per marginB10" >
+										<span id="memberPutsPerSecSparkLineBar" class="left lineGraphKeyStats"> </span>
+										<span id="memberPutsPerSecValue" class="color-d2d5d7 font-size23">678.34</span>
+										<span data-prod-custom="pulse-writeputpersec-custom" class="paddingL5">Write/Sec</span>
+									</div>
+								</div>
+							</div>
+						</div>
+						<!-- Block 5-->
+						<!-- <div class="canvasBlock marginBR10-11 left">
+							<div class="left width242 canvasBlockInnerBlock">
+								<span class="left marginL10 canvasHeading">Memory Usage</span><a
+									id="btnSmallBlock_5" class="minusIcon"
+									onClick="toggleDiv('SmallBlock_5');"></a>
+							</div>
+							<div class="left canvasInnerBlock canvasContentBlock"
+								id="SmallBlock_5">
+								<div class="graphBlocksContent">
+									<div id="memberHeapUsageAvg" class="color-d2d5d7 font-size40"> </div>
+									<span>Last 15 Minutes</span>
+								</div>
+								<div class="left graphChart">
+									<span class="left lineGraph" id="memberHeapUsage"></span>
+								</div>
+							</div>
+						</div>-->
+						<!-- Block 6-->
+						<div class="canvasBlock marginBR10-11 left" data-role="widget" data-widgetid="MemberGCPauses" data-active ="yes" data-timeline="5000">
+							<div class="left width242 canvasBlockInnerBlock">
+								<span class="left marginL10 canvasHeading">No. of JVM
+									pauses</span><a id="btnSmallBlock_6" class="minusIcon"
+									onClick="toggleDiv('SmallBlock_6');"></a>
+							</div>
+							<div class="left canvasInnerBlock canvasContentBlock"
+								id="SmallBlock_6">
+								<div class="graphBlocksContent">
+									<div id="memberGcPausesAvg" class="color-d2d5d7 font-size40"> </div>
+									<span>Last 15 Minutes</span>
+								</div>
+								<div class="left graphChart">
+									<span class="left lineGraph" id="memberGCPauses"></span>
+								</div>
+							</div>
+						</div>
+					</div>
+					<!-- Right Block-->
+					<div class="rightBlockCanvas">
+						<!-- Block 1-->
+						<div id="MemberGatewayHubWidget" class="canvasBlock marginB10 left " 
+						  data-role="widget" data-widgetid="MemberGatewayHub" data-active ="yes" data-timeline="5000">
+							<div class="left width242 canvasBlockInnerBlock">
+								<span class="left marginL10 canvasHeading">Gateway Receiver</span><a
+									id="btnSmallBlock_1" class="minusIcon"
+									onClick="toggleDiv('SmallBlock_1');"></a>
+							</div>
+							<div class="left canvasInnerBlock canvasContentBlock"
+								id="SmallBlock_1">
+								<div class="graphBlocksContent">
+									<div class="detailsBlock-member firstPaddingLeftZero">
+										<div id="receiverListeningPort" class="color-d2d5d7 font-size20"> </div>
+										<span class="labeltext">Listening Port</span>
+									</div>
+									<div class="detailsBlock-member">
+										<div id="receiverLinkThroughput" class="color-d2d5d7 font-size20"> </div>
+										<span class="labeltext">Link Throughput</span>
+									</div>
+									<div class="detailsBlock-member lastPaddingLeftZero">
+										<div id="receiverAvgBatchLatency" class="color-d2d5d7 font-size20"> </div>
+										<span class="labeltext">AVG Batch Latency</span>
+									</div>
+								</div>
+								<!-- End Point Master-->
+								<div class="left endPointMasterBlock">
+									<!--End point-->
+									<div class="pointHeading">
+										<label class="pointTextHeading">Gateway Senders</label>
+									</div>
+									<div class="pointGridHeading">
+										<span class="pointHeadingPadding pointC1">ID</span><span
+											class="pointHeadingPadding pointC2">Queue Size</span><span
+											class="pointHeadingPadding pointC3">Status</span>
+									</div>
+									<div class="pointGridData">
+									  <div id="gatewaySendersList" > </div>
+									</div>
+								</div>
+								<div class="clearButton">
+									<a id="idGatewaySenderMoreDetailsLink" class="right linkButton" onclick="showGatewaySenderPopup(this)" href="#">More Details</a>
+								</div>
+								<!-- Regions Involved-->
+								<div class="left endPointMasterBlock">
+									<!--Regions Involved-->
+									<img src="images/spacer.png" height="1" border="0"
+										class="pointHeading">
+									<div class="pointGridHeading">
+										<span data-prod-custom="pulse-regionstableInvolved-custom" class="pointHeadingPadding textUpper">Regions
+											Involved</span>
+									</div>
+									<div class="pointGridData" >
+									  <div id="regionInvolvedList"></div>
+									</div>
+								</div>
+							</div>
+						</div>
+						<div class="clear"></div>
+            <!-- Block 2-->
+            <div id="MemberAsynchEventQueuesWidget" class="canvasBlock marginB10 left " 
+              data-role="widget" data-widgetid="MemberAsynchEventQueues" data-active ="yes" data-timeline="5000">
+              <div class="left width242 canvasBlockInnerBlock">
+                <span class="left marginL10 canvasHeading">Asynch Event Queues</span>
+                <a id="btnSmallBlock_2" class="minusIcon" onClick="toggleDiv('SmallBlock_2');"></a>
+              </div>
+              <div class="left canvasInnerBlock canvasContentBlock" id="SmallBlock_2">
+                <div class="left endPointMasterBlock">
+                <!-- asynch event queue -->
+                  <div class="pointGridHeading">
+                    <span class="pointHeadingPadding pointC1">ID</span>
+                    <span class="pointHeadingPadding pointC2">Queue Size</span>
+                    <span class="pointHeadingPadding pointC3">Type</span>
+                  </div>
+                  <div class="pointGridData">
+                    <div id="asynchList"> </div>
+                  </div>
+                </div>
+                <div class="clearButton">
+                  <a id="idAsynchMoreDetailsLink" class="right linkButton" onclick="showAsyncEventQueuePopup(this)" href="#">More Details</a>
+                </div>
+              </div>
+            </div>
+            <div class="clear"></div>
+						<!-- Block 5-->
+						<div class="canvasBlock marginBR10-11 left" data-role="widget" data-widgetid="MemberHeapUsage" data-active ="yes" data-timeline="5000">
+							<div class="left width242 canvasBlockInnerBlock" >
+								<span class="left marginL10 canvasHeading">Memory Usage</span><a
+									id="btnSmallBlock_5" class="minusIcon"
+									onClick="toggleDiv('SmallBlock_5');"></a>
+							</div>
+							<div class="left canvasInnerBlock canvasContentBlock"
+								id="SmallBlock_5" >
+								<div class="graphBlocksContent" >
+									<div id="memberHeapUsageAvg" class="color-d2d5d7 font-size40">
+									</div>
+									<span>Last 15 Minutes</span>
+								</div>
+								<div class="left graphChart" >
+									<span class="left lineGraph" id="memberHeapUsage"></span>
+								</div>
+							</div>
+						</div>
+						<!-- Block 3-->
+						<div class="canvasBlock marginB10 left" data-role="widget" data-widgetid="MemberDiskThroughput" data-active ="yes" data-timeline="5000">
+							<div class="left width242 canvasBlockInnerBlock">
+								<span class="left marginL10 canvasHeading">Disk Throughput</span>
+								<a id="btnSmallBlock_3" class="minusIcon"
+									onClick="toggleDiv('SmallBlock_3');"></a>
+							</div>
+							<div class="left canvasInnerBlock canvasContentBlock"
+								id="SmallBlock_3">
+								<div class="graphBlocksContent marginB11 left">
+									<div class="left">
+										<span class="left">Last 15 Minutes</span>
+									</div>
+									<div class="right marginL10">
+										<span data-prod-custom="pulse-reads-custom" class="left">Reads</span> <span
+											class="left marginL10 colorCodeBlock diskReadsCode"></span>
+									</div>
+									<div class="right marginL10">
+										<span data-prod-custom="pulse-writes-custom" class="left">Writes</span> <span
+											class="left marginL10 colorCodeBlock diskWritesCode"></span>
+									</div>
+								</div>
+								<div class="graphBlocksContent width91Per left">
+									<div class="color-d2d5d7 font-size20">
+										<span id="diskReadsThroughput"></span>
+									</div>
+									<div class="width100Per left">
+										<span class="left">Reads</span> <span class="right"
+											id="currentDiskReadsThroughput"></span>
+									</div>
+								</div>
+								<div class="left graphChart marginB11">
+									<span class="left lineGraph" id="diskReadsThroughputTrend"></span>
+								</div>
+								<div class="graphBlocksContent width91Per left">
+									<div class="color-d2d5d7 font-size20">
+										<span id="diskWritesThroughput"></span>
+									</div>
+									<div class="width100Per left">
+										<span class="left">Writes</span> <span class="right"
+											id="currentDiskWritesThroughput"></span>
+									</div>
+								</div>
+								<div class="left graphChart">
+									<span class="left lineGraph" id="diskWritesThroughputTrend"></span>
+								</div>
+							</div>
+						</div>
+					</div>
+				</div>
+			</div>
+		</div>
+	</div>
+	<!-- Placeholder-->
+	<script>
+    $('input[placeholder], textarea[placeholder]').placeholder();
+  </script>
+<!--Popups Block-->
+<div id="boxes"> 
+  <!-- Version Details popup-->
+ <div id="dialog1" class="window width345" data-role="widget" data-widgetid="PulseVersionDetails" data-active ="yes" data-timeline="5000">
+    <div class="popup_heading"><span>Version Details</span><a href="#" class="closePopup">&nbsp;</a></div>
+    <div class="popup_contentBlock">
+      <div class="popup-innerblock">
+        <ul class="widthfull-100per left">
+          <li class="left widthfull-100per">
+            <label class="width-40 display-inline-block">Pulse Version:</label>
+            <label class="width-58 display-inline-block" id="pulseVer"></label>
+          </li>
+          <li class="left widthfull-100per">
+            <label class="width-40 display-inline-block">Build Id:</label>
+            <label class="width-58 display-inline-block" id="buildId"></label>
+          </li>
+          <li class="left widthfull-100per">
+            <label class="width-40 display-inline-block">Build Date:</label>
+            <label class="width-58 display-inline-block" id="buildDate"></label>
+          </li>
+          <li class="left widthfull-100per">
+            <label class="width-40 display-inline-block">Source Date:</label>
+            <label class="width-58 display-inline-block" id="sourceDate"></label>
+          </li>
+          <li class="left widthfull-100per">
+            <label class="width-40 display-inline-block">Source Revision:</label>
+            <label class="width-58 display-inline-block" id="sourceRevision"></label>
+          </li>
+          <li class="left widthfull-100per">
+            <label class="width-40 display-inline-block">Source Repository:</label>
+            <label class="width-58 display-inline-block" id="sourceRepository"></label>
+          </li>
+        </ul>
+        <div class="clear"></div>
+      </div>
+    </div>
+  </div>
+  <!-- Mask to cover the whole screen -->
+  <div id="mask"></div>
+</div>
+<div id="tooltip" class="tooltip"></div>
+<!-- Placeholder--> 
+<script>
+$('input[placeholder], textarea[placeholder]').placeholder();
+</script>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/446f451a/gemfire-pulse/src/main/webapp/QueryStatistics.html
----------------------------------------------------------------------
diff --git a/gemfire-pulse/src/main/webapp/QueryStatistics.html b/gemfire-pulse/src/main/webapp/QueryStatistics.html
new file mode 100644
index 0000000..8549577
--- /dev/null
+++ b/gemfire-pulse/src/main/webapp/QueryStatistics.html
@@ -0,0 +1,306 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta http-equiv="X-UA-Compatible" content="IE=edge" />
+<meta http-equiv="CACHE-CONTROL" content="NO-CACHE,NO-STORE" />
+<meta http-equiv="PRAGMA" content="NO-CACHE" />
+<meta http-equiv="EXPIRES" content="-1">
+<title>Pulse</title>
+<link href="css/common.css" rel="stylesheet" type="text/css" />
+<link href="css/style.css" rel="stylesheet" type="text/css" />
+
+<!-- fix IE Ui issues-->
+<!--[if IE 7]>
+                <link href="css/ie/ie7.css" type="text/css" rel="stylesheet"/>
+         <![endif]-->
+<!--[if IE 8]>
+                <link href="css/ie/ie8.css" type="text/css" rel="stylesheet"/>
+         <![endif]-->
+<!--[if IE 9]>
+                <link href="css/ie/ie9.css" type="text/css" rel="stylesheet"/>
+         <![endif]-->
+<!-- IE Fix for HTML5 Tags -->
+<!--[if lt IE 9]>
+        <script src='scripts/lib/html5.js'></script>
+        <script type="text/javascript" src="scripts/lib/excanvas.js"></script>
+        <script type="text/javascript"> if (!window.console) console = {log: function() {}}; </script>
+                <![endif]-->
+
+<script type="text/javascript" src='scripts/lib/jquery-1.7.2.js'></script>
+<script type="text/javascript" src='scripts/lib/common.js'></script>
+<script type="text/javascript"
+	src="scripts/lib/jquery.i18n.properties.js"></script>
+<!--Custom Scroll Bar-->
+<!-- styles needed by jScrollPane - include in your own sites -->
+<link type="text/css" href="css/jquery.jscrollpane.css" rel="stylesheet"
+	media="all" />
+<!-- the mousewheel plugin -->
+<script type="text/javascript" src="scripts/lib/jquery.mousewheel.js"></script>
+<!-- the jScrollPane script -->
+<script type="text/javascript" src="scripts/lib/jquery.jscrollpane.js"></script>
+<!--Place Holder tag-->
+	<script type="text/javascript" src="scripts/lib/jquery.placeholder.js"></script>
+<!-- Rgraph and TreeMap-->
+<link type="text/css" href="css/base.css" rel="stylesheet" />
+<link type="text/css" href="css/Treemap.css" rel="stylesheet" />
+<script type="text/javascript" src="scripts/lib/jit.js"></script>
+<script type="text/javascript" src="scripts/lib/jquery.sparkline.js"></script>
+
+<!-- Grid view CSS and js-->
+<link rel="stylesheet" type="text/css" media="screen"
+	href="css/grid/ui.jqgrid.css" />
+<script src="scripts/lib/grid.locale-en.js" type="text/javascript"></script>
+<script src="scripts/lib/jquery.jqGrid.src.js" type="text/javascript"></script>
+<script src="scripts/lib/jquery.tablednd.js" type="text/javascript"></script>
+<!-- -->
+<!-- jQuery plugin to support automatically updating fuzzy timestamps 
+(e.g. "4 minutes ago" or "about 1 day ago") -->
+<script type="text/javascript" src="scripts/lib/jquery.timeago.js"></script>
+
+<!-- start:Cluster widget based js files -->
+<script type="text/javascript"
+	src="scripts/pulsescript/PulseCallbacks.js"></script>
+<script type="text/javascript"
+	src="scripts/pulsescript/PulseFunctions.js"></script>
+<script type="text/javascript" src='scripts/pulsescript/common.js'></script>
+<script type="text/javascript"
+	src='scripts/pulsescript/queryStatistics.js'></script>
+
+<!-- multiselect -->
+<link rel="stylesheet" type="text/css"
+	href="css/multiselect/jquery.multiselect.css" />
+<link rel="stylesheet" type="text/css" href="css/multiselect/style.css" />
+<link rel="stylesheet" type="text/css"
+	href="css/multiselect/prettify.css" />
+<script type="text/javascript"
+	src="scripts/multiselect/jquery-ui.js"></script>
+<script type="text/javascript"
+	src="scripts/multiselect/jquery.multiselect.js"></script>
+<script type="text/javascript" src="scripts/multiselect/prettify.js"></script>
+<script type="text/javascript" src="scripts/lib/checkBox-RadioButton.js"></script>
+<!-- multiselect -->
+</head>
+
+<body>
+	<!-- Connection lost-->
+	<div class="connectionLostMasterBlock hide" id="connectionStatusDiv">
+		<div class="connectionLostInnerBlock">
+			<label class="left">Connecting ...</label>
+			<div class="clear"></div>
+			<div id="connectionErrorMsgDiv" class="right"></div>
+		</div>
+	</div>
+
+	<div id="canvasWidth">
+		<!--Top Links-->
+		<div class="headerTopLinksMaster">
+			<div class="right">
+				<div class="left position-relative">
+					<a href="#." class="left headerTopLinks aboutClicked-Off">About</a>
+					<!-- About Dropdown-->
+					<div id="detailsAbout" class="aboutBlock display-none">
+						<div class="aboutDetailsBlock">
+							<div class="left widthfull-100per marginBottom30">
+								<div class="left">
+									<img data-prod-custom="pulse-aboutimg-custom"
+										src="images/about.png">
+									<div>
+										<div class="aboutVersionBlock left" id="pulseVersion"></div>
+										<div class="left termsBlock">
+											&nbsp;<a id="pulseVersionDetailsLink" href="#dialog1"
+												class="display-none">Version Details</a>
+										</div>
+									</div>
+								</div>
+								<div data-prod-custom="pulse-about-custom"
+									class="right aboutText">The Pulse tool monitors
+									Pivotal&#0153; GemFire&#0169; system in real time. It provides
+									health information, detailed operational and configuration
+									data, system alerts, throughput performance and statistics for
+									system members and connected clients.</div>
+							</div>
+							<div class="left widthfull-100per">
+								<div class="left copyright">
+									Copyright © 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 <a href="http://www.pivotal.io/patents"
+									target="_blank" class="termsBlockLink text-center">http://www.pivotal.io/patents</a>.
+								</div>
+
+								<div class="left copyright">Pivotal is a registered
+									trademark or trademark of Pivotal Software, Inc. in the United States and
+									other jurisdictions. All other marks and names mentioned herein
+									may be trademarks of their respective companies.</div>
+
+								<div class="left termsBlock">
+									<a href="oslicenses.txt" target="_blank">Open Source
+										Licenses</a>
+								</div>
+								<!--  <div class="right termsBlock">
+	                  Pulse <a href="#.">Terms of Service</a>
+	                </div>-->
+							</div>
+						</div>
+					</div>
+				</div>
+				<div class="left headerTopSeperator"></div>
+				<div class="left">
+					<a data-prod-custom="pulse-help-custom" target="_blank"
+						href="http://gemfire.docs.pivotal.io/latest/userguide/index.html#tools_modules/pulse/chapter_overview.html"
+						class="left headerTopLinks">Help</a>
+				</div>
+				<div class="left headerTopSeperator"></div>
+				<div class="left headerTopLinks welcomeLabelPRZero">Welcome</div>
+				<div class="left headerTopLinks textbold font-size12" id="userName"></div>
+				<div class="left headerTopSeperator"></div>
+				<div class="left">
+					<a href="pulse/clusterLogout" class="left headerTopLinks">Sign
+						Out</a>
+				</div>
+			</div>
+		</div>
+		<!-- Header block-->
+		<header>
+			<div class="left">
+				<a href="#." onclick="openClusterDetail();"
+					class="left textbold HeaderLink HeaderLinkActive" id="clusterName"></a>
+			</div>
+			<div class="textbold right logoBlock">
+				<a href="#.">[LOGO]</a>
+			</div>
+		</header>
+		<div class="clear"></div>
+		<div class="subHeader">
+			<ul>
+				<li><a href="#." onclick="openClusterDetail();">Cluster
+						View</a></li>
+				<!-- Hide Data Browser tab for gemfirexd (Pulse-Cheetah Release) -->
+				<!-- <li><a href="#."  onclick="openDataBrowser();">Data Browser</a></li> -->
+				<li><a href="#." onclick="openQueryStatistics();" class="active">Query Statistics</a></li>
+			</ul>
+			<div class="clear"></div>
+		</div>
+		<!-- Middle block-->
+		<div class="left widthfull-100per">
+			<!--Top Right Block 1-->
+			<div class="right widthfull-100per marginTB10">
+
+				<!-- Tab-->
+				<div id="notificationsPanel" class="right marginL10 TabTopPanel position-relative"
+					data-role="widget" data-widgetid="CluserAlertNotification" data-active="yes" data-timeline="5000">
+				</div>
+				<div class="left leftBlockCanvas">
+					<!-- to be replaced with grid -->
+					<!-- canvasBlockLarge -->
+					<div class="statusmasterBlock">
+						<div
+							class="left widthfull-100per canvasBlockInnerBlock backgroundQueryStats">
+							<!-- Search-->
+							<div class="left widthfull-100per canvasBlockInnerBlock">
+								<span class="left marginL10 canvasHeading">Top 50 Queries</span>
+							</div>
+							<div class="clear"></div>
+							<div class="left width96Per marginBottom6 marginL10 marginTop6">
+								<div class="searchBlockMasterQS">
+									<input type="button" class="searchButtonQS"> <input
+										type="text" placeholder="Search Query Definition"
+										onkeyup="applyFilterOnQueryStatistics();"
+										class="searchBoxQueryStatistics" id="filterQueryStatisticsBox">
+								</div>
+								<div class="right">
+									<select id="columnsSelect" name="columnsSelect"
+										multiple="multiple" size="20"></select>
+								</div>
+							</div>
+							<div data-role="widget" data-widgetid="QueryStatistics"
+								data-active="yes" data-timeline="30000">
+								<div
+									class="left widthfull-100per canvasInnerBlock backgroundQueryStats">
+									<!--Grid  Block-->
+									<div class="gridBlocksPanel left" id="gridBlocks_Panel">
+										<div class="left widthfull-100per">
+											<table id="queryStatisticsList"></table>
+										</div>
+									</div>
+								</div>
+							</div>
+						</div>
+					</div>
+				</div>
+			</div>
+			<!--Middle Block 1-->
+		</div>
+	</div>
+	<!--Popups Block-->
+	<div id="boxes">
+		<!-- Version Details popup-->
+		<!-- Version Details popup-->
+		<div id="dialog1" class="window width345" data-role="widget"
+			data-widgetid="PulseVersionDetails" data-active="yes"
+			data-timeline="5000">
+			<div class="popup_heading">
+				<span>Version Details</span><a href="#" class="closePopup">&nbsp;</a>
+			</div>
+			<div class="popup_contentBlock">
+				<div class="popup-innerblock">
+					<ul class="widthfull-100per left">
+						<li class="left widthfull-100per"><label
+							class="width-40 display-inline-block">Pulse Version:</label> <label
+							class="width-58 display-inline-block" id="pulseVer"></label></li>
+						<li class="left widthfull-100per"><label
+							class="width-40 display-inline-block">Build Id:</label> <label
+							class="width-58 display-inline-block" id="buildId"></label></li>
+						<li class="left widthfull-100per"><label
+							class="width-40 display-inline-block">Build Date:</label> <label
+							class="width-58 display-inline-block" id="buildDate"></label></li>
+						<li class="left widthfull-100per"><label
+							class="width-40 display-inline-block">Source Date:</label> <label
+							class="width-58 display-inline-block" id="sourceDate"></label></li>
+						<li class="left widthfull-100per"><label
+							class="width-40 display-inline-block">Source Revision:</label>
+							<label class="width-58 display-inline-block" id="sourceRevision"></label>
+						</li>
+						<li class="left widthfull-100per"><label
+							class="width-40 display-inline-block">Source
+								Repository:</label> <label class="width-58 display-inline-block"
+							id="sourceRepository"></label></li>
+					</ul>
+					<div class="clear"></div>
+				</div>
+			</div>
+		</div>
+		<!-- Grid Details popup-->
+		<div id="gridPopup" class="window width700">
+			<div class="popup_heading">
+				<span>Object Explorer</span><a href="#" class="closePopup">&nbsp;</a>
+			</div>
+			<div class="popup_contentBlock">
+				<div class="popup-innerblock">
+					<table id="treegrid">
+						<tr>
+							<td />
+						</tr>
+					</table>
+				</div>
+				<div class="popup-innerblock">
+					<table id="popUpExplorer">
+						<tr>
+							<td />
+						</tr>
+					</table>
+				</div>
+			</div>
+		</div>
+		<!-- Mask to cover the whole screen -->
+		<div id="mask"></div>
+	</div>
+	<div id="tooltip" class="tooltip"></div>
+	<!-- Placeholder-->
+	<script>
+    $('input[placeholder], textarea[placeholder]').placeholder();
+  </script>
+
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/446f451a/gemfire-pulse/src/main/webapp/WEB-INF/mvc-dispatcher-servlet.xml
----------------------------------------------------------------------
diff --git a/gemfire-pulse/src/main/webapp/WEB-INF/mvc-dispatcher-servlet.xml b/gemfire-pulse/src/main/webapp/WEB-INF/mvc-dispatcher-servlet.xml
new file mode 100644
index 0000000..5778970
--- /dev/null
+++ b/gemfire-pulse/src/main/webapp/WEB-INF/mvc-dispatcher-servlet.xml
@@ -0,0 +1,18 @@
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:context="http://www.springframework.org/schema/context"
+       xmlns:mvc="http://www.springframework.org/schema/mvc"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xsi:schemaLocation="
+        http://www.springframework.org/schema/beans     
+        http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
+        http://www.springframework.org/schema/context 
+        http://www.springframework.org/schema/context/spring-context-3.2.xsd
+        http://www.springframework.org/schema/mvc
+        http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd">
+ 
+    
+    <context:component-scan base-package="com.vmware.gemfire.tools.pulse.internal" />
+
+    <mvc:annotation-driven />
+     
+</beans>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/446f451a/gemfire-pulse/src/main/webapp/WEB-INF/spring-security.xml
----------------------------------------------------------------------
diff --git a/gemfire-pulse/src/main/webapp/WEB-INF/spring-security.xml b/gemfire-pulse/src/main/webapp/WEB-INF/spring-security.xml
new file mode 100644
index 0000000..4264566
--- /dev/null
+++ b/gemfire-pulse/src/main/webapp/WEB-INF/spring-security.xml
@@ -0,0 +1,66 @@
+<beans:beans xmlns="http://www.springframework.org/schema/security"
+	xmlns:beans="http://www.springframework.org/schema/beans"
+	xmlns:context="http://www.springframework.org/schema/context"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://www.springframework.org/schema/beans
+	http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
+	http://www.springframework.org/schema/security
+	http://www.springframework.org/schema/security/spring-security-3.1.xsd
+	http://www.springframework.org/schema/context
+	http://www.springframework.org/schema/context/spring-context-3.2.xsd">
+
+	<http auto-config="true">
+
+		<!-- Can be invoked w/o auth -->
+		<intercept-url pattern="/Login.html" access="IS_AUTHENTICATED_ANONYMOUSLY" />
+		<intercept-url pattern="/pulse/pulseVersion" access="IS_AUTHENTICATED_ANONYMOUSLY" />
+		<intercept-url pattern="/pulse/authenticateUser" access="IS_AUTHENTICATED_ANONYMOUSLY" />
+		<intercept-url pattern="/pulse/pulseProductSupport" access="IS_AUTHENTICATED_ANONYMOUSLY" />
+		<!-- Can be invoked w/o auth -->
+
+		<!-- Restricted urls -->
+		<!-- Hide Data Browser tab for Pulse-Cheetah Release -->
+		<!-- <intercept-url pattern="/DataBrowser.html" access="ROLE_RESTRICTED" /> -->
+		<!-- Restricted urls -->
+
+		<!-- Can be invoked only with auth -->
+		<intercept-url pattern="/*.html" access="ROLE_USER,ROLE_GEMFIRETESTING,ROLE_PULSEUSER" />
+		<intercept-url pattern="/pulse/*" access="ROLE_USER,ROLE_GEMFIRETESTING,ROLE_PULSEUSER" />
+		<!-- Can be invoked only with auth -->
+
+		<form-login login-page="/Login.html"
+			authentication-failure-handler-ref="authenticationFailureHandler"
+			default-target-url="/clusterDetail.html" />
+
+		<logout logout-url="/pulse/clusterLogout" logout-success-url="/Login.html" />
+	</http>
+
+	<beans:bean id="authenticationFailureHandler"
+		class="org.springframework.security.web.authentication.ExceptionMappingAuthenticationFailureHandler">
+		<beans:property name="exceptionMappings">
+			<beans:props>
+				<beans:prop key="org.springframework.security.authentication.BadCredentialsException">/Login.html?error=BAD_CREDS</beans:prop>
+				<beans:prop key="org.springframework.security.authentication.CredentialsExpiredException">/Login.html?error=CRED_EXP</beans:prop>
+				<beans:prop key="org.springframework.security.authentication.LockedException">/Login.html?error=ACC_LOCKED</beans:prop>
+				<beans:prop key="org.springframework.security.authentication.DisabledException">/Login.html?error=ACC_DISABLED</beans:prop>
+			</beans:props>
+		</beans:property>
+	</beans:bean>
+
+	<!-- Default user authentication based on in-memory user service -->
+	<beans:beans profile="pulse.authentication.default">
+		<authentication-manager>
+			<authentication-provider>
+				<user-service>
+					<user name="admin" password="admin" authorities="ROLE_USER" />
+				</user-service>
+			</authentication-provider>
+		</authentication-manager>
+	</beans:beans>
+
+	<!-- Custom user authentication specified externally -->
+	<beans:beans profile="pulse.authentication.custom">
+		<beans:import resource="classpath:pulse-authentication-custom.xml" />
+	</beans:beans>
+
+</beans:beans>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/446f451a/gemfire-pulse/src/main/webapp/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/gemfire-pulse/src/main/webapp/WEB-INF/web.xml b/gemfire-pulse/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..ed6cfa5
--- /dev/null
+++ b/gemfire-pulse/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
+  <display-name>Pulse</display-name>
+  <welcome-file-list>
+    <welcome-file>index.html</welcome-file>
+  </welcome-file-list>
+  <mime-mapping>
+        <extension>properties</extension>
+        <mime-type>text/x-java-properties</mime-type>
+  </mime-mapping>
+  <servlet>
+    <servlet-name>mvc-dispatcher</servlet-name>
+    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
+    <load-on-startup>1</load-on-startup>
+  </servlet>
+  <servlet-mapping>
+    <servlet-name>mvc-dispatcher</servlet-name>
+    <url-pattern>/pulse/*</url-pattern>
+  </servlet-mapping>
+  <listener>
+    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
+  </listener>
+  <context-param>
+    <param-name>contextConfigLocation</param-name>
+    <param-value>
+			/WEB-INF/mvc-dispatcher-servlet.xml,
+			/WEB-INF/spring-security.xml
+		</param-value>
+  </context-param>
+  <context-param>
+    <param-name>spring.profiles.default</param-name>
+    <param-value>pulse.authentication.default</param-value>
+  </context-param>
+  <filter>
+    <filter-name>springSecurityFilterChain</filter-name>
+    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
+  </filter>
+  <filter-mapping>
+    <filter-name>springSecurityFilterChain</filter-name>
+    <url-pattern>/*</url-pattern>
+  </filter-mapping>
+  <listener>
+    <listener-class>com.vmware.gemfire.tools.pulse.internal.PulseAppListener</listener-class>
+  </listener>
+</web-app>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/446f451a/gemfire-pulse/src/main/webapp/clusterDetail.html
----------------------------------------------------------------------
diff --git a/gemfire-pulse/src/main/webapp/clusterDetail.html b/gemfire-pulse/src/main/webapp/clusterDetail.html
new file mode 100644
index 0000000..4190843
--- /dev/null
+++ b/gemfire-pulse/src/main/webapp/clusterDetail.html
@@ -0,0 +1,659 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta http-equiv="X-UA-Compatible" content="IE=edge" />
+<meta http-equiv="CACHE-CONTROL" content="NO-CACHE,NO-STORE" />
+<meta http-equiv="PRAGMA" content="NO-CACHE" />
+<meta http-equiv="EXPIRES" content="-1">
+<title>Pulse</title>
+<link href="css/common.css" rel="stylesheet" type="text/css" />
+<link href="css/style.css" rel="stylesheet" type="text/css" />
+
+<!-- fix IE Ui issues-->
+<!--[if IE 7]>
+ 	<link href="css/ie/ie7.css" type="text/css" rel="stylesheet"/>
+ <![endif]-->
+<!--[if IE 8]>
+ 	<link href="css/ie/ie8.css" type="text/css" rel="stylesheet"/>
+ <![endif]-->
+<!--[if IE 9]>
+ 	<link href="css/ie/ie9.css" type="text/css" rel="stylesheet"/>
+ <![endif]-->
+<!-- IE Fix for HTML5 Tags -->
+<!--[if lt IE 9]>
+<script src='scripts/lib/html5.js'></script>
+<script type="text/javascript" src="scripts/lib/excanvas.js"></script>
+<script type="text/javascript"> if (!window.console) console = {log: function() {}}; </script>
+	<![endif]-->
+
+<script type="text/javascript" src='scripts/lib/jquery-1.7.2.js'></script>
+<script type="text/javascript" src='scripts/lib/common.js'></script>
+<script type="text/javascript" src="scripts/lib/jquery.i18n.properties.js"></script>
+<!--Custom Scroll Bar-->
+<!-- styles needed by jScrollPane - include in your own sites -->
+<link type="text/css" href="css/jquery.jscrollpane.css" rel="stylesheet"
+	media="all" />
+<!-- the mousewheel plugin -->
+<script type="text/javascript" src="scripts/lib/jquery.mousewheel.js"></script>
+<!-- the jScrollPane script -->
+<script type="text/javascript" src="scripts/lib/jquery.jscrollpane.js"></script>
+<!-- Rgraph and TreeMap-->
+<link type="text/css" href="css/base.css" rel="stylesheet" />
+<link type="text/css" href="css/Treemap.css" rel="stylesheet" />
+<script type="text/javascript" src="scripts/lib/jit.js"></script>
+<script type="text/javascript" src="scripts/lib/jquery.sparkline.js"></script>
+
+<!-- Grid view CSS and js-->
+<link rel="stylesheet" type="text/css" media="screen" href="css/grid/ui.jqgrid.css" />
+<script src="scripts/lib/grid.locale-en.js" type="text/javascript"></script>
+<script src="scripts/lib/jquery.jqGrid.src.js" type="text/javascript"></script>
+<script src="scripts/lib/jquery.tablednd.js" type="text/javascript"></script>
+<!-- -->
+<!-- jQuery plugin to support automatically updating fuzzy timestamps 
+(e.g. "4 minutes ago" or "about 1 day ago") -->
+<script type="text/javascript" src="scripts/lib/jquery.timeago.js"></script>
+
+<!-- start:Cluster widget based js files -->
+<script type="text/javascript" src="scripts/pulsescript/PulseCallbacks.js"></script>
+<script type="text/javascript" src="scripts/pulsescript/PulseFunctions.js"></script>
+<script type="text/javascript" src='scripts/pulsescript/common.js'></script>
+<script type="text/javascript" src='scripts/pulsescript/clusterRGraphMembers.js'></script>
+<script type="text/javascript" src='scripts/pulsescript/clusterDetail.js'></script>
+
+</head>
+
+
+<body onload="return checkMedia();">
+<!-- Connection lost-->
+<div class="connectionLostMasterBlock hide" id="connectionStatusDiv" >
+<div class="connectionLostInnerBlock">
+    <label id="lblConnectionErrorMsgDiv" class="left">Connecting ...</label>
+    <div class="clear"></div>
+    <div id="connectionErrorMsgDiv" class="right"></div>
+</div>
+</div>
+	<div id="canvasWidth">
+	<!--Top Links-->
+  <div class="headerTopLinksMaster">
+    <div class="right">
+      <div class="left position-relative"><a href="#."class="left headerTopLinks aboutClicked-Off">About</a> 
+        <!-- About Dropdown-->
+        <div id="detailsAbout" class="aboutBlock display-none">
+          <div class="aboutDetailsBlock">
+            <div class="left widthfull-100per marginBottom30">
+              <div class="left"><img data-prod-custom="pulse-aboutimg-custom" src="images/about.png">
+                <div>
+                  <div class="aboutVersionBlock left" id="pulseVersion"></div>
+                  <div class="left termsBlock">&nbsp;<a id="pulseVersionDetailsLink" href="#dialog1" class="display-none" >Version Details</a></div>
+                </div>
+              </div>
+              <div data-prod-custom="pulse-about-custom" class="right aboutText">The Pulse tool monitors Pivotal&#0153; GemFire&#0169; system in real time. It provides health information, detailed operational and configuration data, system alerts, throughput performance and statistics for system members and connected clients.</div>
+            </div>
+							<div class="left widthfull-100per">
+								<div class="left copyright">
+									Copyright &#0169; 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 <a href="http://www.pivotal.io/patents"
+									target="_blank" class="termsBlockLink text-center">http://www.pivotal.io/patents</a>.
+								</div>
+								
+								<div class="left copyright">Pivotal is a registered
+									trademark or trademark of Pivotal Software, Inc. in the United States and
+									other jurisdictions. All other marks and names mentioned herein
+									may be trademarks of their respective companies.</div>
+								
+								<div class="left termsBlock">
+									<a href="oslicenses.txt" target="_blank">Open Source
+										Licenses</a>
+								</div>
+								<!-- <div class="right termsBlock">
+									Pulse <a href="#.">Terms of Service</a>
+								</div>-->
+							</div>
+						</div>
+        </div>
+      </div>
+      <div class="left headerTopSeperator"></div>
+      <div class="left"><a data-prod-custom="pulse-help-custom" target="_blank" href="http://gemfire.docs.pivotal.io/latest/userguide/index.html#tools_modules/pulse/chapter_overview.html" class="left headerTopLinks" class="left headerTopLinks">Help</a></div>
+      <div class="left headerTopSeperator"></div>
+      <div class="left headerTopLinks welcomeLabelPRZero">Welcome</div>
+      <div class="left headerTopLinks textbold font-size12" id="userName"></div>
+      <div class="left headerTopSeperator"></div>
+      <div class="left"><a href="pulse/clusterLogout" class="left headerTopLinks">Sign Out</a></div>
+    </div>
+  </div>
+		<!-- Header block-->
+		<header>
+			<div class="left">
+				<a href="#." onclick="openClusterDetail();" class="left textbold HeaderLink HeaderLinkActive"
+					id="clusterName" ></a>
+			</div>
+			<div class="textbold right logoBlock">
+				<a href="#.">[LOGO]</a>
+			</div>
+		</header>
+		<div class="clear"></div>
+		<div class="subHeader">
+			<ul>
+				<li><a href="#." class="active" onclick="openClusterDetail();">Cluster View</a></li>
+				<!-- Hide Data Browser tab for gemfirexd (Pulse-Cheetah Release) -->
+				<li><a href="#."  onclick="openDataBrowser();">Data Browser</a></li>
+				<!-- Hide Query Statistics tab for gemfire -->
+				<li id="subTabQueryStatistics"><a href="#." onclick="openQueryStatistics();">Query Statistics</a></li>
+			</ul>
+		<div class="clear"></div>
+		</div>
+		<!-- Middle block-->
+		<div class="left widthfull-100per">
+			<!--Top Right Block 1-->
+			<div class="right widthfull-100per marginTB10">
+                            
+				<!-- Tab-->
+				<div id="notificationsPanel" class="right marginL10 TabTopPanel position-relative" 
+				data-role="widget" data-widgetid="CluserAlertNotification" data-active ="yes" data-timeline="5000">
+				</div>
+				<!-- <div class="right marginL10">
+					<a href="#." class="left linkButton" onclick="openDataView();">Data View</a>
+				</div> -->
+			<!-- </div> -->
+			<!--Middle Block 1-->
+			<div class="left leftBlockCanvas">
+				<!-- Status Block-->
+				<div class="statusmasterBlock left" data-role="widget" data-widgetid="CluserBasicDetails" data-active ="yes" data-timeline="5000">
+					<!--Status Block Normal-->
+					<div class="statusFirstBlock left">
+						<div class="statusMasterBlock" id="clusterStatusIcon">
+							<div class="textbold" id="clusterStatusText"></div>
+							<div class="labeltext">Cluster Status</div>
+						</div>
+					</div>
+					<!-- Deails B1-->
+					<div class="borderRightDarkBlue detailsBlock">
+						<div class="color-d2d5d7 font-size23">
+							<span id="clusterTotalHeap"></span><span
+								class="font-size17 paddingL5">GB</span>
+						</div>
+						<span class="labeltext" >Total Heap</span>
+					</div>
+					<!-- Deails B2-->
+					<div class=" detailsBlock">
+						<div class="color-d2d5d7 font-size23" id="clusterTotalMembersText"></div>
+						<span class="labeltext" >Members</span>
+					</div>
+					<!-- Deails B3-->
+					<div class="detailsBlock">
+						<div class="color-d2d5d7 font-size23" id="clusterServersText"></div>
+						<span class="labeltext" >Servers</span>
+					</div>
+					<!-- Deails B4-->
+					<div class="detailsBlock">
+						<div class="color-d2d5d7 font-size23" id="clusterClientsText"></div>
+						<span class="labeltext" >Clients</span>
+					</div>
+					<!-- Deails B5-->
+					<div class="detailsBlock">
+						<div class="color-d2d5d7 font-size23" id="clusterLocatorsText"></div>
+						<span class="labeltext" >Locators</span>
+					</div>
+					<!-- Deails B6-->
+					<div class="detailsBlock">
+						<div class="color-d2d5d7 font-size23" id="clusterTotalRegionsText"></div>
+						<span data-prod-custom="pulse-regionstableCaps-custom" class="labeltext" >Regions</span>
+					</div>
+					<!-- Deails B7-->
+					<div class="detailsBlock">
+						<div class="color-d2d5d7 font-size23" id="clusterFunctions"></div>
+						<span data-prod-custom="pulse-functionprocedureCaps-custom" class="labeltext" >Functions</span>
+					</div>
+					<!-- Deails B8-->
+					<div class="detailsBlock" id="clusterUniqueCQsContainer">
+						<div class="color-d2d5d7 font-size23" id="clusterUniqueCQs"></div>
+						<span class="labeltext" >Unique CQs</span>
+					</div>
+					<!-- Deails B9-->
+					<div class="detailsBlock" id="SubscriptionsContainer">
+						<div class="color-d2d5d7 font-size23"
+							id="clusterSubscriptionsText"></div>
+						<span class="labeltext" >Subscriptions</span>
+					</div>
+					<!-- Deails B10-->
+					<div class="detailsBlock" id="TxnCommittedContainer">
+					  <div class="color-d2d5d7 font-size23"
+					    id="clusterTxnCommittedText"></div>
+					  <span class="labeltext" >Txn. Committed</span>
+					</div>
+					<!-- Deails B11-->
+					<div class="detailsBlock" id="TxnRollbackContainer">
+					  <div class="color-d2d5d7 font-size23"
+					    id="clusterTxnRollbackText"></div>
+					  <span class="labeltext" >Txn. Rollback</span>
+					</div>
+				</div>
+				<div class="clear"></div>
+				<div>
+					<div class="middleTopologyBlock">
+						<!-- Large Block-->
+						<div class="canvasBlockLarge loaderParent marginBR10-11 left">
+							<div class="left widthfull-100per canvasBlockInnerBlock">
+								<!-- Drop Down list -->
+								<div class="left members_data" onClick="">
+									<ul class="inactive">
+										<li class="selected" id="members_data1">
+										  <a href="javascript:onChangeClusterPerspective(1);">Members</a>
+										</li>
+										<li id="members_data2">
+										  <a href="javascript:onChangeClusterPerspective(2);">Data</a>
+										</li>
+									</ul>
+								</div>
+								<!-- Expand/Collapse button -->
+								<a id="btnLargeBlock_1" class="minusIcon borderLeftToggleBlock"
+									onclick="toggleDiv(&#39;LargeBlock_1&#39;);"></a>
+								<!-- Visualization Icons -->
+								<div class="icons">
+									<!-- Members Topology default buttons -->
+									<div id="icons_member_view_option_default" style="display: block;">
+										<a id="default_grid_button" class="gridIcon"
+											onclick="openViewPanel('member', 'default','grid');"
+											data-perspective="member" data-view="default"
+											data-viewoption="grid"></a>
+										<a id="default_treemap_button" class="chartIcon" 
+										  onclick="openViewPanel('member', 'default','treemap');"
+											data-perspective="member" data-view="default"
+											data-viewoption="treemap"></a>
+										<a id="default_rgraph_button" class="graphIcon active"
+											onclick="openViewPanel('member', 'default','rgraph');"
+											data-perspective="member" data-view="default"
+											data-viewoption="rgraph"></a>
+									</div>
+									<!-- Members Server Group buttons -->
+									<div id="icons_member_view_option_servergroups" style="display: none;">
+										<a id="servergroups_grid_button" class="gridIcon"
+											onclick="openViewPanel('member', 'servergroups','grid');" 
+											data-perspective="member" data-view="servergroups" data-viewoption="grid"></a>
+										<a id="servergroups_treemap_button" class="chartIcon active"
+											onclick="openViewPanel('member', 'servergroups','treemap');"
+											data-perspective="member" data-view="servergroups" data-viewoption="treemap"></a>
+									</div>
+									<!-- Members Redundancy Zones buttons -->
+									<div id="icons_member_view_option_redundancyzones" style="display: none;">
+										<a id="redundancyzones_grid_button" class="gridIcon"
+											onclick="openViewPanel('member', 'redundancyzones','grid');"
+											data-perspective="member" data-view="redundancyzones" data-viewoption="grid"></a>
+										<a id="redundancyzones_treemap_button" class="chartIcon active"
+											onclick="openViewPanel('member', 'redundancyzones','treemap');"
+											data-perspective="member" data-view="redundancyzones" data-viewoption="treemap"></a>
+									</div>
+									<!-- Data buttons -->
+									<div id="icons_data_view" style="display: none;">
+										<a id="data_grid_button" class="gridIcon"
+											onclick="openViewPanel('data','data','grid');"
+											data-perspective="data" data-view="data" data-viewoption="grid"></a>
+										<a id="data_treemap_button" class="chartIcon active"
+											onclick="openViewPanel('data','data','treemap');"
+											data-perspective="data" data-view="data" data-viewoption="treemap"></a>
+									</div>
+								</div>
+							</div>
+							<div id="loadingSymbol" class="loader"></div>
+							<div class="left canvasInnerBlock canvasBlockLargeContent" id="LargeBlock_1">
+								<div id="member_view_options" class="left members_view" style="display: block;">
+									<ul>
+										<li id="member_view_option_default" class="selected">
+										  <LABEL class="label_radio r_on" for="radio-default">
+										    <INPUT name="radio-group" id="radio-default" value="1"
+												type="radio">Topology</LABEL>
+										</li>
+										<li id="member_view_option_servergroups">
+										  <LABEL class="label_radio" for="radio-servergroups">
+										    <INPUT name="radio-group" id="radio-servergroups" value="2"
+												type="radio">Server Groups</LABEL>
+										</li>
+										<li id="member_view_option_redundancyzones">
+										  <LABEL class="label_radio" for="radio-redundancyzones">
+										    <INPUT name="radio-group" id="radio-redundancyzones" value="3"
+												  type="radio">Redundancy Zones</LABEL>
+										</li>
+									</ul>
+								</div>
+								<!-- Hot Spot Drop down -->
+								<div id="hotspotParentContainer" class="right marginBottom10 marginR10 displayNone">
+								  <div class="left position-relative hotspotNameTopMargin">
+								    <a href="#." class="hotspotClicked-Off" id="userLink">
+								      <span id="currentHotSpot" class="hotspot_txt">Current Hot Spot</span>
+								    </a>
+								    <!-- Setting Dropdown-->
+								    <div id="hotspotSetting" class="settingBlock" style="display: none">
+								      <div id="hotspotListContainer" class="jsonSuggestScrollFilter">
+								        <div id="hotspotList"></div>
+								      </div>
+								    </div>
+								  </div>
+								</div>
+								<div data-role="widget" data-widgetid="ClusterMembers"
+									data-active="yes" data-timeline="5000">
+									<!-- Topology R-graph Block - Member - Default view -->
+									<div class="graphBlocksPanel left display-block"
+										id="default_rgraph_block" data-role="widget"
+										data-widgetid="ClusterMembersRGraph" data-active="yes"
+										data-timeline="5000">
+										<!-- R-graph -->
+										<div class="left widthfull-100per marginB10" id="rGraphDiv">
+											<div class="topologyGraph">
+												<div id="container">
+													<div id="center-container">
+														<div id="infovis" style="width: 100%;"></div>
+													</div>
+												</div>
+											</div>
+										</div>
+										<!-- R-graph legends -->
+										<div class="marginB11 left widthfull-100per" id="rGraphLegends">
+											<div class="left marginL10">
+												<span class="left colorCodeBlock managerCode"></span>
+												<span class="left marginL10 ">Managers</span>
+											</div>
+											<div class="left marginL10">
+												<span class="left colorCodeBlock locatorsCode"></span>
+												<span class="left marginL10 ">Locators</span>
+											</div>
+											<div class="left marginL10">
+												<span class="left colorCodeBlock severeCode"></span>
+												<span class="left marginL10 ">Server</span>
+											</div>
+										</div>
+									</div>
+
+									<!--Treemap Block - Member - Default view -->
+									<div class="chartBlocksPanel left" id="default_treemap_block">
+										<div class="left widthfull-100per">
+											<div class="treeViewGraphClusterView">
+												<div id="GraphTreeMap" style="height: 415px; width: 720px;"></div>
+											</div>
+										</div>
+									</div>
+
+									<!--Grid Block - Member - Default view -->
+									<div class="gridBlocksPanel left display-none" id="default_grid_block">
+										<div class="left widthfull-100per">
+											<table id="memberList"></table>
+										</div>
+									</div>
+
+									<!--Treemap Block - Member - Server Group view -->
+									<div class="chartBlocksPanel left" id="servergroups_treemap_block">
+										<div class="left widthfull-100per">
+											<div class="treeViewGraphClusterView">
+												<div id="GraphTreeMapSG" style="height: 415px; width: 720px;"></div>
+											</div>
+										</div>
+									</div>
+
+									<!--Grid Block - Member - Server Group view -->
+									<div class="chartBlocksPanel left display-none" id="servergroups_grid_block">
+										<div class="left widthfull-100per">
+											<div class="treeViewGraphClusterView">
+											  <table id="memberListSG"></table>
+											</div>
+										</div>
+									</div>
+
+									<!--Treemap Block - Member - Redundancy Zones view -->
+									<div class="chartBlocksPanel left" id="redundancyzones_treemap_block">
+										<div class="left widthfull-100per">
+											<div class="treeViewGraphClusterView">
+												<div id="GraphTreeMapRZ" style="height: 415px; width: 720px;"></div>
+											</div>
+										</div>
+									</div>
+
+									<!--Grid Block - Member - Redundancy Zones view -->
+									<div class="chartBlocksPanel left display-none" id="redundancyzones_grid_block">
+										<div class="left widthfull-100per">
+											<div class="treeViewGraphClusterView">
+												<table id="memberListRZ"></table>
+											</div>
+										</div>
+									</div>
+
+									<!--Treemap Block - Data -->
+									<div data-role="widget" data-widgetid="ClusterRegions"
+                  data-active="yes" data-timeline="5000" 
+                  class="chartBlocksPanel left" id="data_treemap_block">
+										<div class="left widthfull-100per">
+											<div class="treeViewGraphClusterView">
+												<div id="GraphTreeMapClusterData" style="height: 415px; width: 720px;"></div>
+											</div>
+										</div>
+									</div>
+
+									<!--Grid Block - Data -->
+									<div class="chartBlocksPanel left display-none" id="data_grid_block">
+										<div class="left widthfull-100per">
+											<div class="treeViewGraphClusterView">
+												<table id="regionsList"></table>
+											</div>
+										</div>
+									</div>
+								</div>
+
+							</div>
+						</div>
+						<!-- Block 4-->
+						<div class="canvasBlockKeyStats marginBR10-11 left" data-role="widget" data-widgetid="ClusterKeyStatistics" data-active ="yes" data-timeline="5000">
+							<div class="left width495 canvasBlockInnerBlock">
+								<span class="left marginL10 canvasHeading" >Key Statistics</span><a
+									id="btnSmallBlock_4" class="minusIcon"
+									onClick="toggleDiv('SmallBlock_4');" ></a>
+							</div>
+							<div class="left canvasInnerBlock canvasContentBlockKeyStats"
+								id="SmallBlock_4">
+								<div class="graphBlocksContent left">
+									<span class="marginB11 left widthfull-100per" >Last 15
+										Minutes</span>
+									<!--Line 1-->
+									<div class="left widthfull-100per marginB10">
+										<span class="left lineGraphKeyStats" id="writePerSecSparkLine"></span><span
+											class="color-d2d5d7 font-size23" id="writePerSec"></span><span data-prod-custom="pulse-writeputpersec-custom"
+											class="paddingL5" >Write/Sec</span>
+									</div>
+									<!--Line 2-->
+									<div class="left widthfull-100per marginB10">
+										<span class="left lineGraphKeyStats" id="readPerSecSparkLine"></span><span
+											class="color-d2d5d7 font-size23" id="readPerSec"></span><span data-prod-custom="pulse-readgetpersec-custom"
+											class="paddingL5" >Read/Sec</span>
+									</div>
+									<!--Line 3-->
+									<div class="left widthfull-100per marginB10" id="queriesPerSecContainer">
+										<span class="left lineGraphKeyStats" id="queriesPerSecSparkLine"></span><span
+											class="color-d2d5d7 font-size23" id="queriesPerSec"></span><span
+											class="paddingL5" >Queries/Sec</span>
+									</div>
+								</div>
+							</div>
+						</div>
+						<!-- Block 5-->
+						
+						<!-- Block 6-->
+						<div class="canvasBlock marginBR10-11 left" data-role="widget" data-widgetid="ClusterJVMPAuses" data-active ="yes" data-timeline="5000">
+							<div class="left width242 canvasBlockInnerBlock">
+								<span class="left marginL10 canvasHeading" >No. of JVM
+									Pauses</span><a id="btnSmallBlock_6" class="minusIcon"
+									onClick="toggleDiv('SmallBlock_6');" ></a>
+							</div>
+							<div class="left canvasInnerBlock canvasContentBlock"
+								id="SmallBlock_6">
+								<div class="graphBlocksContent">
+									<div class="color-d2d5d7 font-size40">
+										<span id="currentGCPauses"></span><span
+											class="font-size23 paddingL5"></span>
+									</div>
+									<span >Last 15 Minutes</span>
+								</div>
+								<div class="left graphChart">
+									<span class="left lineGraph" id="gcPauses"></span>
+								</div>
+							</div>
+						</div>
+					</div>
+					<!-- Right Block-->
+					<div class="rightBlockCanvas">
+						<!-- Block 1-->
+						<div class="canvasBlock marginB10 left" id="wanInfoWidget" data-role="widget" data-widgetid="ClusterWanInformation" data-active ="yes" data-timeline="5000">
+							<div class="left width242 canvasBlockInnerBlock">
+								<span class="left marginL10 canvasHeading">WAN
+									Information</span><a id="btnSmallBlock_1" class="minusIcon"
+									onClick="toggleDiv('SmallBlock_1');"></a>
+							</div>
+							<div class="left canvasInnerBlock canvasContentBlock"
+								id="SmallBlock_1">
+								<div class="scroll-pane_1">
+									<div id="wanInfoList"></div>
+								</div>
+							</div>
+						</div>
+						<div class="clear"></div>
+						<!-- Block 5-->
+						<div class="canvasBlock marginBR10-11 left" data-role="widget" data-widgetid="ClusterMemoryUsage" data-active ="yes" data-timeline="5000">
+							<div class="left width242 canvasBlockInnerBlock">
+								<span class="left marginL10 canvasHeading" >Memory Usage</span><a
+									id="btnSmallBlock_5" class="minusIcon"
+									onClick="toggleDiv('SmallBlock_5');"></a>
+							</div>
+							<div class="left canvasInnerBlock canvasContentBlock"
+								id="SmallBlock_5">
+								<div class="graphBlocksContent">
+									<div class="color-d2d5d7 font-size40">
+										<span id="currentMemoryUsage"></span><span
+											class="font-size23 paddingL5" id="memoryUsageMB" >MB</span>
+									</div>
+									<span >Last 15 Minutes</span>
+								</div>
+								<div class="left graphChart">
+									<span class="left lineGraph" id="memoryUsage"></span>
+								</div>
+							</div>
+						</div>
+						<!-- Block 2-->
+					<!-- 	<div class="canvasBlock marginB10 left">
+							<div class="left width242 canvasBlockInnerBlock">
+								<span class="left marginL10 canvasHeading">Disk Storage
+									Used</span><a id="btnSmallBlock_2" class="minusIcon"
+									onClick="toggleDiv('SmallBlock_2');"></a>
+							</div>
+							<div class="left canvasInnerBlock canvasContentBlock"
+								id="SmallBlock_2">
+								<div class="graphBlocksContent">
+									<div class="color-d2d5d7 font-size40">
+										<span id="currentDiskStorage"></span><span
+											class="font-size23 paddingL5" id="diskStorageMBGB">MB</span>
+									</div>
+									<span>Last 15 Minutes</span>
+								</div>
+								<div class="left graphChart">
+								  <span class="left lineGraph" id="diskStorageGraph"></span>
+								</div>
+							</div>
+						</div>
+						<div class="clear"></div> -->
+						<!-- Block 3-->
+						<div class="canvasBlock marginB10 left" data-role="widget" data-widgetid="ClusterDiskThroughput" data-active="yes" data-timeline="5000">
+							<div class="left width242 canvasBlockInnerBlock">
+								<span class="left marginL10 canvasHeading">Disk Throughput</span>
+								<a id="btnSmallBlock_3" class="minusIcon"
+									onClick="toggleDiv('SmallBlock_3');"></a>
+							</div>
+							<div class="left canvasInnerBlock canvasContentBlock"
+								id="SmallBlock_3">
+								<div class="graphBlocksContent marginB11 ">
+									<div class="left">
+										<span class="left">Last 15 Minutes</span>
+									</div>
+									<div class="right marginL10">
+										<span data-prod-custom="pulse-reads-custom" class="left">Reads</span>
+										<span class="left marginL10 colorCodeBlock diskReadsCode"></span>
+									</div>
+									<div class="right marginL10">
+										<span data-prod-custom="pulse-writes-custom" class="left">Writes</span>
+										<span class="left marginL10 colorCodeBlock diskWritesCode"></span>
+									</div>
+								</div>
+								<div class="graphBlocksContent width91Per left">
+									<div class="color-d2d5d7 font-size20">
+										<span id="diskReadsThroughput"></span>
+									</div>
+									<div class="width100Per left">
+										<span class="left">Reads</span> <span class="right"
+											id="currentDiskReadsThroughput"></span>
+									</div>
+								</div>
+								<div class="left graphChart marginB11">
+									<span class="left lineGraph" id="diskReadsThroughputTrend"></span>
+								</div>
+								<div class="graphBlocksContent width91Per left">
+									<div class="color-d2d5d7 font-size20">
+										<span id="diskWritesThroughput"></span>
+									</div>
+									<div class="width100Per left">
+										<span class="left">Writes</span> <span class="right"
+											id="currentDiskWritesThroughput"></span>
+									</div>
+								</div>
+								<div class="left graphChart">
+									<span class="left lineGraph" id="diskWritesThroughputTrend"></span>
+								</div>
+							</div>
+						</div>
+					</div>
+				</div>
+			</div>
+      </div>
+		</div>
+	</div>
+	<!--Popups Block-->
+<div id="boxes"> 
+  <!-- Version Details popup-->
+  <div id="dialog1" class="window width345"  data-role="widget" data-widgetid="PulseVersionDetails" data-active ="yes" data-timeline="5000">
+    <div class="popup_heading"><span>Version Details</span><a href="#" class="closePopup">&nbsp;</a></div>
+    <div class="popup_contentBlock">
+      <div class="popup-innerblock">
+        <ul class="widthfull-100per left"  >
+          <li class="left widthfull-100per"  >
+            <label class="width-40 display-inline-block"  >Pulse Version:</label>
+            <label class="width-58 display-inline-block" id="pulseVer"></label>
+          </li>
+          <li class="left widthfull-100per"  >
+            <label class="width-40 display-inline-block"  >Build Id:</label>
+            <label class="width-58 display-inline-block" id="buildId"></label>
+          </li>
+          <li class="left widthfull-100per"  >
+            <label class="width-40 display-inline-block"  >Build Date:</label>
+            <label class="width-58 display-inline-block" id="buildDate"></label>
+          </li>
+          <li class="left widthfull-100per"  >
+            <label class="width-40 display-inline-block"  >Source Date:</label>
+            <label class="width-58 display-inline-block" id="sourceDate"></label>
+          </li>
+          <li class="left widthfull-100per"  >
+            <label class="width-40 display-inline-block"  >Source Revision:</label>
+            <label class="width-58 display-inline-block" id="sourceRevision"></label>
+          </li>
+          <li class="left widthfull-100per"  >
+            <label class="width-40 display-inline-block"  >Source Repository:</label>
+            <label class="width-58 display-inline-block" id="sourceRepository"></label>
+          </li>
+        </ul>
+        <div class="clear"></div>
+      </div>
+    </div>
+  </div>
+  <!-- Mask to cover the whole screen -->
+  <div id="mask"></div>
+</div>
+<div id="tooltip" class="tooltip"></div>
+</body>
+
+
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/446f451a/gemfire-pulse/src/main/webapp/css/ForceDirected.css
----------------------------------------------------------------------
diff --git a/gemfire-pulse/src/main/webapp/css/ForceDirected.css b/gemfire-pulse/src/main/webapp/css/ForceDirected.css
new file mode 100644
index 0000000..fd2cbb5
--- /dev/null
+++ b/gemfire-pulse/src/main/webapp/css/ForceDirected.css
@@ -0,0 +1,27 @@
+#inner-details {
+  font-size:12px;
+}
+
+span.close {
+	color:#FF5555;
+	cursor:pointer;
+	font-weight:bold;
+	margin-left:3px;
+}
+
+span.name {
+  cursor: pointer;
+}
+
+/*TOOLTIPS*/
+.tip {
+   text-align: left;
+   width:auto;
+   max-width:500px;
+}
+
+.tip-title {
+  font-size: 11px;
+  text-align:center;
+  margin-bottom:2px;
+}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/446f451a/gemfire-pulse/src/main/webapp/css/RGraph.css
----------------------------------------------------------------------
diff --git a/gemfire-pulse/src/main/webapp/css/RGraph.css b/gemfire-pulse/src/main/webapp/css/RGraph.css
new file mode 100644
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/446f451a/gemfire-pulse/src/main/webapp/css/Treemap.css
----------------------------------------------------------------------
diff --git a/gemfire-pulse/src/main/webapp/css/Treemap.css b/gemfire-pulse/src/main/webapp/css/Treemap.css
new file mode 100644
index 0000000..1683edd
--- /dev/null
+++ b/gemfire-pulse/src/main/webapp/css/Treemap.css
@@ -0,0 +1,115 @@
+
+#center-containerTree {
+  width:730px;
+  position:absolute;
+  left:0px;
+  top:34px;
+  height:350px;
+  background:#132634;
+}
+
+#TreeMap {
+    position:relative;
+    height:350px;
+    margin:auto;
+    overflow:hidden;
+  width:730px;
+}
+
+.node {
+  color:#fff;
+  font-size:9px;
+  overflow:hidden;
+  cursor:pointer;
+/*  
+  text-shadow:2px 2px 5px #000;
+  -o-text-shadow:2px 2px 5px #000;
+  -webkit-text-shadow:2px 2px 5px #000;
+  -moz-text-shadow:2px 2px 5px #000;
+*/
+}
+
+/*TOOLTIPS*/
+.tip {
+    color: #fff;
+    width: 200px;
+    background-color:#283649 !important;
+    border:1px solid #889eb9;
+    -moz-box-shadow:#555 2px 2px 8px;
+    -webkit-box-shadow:#555 2px 2px 8px;
+    -o-box-shadow:#555 2px 2px 8px;
+    box-shadow:#555 2px 2px 8px;
+    font-size:13px;
+  }
+
+.album {
+    width:100px;
+    margin:3px;
+}
+
+#id-list {
+  background-color:#EEEEEE;
+  border:1px solid #CCCCCC;
+  margin:10px 20px 0 20px;
+  padding:5px;
+  text-align:left;
+  text-indent:2px;
+}
+
+#id-list table {
+  margin-top:2px;
+}
+
+#back {
+  margin:10px 40px;
+}
+
+.button {
+  display: inline-block;
+  outline: none;
+  cursor: pointer;
+  text-align: center;
+  text-decoration: none;
+  padding: 0.5em 1em 0.55em;
+  text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.3);
+  -webkit-border-radius: 0.5em;
+  -moz-border-radius: 0.5em;
+  border-radius: 0.5em;
+  -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
+  -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
+  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
+}
+
+.button:hover {
+  text-decoration: none;
+}
+
+.button:active {
+  position: relative;
+  top: 1px;
+}
+
+/* white */
+.white {
+  color: #606060;
+  border: solid 1px #b7b7b7;
+  background: #fff;
+  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ededed));
+  background: -moz-linear-gradient(top,  #fff,  #ededed);
+  filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ededed');
+}
+
+.white:hover {
+  background: #ededed;
+  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#dcdcdc));
+  background: -moz-linear-gradient(top,  #fff,  #dcdcdc);
+  filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#dcdcdc');
+}
+
+.white:active {
+  color: #999;
+  background: -webkit-gradient(linear, left top, left bottom, from(#ededed), to(#fff));
+  background: -moz-linear-gradient(top,  #ededed,  #fff);
+  filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#ffffff');
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/446f451a/gemfire-pulse/src/main/webapp/css/autocomplete/jsonSuggest.css
----------------------------------------------------------------------
diff --git a/gemfire-pulse/src/main/webapp/css/autocomplete/jsonSuggest.css b/gemfire-pulse/src/main/webapp/css/autocomplete/jsonSuggest.css
new file mode 100644
index 0000000..6f260ad
--- /dev/null
+++ b/gemfire-pulse/src/main/webapp/css/autocomplete/jsonSuggest.css
@@ -0,0 +1,72 @@
+
+div.jsonSuggestResults {
+	position:absolute;
+	border:1px solid #546579;
+	border-bottom:0px;
+	padding:0px;
+	margin:0px 0px;
+	z-index:1;
+	width:193px !important;
+	left:-1px !important;
+	top:45px !important;
+	/*max-height:125px !important;*/
+	overflow-y:auto;
+	overflow-x:hidden;
+	display:block !important;
+}
+
+div.jsonSuggestResults div.resultItem {
+	margin:0px;
+	padding:5px;
+	position:relative;
+	height:auto;
+	cursor:pointer;
+	background:#283649 !important;
+	border-bottom:1px solid #4e6277;
+	color:#868d98;
+
+}
+
+div.jsonSuggestResults div.resultItem.odd {
+	/*background-color:#d4e8f3; */
+	background:#283649 !important;
+}
+div.jsonSuggestResults div.resultItem.odd:hover{
+	color:#fff;
+	}
+
+div.jsonSuggestResults div.resultItem.even {
+	background:#283649 !important;
+}
+div.jsonSuggestResults div.resultItem.even:hover {
+	color:#fff;
+}
+div.jsonSuggestResults div.resultItem.hover {
+	background:#283649 !important;
+	color:#fff !important;
+}
+
+div.jsonSuggestResults div.resultItem img {
+	float:left;
+	margin-right:10px;
+}
+
+div.jsonSuggestResults div.resultItem p {
+	margin:0px;
+	padding:0px;
+}
+
+div.jsonSuggestResults div.resultItem p strong {
+	font-weight:bold;
+	text-decoration:underline;
+}
+
+div.jsonSuggestResults div.resultItem p.extra {
+	font-size: x-small !important;
+	position:absolute;
+	top:0px;
+	left: 0px;
+	width:190px;
+	height:24px;
+}
+div.jsonSuggestResults div.resultItem p.extra a{display:block;height:24px;}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/446f451a/gemfire-pulse/src/main/webapp/css/base.css
----------------------------------------------------------------------
diff --git a/gemfire-pulse/src/main/webapp/css/base.css b/gemfire-pulse/src/main/webapp/css/base.css
new file mode 100644
index 0000000..895bf5d
--- /dev/null
+++ b/gemfire-pulse/src/main/webapp/css/base.css
@@ -0,0 +1,55 @@
+
+input, select {
+    font-size:0.9em;
+}
+
+#container {
+  
+    margin:0 auto;
+    position:relative;
+}
+
+#center-container {
+    /*height:600px;*/
+    position:absolute;
+    top:0;
+}
+
+
+#center-container {
+    color: #CCCCCC;
+    /*left: 379px;*/
+    /*margin: 75px 0 0;*/
+   /* padding: 10px 0px 0;*/
+    /*width: 722px;
+    height: 461px;*/
+    position: relative;
+}
+
+#inner-details {
+    font-size:0.8em;
+    list-style:none;
+    margin:7px;
+}
+
+
+
+#infovis {
+    height: 410px;
+    overflow: hidden;
+    position: relative;
+    /*width: 660px;*/
+}
+
+/*TOOLTIPS*/
+.tip {
+    color: #fff;
+    width: 200px;
+    background-color:#283649 !important;
+    border:1px solid #889eb9;
+    -moz-box-shadow:#555 2px 2px 8px;
+    -webkit-box-shadow:#555 2px 2px 8px;
+    -o-box-shadow:#555 2px 2px 8px;
+    box-shadow:#555 2px 2px 8px;
+    font-size:13px;
+  }
\ No newline at end of file


Mime
View raw message