You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by tu...@apache.org on 2015/11/03 12:25:50 UTC

[28/79] [partial] incubator-geode git commit: GEODE-12: Imported pulse from geode-1.0.0-SNAPSHOT-2.src.tar

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/1922937f/pulse/src/main/webapp/WEB-INF/mvc-dispatcher-servlet.xml
----------------------------------------------------------------------
diff --git a/pulse/src/main/webapp/WEB-INF/mvc-dispatcher-servlet.xml b/pulse/src/main/webapp/WEB-INF/mvc-dispatcher-servlet.xml
new file mode 100644
index 0000000..5778970
--- /dev/null
+++ b/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/1922937f/pulse/src/main/webapp/WEB-INF/spring-security.xml
----------------------------------------------------------------------
diff --git a/pulse/src/main/webapp/WEB-INF/spring-security.xml b/pulse/src/main/webapp/WEB-INF/spring-security.xml
new file mode 100644
index 0000000..4264566
--- /dev/null
+++ b/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/1922937f/pulse/src/main/webapp/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/pulse/src/main/webapp/WEB-INF/web.xml b/pulse/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..ed6cfa5
--- /dev/null
+++ b/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/1922937f/pulse/src/main/webapp/clusterDetail.html
----------------------------------------------------------------------
diff --git a/pulse/src/main/webapp/clusterDetail.html b/pulse/src/main/webapp/clusterDetail.html
new file mode 100644
index 0000000..4190843
--- /dev/null
+++ b/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/1922937f/pulse/src/main/webapp/css/ForceDirected.css
----------------------------------------------------------------------
diff --git a/pulse/src/main/webapp/css/ForceDirected.css b/pulse/src/main/webapp/css/ForceDirected.css
new file mode 100644
index 0000000..fd2cbb5
--- /dev/null
+++ b/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/1922937f/pulse/src/main/webapp/css/RGraph.css
----------------------------------------------------------------------
diff --git a/pulse/src/main/webapp/css/RGraph.css b/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/1922937f/pulse/src/main/webapp/css/Treemap.css
----------------------------------------------------------------------
diff --git a/pulse/src/main/webapp/css/Treemap.css b/pulse/src/main/webapp/css/Treemap.css
new file mode 100644
index 0000000..1683edd
--- /dev/null
+++ b/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/1922937f/pulse/src/main/webapp/css/autocomplete/jsonSuggest.css
----------------------------------------------------------------------
diff --git a/pulse/src/main/webapp/css/autocomplete/jsonSuggest.css b/pulse/src/main/webapp/css/autocomplete/jsonSuggest.css
new file mode 100644
index 0000000..6f260ad
--- /dev/null
+++ b/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/1922937f/pulse/src/main/webapp/css/base.css
----------------------------------------------------------------------
diff --git a/pulse/src/main/webapp/css/base.css b/pulse/src/main/webapp/css/base.css
new file mode 100644
index 0000000..895bf5d
--- /dev/null
+++ b/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

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/1922937f/pulse/src/main/webapp/css/common.css
----------------------------------------------------------------------
diff --git a/pulse/src/main/webapp/css/common.css b/pulse/src/main/webapp/css/common.css
new file mode 100644
index 0000000..32b366e
--- /dev/null
+++ b/pulse/src/main/webapp/css/common.css
@@ -0,0 +1,221 @@
+@charset "utf-8";
+/**********************************************************************************************
+
+	CSS3
+	Title: vmware
+	Date:  September 2012
+
+***********************************************************************************************
+
+	1. BASE
+			1.1 Reset & Standards
+			1.2 Links
+			1.3 Lists
+			1.4 Tables
+			1.5 Misc
+			1.6 Typography
+			1.7 Block Width
+			1.8 Font Size
+			1.9 Font Color
+			1.10 Line Height
+			1.11 Input
+			1.12 Margin & Padding
+			
+***********************************************************************************************/
+/*	--------------------------------------------------
+	1.BASE
+	-------------------------------------------------- */
+
+/*	--------------------------------------------------
+	1.1 Global Reset & Standards
+	-------------------------------------------------- */
+	html, body, div, span, applet, object, iframe,  h1, h2, h3, h4, h5, h6, p, blockquote, pre,  a, abbr, acronym, address, big, cite, code,  del, dfn, em, img, ins, kbd, q, s, samp,  small, strike, strong, sub, sup, tt, var,  b, u, i, center,  dl, dt, dd, ol, ul, li,  fieldset, form, label, legend,  table, caption, tbody, tfoot, thead, tr, th, td,  article, aside, canvas, details, embed,  figure, figcaption, footer, header, hgroup,  menu, nav, output, ruby, section, summary,  time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; outline:none }
+	body { min-width:1000px};
+	html, body { margin: 0; padding: 0; height: 100%; }
+	html { /*overflow-y:auto;*/ overflow-y:scroll;}
+	sub { vertical-align: sub; }
+	sup { vertical-align: super; }
+	textarea { resize:none; }
+	ol, ul { list-style: none; }
+	blockquote, q { quotes: none; }
+	blockquote:before, blockquote:after,  q:before, q:after { content: ''; content: none; }
+	/*table { border-collapse: collapse; border-spacing: 0; border:0px }*/
+/*	--------------------------------------------------
+	1.2 Links
+	-------------------------------------------------- */
+	a { color: #414141; text-decoration: none; line-height: inherit; cursor:pointer; outline:0/* set dotted border zero for IE8 & IE9*/ }
+	a:hover { color: #0363a0; }
+	p a, p a:visited { line-height: inherit; }
+/*	--------------------------------------------------
+	1.3 Lists
+	-------------------------------------------------- */
+	ul, ol { margin: 0px; }
+	ul { list-style: none outside; }
+	ol { list-style: none outside none }
+	ol, ul.square, ul.circle, ul.disc { margin:0px; padding:0px }
+	ul.square { list-style: square outside; }
+	ul.circle { list-style: circle outside; }
+	ul.disc { list-style: disc outside; }
+	li { margin: 0px; }
+	ul.large li { line-height: 21px; }
+/*	--------------------------------------------------
+	1.4 Tables
+	-------------------------------------------------- */
+	table { margin: 0 0 0 0px; }
+	table thead, table tfoot { background: #f5f5f5; }
+	table thead tr th,  table tfoot tr th,  table tbody tr td,  table tr td,  table tfoot tr td { font-size: 0.9em; line-height: 18px; text-align: left; }
+	table thead tr th,  table tfoot tr td { padding: 8px 10px 9px; font-size: 14px; font-weight: bold; color: #222; }
+	table tbody tr.even,  table tbody tr.alt { background: #f9f9f9; }
+	table tbody tr td { color: #414141; padding: 0px; vertical-align: top; border: none; }
+
+/* -------------------------------------------------- 
+	1.5 Misc
+---------------------------------------------------*/
+	.left { float: left; }
+	.right { float: right; }
+	.text-left { text-align: left; }
+	.text-right { text-align: right; }
+	.text-center { text-align: center; }
+	.postical-absolute { position:absolute }
+	.position-relative { position:relative }
+	.hide { display: none; }
+	.show { display:block }
+	.clear { clear:both; height:0; font-size:0px; line-height:0; }
+	.widthfull-100per { width:100%; }
+	.display-inline-block { display:inline-block }
+	.display-block { display:block }
+	.display-none { display:none }
+	.clearfix { height: 1%; overflow: visible; }
+	.verticalTop { vertical-align:top !important }
+	.verticalMiddle { vertical-align:middle !important }
+/*	--------------------------------------------------
+    1.6 Typography
+	-------------------------------------------------- */
+	h1, h2, h3, h4, h5, h6 { color: #181818; font-weight: bold; line-height: 1.25 }
+	h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit; }
+	p { margin: 0 0 0 0; }
+	p img { margin: 0; }
+/*	--------------------------------------------------
+    1.7 Block width
+	-------------------------------------------------- */
+	/* multi of 5*/
+	.width-5 { width:5% }
+	.width-10 { width:10% }
+	.width-15 { width:15% }
+	.width-20 { width:20% }
+	.width-25 { width:25% }
+	.width-30 { width:30% }
+	.width-35 { width:35% }
+	.width-40 { width:40% }
+	.width-45 { width:45% }
+	.width-50 { width:50% }
+	.width-55 { width:55% }
+	.width-60 { width:60% }
+	.width-65 { width:65% }
+	.width-70 { width:70% }
+	.width-75 { width:75% }
+	.width-80 { width:80% }
+	.width-85 { width:85% }
+	.width-90 { width:90% }
+	.width-95 { width:95% }
+/*even*/
+	.width-4 { width:4% }
+	.width-6 { width:6% }
+	.width-8 { width:8% }
+	.width-12 { width:12% }
+	.width-14 { width:14% }
+	.width-16 { width:16% }
+	.width-28 { width:28% }
+	.width-46 { width:46% }
+	.width-76 { width:76% }
+	.width-94 { width:94% }
+/*odd*/
+	.width-11 { width:11% }
+	.width-13 { width:13% }
+	.width-7 { width:7% }
+	.width-39 { width:39% }
+	.width-49 { width:49% }
+	.width-77 { width:77% }
+	.width-83 { width:83% }
+	.width-87 { width:87% }
+	.width-53 { width:53% }
+	.width-27 { width:27% }
+	.width-47 { width:47% }
+/*	--------------------------------------------------
+	1.8 Font Size
+	-------------------------------------------------- */
+	.font-size20{font-size:20px;}
+	.font-size23{font-size:23px;}
+	.font-size14{font-size:14px;}
+	.font-size15{font-size:15px;}
+	.font-size40{font-size:40px;}
+	.font-size17{font-size:17px;}
+	.font-size13{font-size:13px;}
+
+/*	--------------------------------------------------
+	1.9 Font Color
+	-------------------------------------------------- */
+	.color-fff { color:#ffffff }
+	.color-d2d5d7{color:#d2d5d7}
+	
+
+/*	--------------------------------------------------
+	1.10 Line Height
+	-------------------------------------------------- */
+	.line-height-22 { line-height:22px }
+/*Height*/
+	.height16 { height:16px !important; vertical-align:top }
+	.height18 { height:18px !important; vertical-align:top !important; }
+	.height40 { height:40px; }
+	.height80 { height:80px; }
+	.height87 { height:87px; }
+	.height30 { height:30px; }
+	.height36 { height:36px; line-height:20px }
+	.height60 { height:65px; width:inherit }
+	.height20 { height:20px !important; line-height:20px !important; font-size:11px !important; }
+	.height71 { height:71px; }
+/*	--------------------------------------------------
+	1.11 Input
+	-------------------------------------------------- */
+	
+	input[type="text"] { border: 1px solid #afafaf; border-radius: 2px 2px 2px 2px; color: #414141; font-family: Arial; font-size: 12px; padding: 5px 8px; outline:none }	
+	textarea {border:0px; border-bottom:1px solid #27333b; !important; border-radius: 2px 2px 2px 2px; color: #878e92; font-family: Arial; font-size: 12px; padding: 5px 8px; outline:none; background:#0f1c25}
+	select { border:1px #b1b1b1 solid; border-radius:3px 3px 3px 3px; padding:3px 3px !important; color:#414141; outline: none; line-height:20px; }
+/*	--------------------------------------------------
+	1.12 Margin & Padding
+	-------------------------------------------------- */
+.marginTB10{margin:10px 0px}
+.marginLR10{margin:0px 10px}
+.marginL10{margin-left:10px}
+.marginR10{margin-right:10px}
+.marginB5{margin-bottom:5px;}
+.marginB10{margin-bottom:10px;}
+.marginB11{margin-bottom:11px;}
+.marginBR10-11{margin-bottom:10px; margin-right:11px;}
+.paddingTop0{padding-top:0px !important}
+.margin5All{margin:5px}
+
+/*padding*/
+.paddingL5{padding-left:5px;}
+/*cursor types*/
+.pointerCursor{cursor: pointer;}
+.defaultCursor{cursor: default;}
+
+/* background:transparent url(../images/RegionView_Popup.png); */
+ /* .tooltip {
+    display:none;
+    background:repeat #202b39;
+    background: url("../images/PopupImage.png") no-repeat scroll 0 0 rgba(0, 0, 0, 0);
+    font-size:12px;
+    height:317px;
+    width:350px;
+    padding:5px;
+    color:#eee;
+  } */
+  
+  .regionTipHeaderEnhancement {
+  	font-size:12px; 
+  	padding:5px 0px; 
+  	color: #ababab;
+  }
+  
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/1922937f/pulse/src/main/webapp/css/fonts/DroidSans-Bold-webfont.eot
----------------------------------------------------------------------
diff --git a/pulse/src/main/webapp/css/fonts/DroidSans-Bold-webfont.eot b/pulse/src/main/webapp/css/fonts/DroidSans-Bold-webfont.eot
new file mode 100644
index 0000000..1691466
Binary files /dev/null and b/pulse/src/main/webapp/css/fonts/DroidSans-Bold-webfont.eot differ