geode-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From r..@apache.org
Subject [43/51] [partial] incubator-geode git commit: Add source for geode c++ and .net clients
Date Thu, 19 May 2016 15:14:50 GMT
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ac967000/geode-client-native/examples/clicache/ExecuteFunctions/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/geode-client-native/examples/clicache/ExecuteFunctions/Properties/AssemblyInfo.cs b/geode-client-native/examples/clicache/ExecuteFunctions/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..ff516af
--- /dev/null
+++ b/geode-client-native/examples/clicache/ExecuteFunctions/Properties/AssemblyInfo.cs
@@ -0,0 +1,33 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("GemFireExecuteFunctions")]
+[assembly: AssemblyDescription("GemFire Simple Bank Example")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("GemStone Systems Inc.")]
+[assembly: AssemblyProduct("GemFireExecuteFunctions")]
+[assembly: AssemblyCopyright("Copyright © GemStone Systems Inc. 2008")]
+[assembly: AssemblyTrademark("All Rights Reserved")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible 
+// to COM components.  If you need to access a type in this assembly from 
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("446a6d15-e898-4fd5-8493-2076da55bd85")]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+//
+[assembly: AssemblyVersion("9.0.0.0")]
+[assembly: AssemblyFileVersion("9.0.0.0")]

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ac967000/geode-client-native/examples/clicache/ExecuteFunctions/README.html
----------------------------------------------------------------------
diff --git a/geode-client-native/examples/clicache/ExecuteFunctions/README.html b/geode-client-native/examples/clicache/ExecuteFunctions/README.html
new file mode 100755
index 0000000..772fdf4
--- /dev/null
+++ b/geode-client-native/examples/clicache/ExecuteFunctions/README.html
@@ -0,0 +1,427 @@
+<html xmlns:o="urn:schemas-microsoft-com:office:office"
+xmlns:w="urn:schemas-microsoft-com:office:word"
+xmlns="http://www.w3.org/TR/REC-html40">
+
+<head>
+<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
+<meta name=ProgId content=Word.Document>
+<meta name=Generator content="Microsoft Word 11">
+<meta name=Originator content="Microsoft Word 11">
+<link rel=File-List href="README_files/filelist.xml">
+<title>ExecuteFunctions: Pivotal GemFire&#174; Native Client Example</title>
+<!--[if gte mso 9]><xml>
+ <o:DocumentProperties>
+  <o:Author>qhe</o:Author>
+  <o:Template>Normal</o:Template>
+  <o:LastAuthor>qhe</o:LastAuthor>
+  <o:Revision>4</o:Revision>
+  <o:TotalTime>13</o:TotalTime>
+  <o:Created>2008-10-29T17:56:00Z</o:Created>
+  <o:LastSaved>2008-10-29T18:10:00Z</o:LastSaved>
+  <o:Pages>1</o:Pages>
+  <o:Words>632</o:Words>
+  <o:Characters>3608</o:Characters>
+  <o:Company>GemStone Systems, Inc.</o:Company>
+  <o:Lines>30</o:Lines>
+  <o:Paragraphs>8</o:Paragraphs>
+  <o:CharactersWithSpaces>4232</o:CharactersWithSpaces>
+  <o:Version>11.6360</o:Version>
+ </o:DocumentProperties>
+</xml><![endif]--><!--[if gte mso 9]><xml>
+ <w:WordDocument>
+  <w:SpellingState>Clean</w:SpellingState>
+  <w:GrammarState>Clean</w:GrammarState>
+  <w:ValidateAgainstSchemas/>
+  <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
+  <w:IgnoreMixedContent>false</w:IgnoreMixedContent>
+  <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
+  <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
+ </w:WordDocument>
+</xml><![endif]--><!--[if gte mso 9]><xml>
+ <w:LatentStyles DefLockedState="false" LatentStyleCount="156">
+ </w:LatentStyles>
+</xml><![endif]-->
+<style>
+<!--
+ /* Font Definitions */
+ @font-face
+	{font-family:Wingdings;
+	panose-1:5 0 0 0 0 0 0 0 0 0;
+	mso-font-charset:2;
+	mso-generic-font-family:auto;
+	mso-font-pitch:variable;
+	mso-font-signature:0 268435456 0 0 -2147483648 0;}
+ /* Style Definitions */
+ p.MsoNormal, li.MsoNormal, div.MsoNormal
+	{mso-style-parent:"";
+	margin:0in;
+	margin-bottom:.0001pt;
+	mso-pagination:widow-orphan;
+	font-size:12.0pt;
+	font-family:"Times New Roman";
+	mso-fareast-font-family:"Times New Roman";}
+h1
+	{mso-margin-top-alt:auto;
+	margin-right:0in;
+	mso-margin-bottom-alt:auto;
+	margin-left:0in;
+	mso-pagination:widow-orphan;
+	mso-outline-level:1;
+	font-size:24.0pt;
+	font-family:"Times New Roman";
+	font-weight:bold;}
+h2
+	{mso-margin-top-alt:auto;
+	margin-right:0in;
+	mso-margin-bottom-alt:auto;
+	margin-left:0in;
+	mso-pagination:widow-orphan;
+	mso-outline-level:2;
+	font-size:18.0pt;
+	font-family:"Times New Roman";
+	font-weight:bold;}
+h4
+	{mso-margin-top-alt:auto;
+	margin-right:0in;
+	mso-margin-bottom-alt:auto;
+	margin-left:0in;
+	mso-pagination:widow-orphan;
+	mso-outline-level:4;
+	font-size:12.0pt;
+	font-family:"Times New Roman";
+	font-weight:bold;}
+a:link, span.MsoHyperlink
+	{color:blue;
+	text-decoration:underline;
+	text-underline:single;}
+a:visited, span.MsoHyperlinkFollowed
+	{color:blue;
+	text-decoration:underline;
+	text-underline:single;}
+p
+	{mso-margin-top-alt:auto;
+	margin-right:0in;
+	mso-margin-bottom-alt:auto;
+	margin-left:0in;
+	mso-pagination:widow-orphan;
+	font-size:12.0pt;
+	font-family:"Times New Roman";
+	mso-fareast-font-family:"Times New Roman";}
+code
+	{font-family:"Courier New";
+	mso-ascii-font-family:"Courier New";
+	mso-fareast-font-family:"Times New Roman";
+	mso-hansi-font-family:"Courier New";
+	mso-bidi-font-family:"Courier New";}
+span.SpellE
+	{mso-style-name:"";
+	mso-spl-e:yes;}
+span.GramE
+	{mso-style-name:"";
+	mso-gram-e:yes;}
+@page Section1
+	{size:8.5in 11.0in;
+	margin:1.0in 1.25in 1.0in 1.25in;
+	mso-header-margin:.5in;
+	mso-footer-margin:.5in;
+	mso-paper-source:0;}
+div.Section1
+	{page:Section1;}
+ /* List Definitions */
+ @list l0
+	{mso-list-id:162935388;
+	mso-list-template-ids:1394253234;}
+@list l0:level1
+	{mso-level-number-format:bullet;
+	mso-level-text:\F0B7;
+	mso-level-tab-stop:.5in;
+	mso-level-number-position:left;
+	text-indent:-.25in;
+	mso-ansi-font-size:10.0pt;
+	font-family:Symbol;}
+@list l1
+	{mso-list-id:226569577;
+	mso-list-template-ids:-1947287032;}
+@list l1:level2
+	{mso-level-text:"%2\)";
+	mso-level-tab-stop:1.0in;
+	mso-level-number-position:left;
+	text-indent:-.25in;}
+@list l2
+	{mso-list-id:1273512360;
+	mso-list-template-ids:699437352;}
+@list l3
+	{mso-list-id:1483305081;
+	mso-list-template-ids:1760043970;}
+ol
+	{margin-bottom:0in;}
+ul
+	{margin-bottom:0in;}
+-->
+</style>
+<!--[if gte mso 10]>
+<style>
+ /* Style Definitions */
+ table.MsoNormalTable
+	{mso-style-name:"Table Normal";
+	mso-tstyle-rowband-size:0;
+	mso-tstyle-colband-size:0;
+	mso-style-noshow:yes;
+	mso-style-parent:"";
+	mso-padding-alt:0in 5.4pt 0in 5.4pt;
+	mso-para-margin:0in;
+	mso-para-margin-bottom:.0001pt;
+	mso-pagination:widow-orphan;
+	font-size:10.0pt;
+	font-family:"Times New Roman";
+	mso-ansi-language:#0400;
+	mso-fareast-language:#0400;
+	mso-bidi-language:#0400;}
+</style>
+<![endif]-->
+<meta http-equiv=Content-Style-Type content="text/css">
+</head>
+
+<IMG SRC="../../../docs/PIVOTAL_GemFire_190x81.png" BORDER="0">
+<body lang=EN-US link=blue vlink=blue style='tab-interval:.5in'>
+
+<div class=Section1>
+
+<div>
+
+<h1 align=center style='text-align:center'><span class=SpellE>ExecuteFunctions</span></h1>
+
+<h2 align=center style='text-align:center'>GemFire Native Client </h2>
+
+<h2 align=center style='text-align:center'>C# Programming Example</h2>
+
+</div>
+
+
+<div>
+
+<h2>About the <span class=SpellE>ExecuteFunctions</span> Example </h2>
+
+<p>The <span class=SpellE><code><span style='font-size:10.0pt'>ExecuteFunctions</span></code></span>
+example is a C# program that uses Microsoft .NET Framework 4.0 to access the
+GemFire C++ API for continuous query.</p>
+
+<blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'>
+
+<p><em>Microsoft .NET Framework 4.0 must be installed before running this
+example. For information about installing the .NET Framework, see the </em>GemFire
+Native Client User's Guide<em>.</em> </p>
+
+</blockquote>
+
+<p>The client application comes with a cache configuration file, <code><span
+style='font-size:10.0pt'><a href="HierarchicalClient.xml" target="_blank"><span
+class=SpellE>clientExecuteFunctions.xml</span></a></span></code>, which is configured to
+create a root region and establish the native client endpoints to the
+locally-run server by specifying <code><span style='font-size:10.0pt'>localhost<span
+class=GramE>:50505</span></span></code>. <span class=GramE>If java server is
+located on another host, change <span class=SpellE>localhost</span> to that
+host accordingly.</span></p>
+
+<p>The <span class=SpellE><code><span style='font-size:10.0pt'>ExecuteFunctions</span></code></span>
+cache listens for client requests at a specific port (see <code><span
+style='font-size:10.0pt'><a
+href="../../../quickstart/xml/hierarchicalserver.xml" target="_blank"><span
+class=SpellE>serverExecuteFunctions.xml</span></a></span></code>). The client connects
+to the cache server's port.</p>
+
+</div>
+
+<div>
+
+<h2><a name="configuring_environment"></a>Configuring the Environment </h2>
+
+<p>Examples that interact with a Java cache server require specific environment
+configurations so the Java cache server will run properly. Follow the
+configuration steps listed below that apply to your operating system: </p>
+
+</div>
+
+<div>
+
+<ol start=1 type=1>
+ <li class=MsoNormal style='mso-margin-top-alt:auto;margin-bottom:12.0pt;
+     mso-list:l3 level1 lfo2;tab-stops:list .5in'>From the GemFire
+     product installation directory, configure your environment settings by
+     following the steps in <code><span style='font-size:10.0pt'>examples/EnvSetup.html</span></code>.
+     Refer to the developer's guide if you need help with this step.</li>
+ <li class=MsoNormal style='mso-margin-top-alt:auto;margin-bottom:12.0pt;
+     mso-list:l3 level1 lfo2;tab-stops:list .5in'>Set the <code><span
+     style='font-size:10.0pt'>JAVA_HOME</span></code> and <code><span
+     style='font-size:10.0pt'>GF_JAVA_HOME</span></code> environment variables
+     to your installed Java JRE or JDK. See the Installation chapter of the <em>GemFire
+     User's Guide</em> for the versions of Java that
+     are compatible with GemFire. The <code><span style='font-size:
+     10.0pt'>JAVA_HOME</span></code> setting is for your applications, and <code><span
+     style='font-size:10.0pt'>GF_JAVA_HOME</span></code> is for the GemFire
+     scripts. You must have a compatible Java JRE or JDK installed and you must
+     set <code><span style='font-size:10.0pt'>JAVA_HOME</span></code> and <code><span
+     style='font-size:10.0pt'>GF_JAVA_HOME</span></code> to point to it.</li>
+ <li class=MsoNormal style='mso-margin-top-alt:auto;margin-bottom:12.0pt;
+     mso-list:l3 level1 lfo2;tab-stops:list .5in'>Add <code><span
+     style='font-size:10.0pt'>$JAVA_HOME/bin</span></code> to the start of your
+     <code><span style='font-size:10.0pt'>PATH</span></code>. </li>
+ <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
+     mso-list:l3 level1 lfo2;tab-stops:list .5in'>Add the GemFire <span
+     class=SpellE>quickstart</span> classes to your <code><span
+     style='font-size:10.0pt'>CLASSPATH</span></code>. </li>
+</ol>
+
+<p style='margin-left:.5in'><span class=GramE><strong><span style='font-size:
+10.0pt;font-family:"Courier New"'>set</span></strong></span><strong><span
+style='font-size:10.0pt;font-family:"Courier New"'> CLASSPATH=%GEMFIRE%\<span
+class=SpellE>quickstart\classes;%CLASSPATH</span>%</span></strong></p>
+
+<p>The following is a list of the environment configuration commands for the <span
+class=SpellE><code><span style='font-size:10.0pt'>ExecuteFunctions</span></code></span>
+example. Choose the set of commands that are appropriate for your operating
+system. The text that you type is shown in bold. These configurations only need
+to be performed for the sessions that invoke the Java cache server.</p>
+
+<p><strong>Bourne and <span class=SpellE>Korn</span> shells (<span
+class=SpellE>sh</span>, <span class=SpellE>ksh</span>, bash)</strong></p>
+
+<blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'>
+
+<p><code><span style='font-size:10.0pt'>% </span></code><span class=SpellE><strong><span
+style='font-size:10.0pt;font-family:"Courier New"'>cd</span></strong></span><strong><span
+style='font-size:10.0pt;font-family:"Courier New"'> <span class=SpellE>GemFireInstallDirectory</span></span></strong><span
+style='font-size:10.0pt;font-family:"Courier New"'><br>
+<code>% </code><strong><span style='font-family:"Courier New"'>CLASSPATH=$CLASSPATH<span
+class=GramE>:$</span>GEMFIRE/<span class=SpellE>quickstart</span>/classes;
+export CLASSPATH</span></strong><br>
+<code>% </code><span class=SpellE><strong><span style='font-family:"Courier New"'>cd</span></strong></span><strong><span
+style='font-family:"Courier New"'> $GEMFIRE/<span class=SpellE>quickstart</span></span></strong><br>
+<code>% </code><strong><span style='font-family:"Courier New"'>JAVA_HOME=&lt;Installed
+JRE PATH&gt;; export JAVA_HOME</span></strong><br>
+<code>% </code><strong><span style='font-family:"Courier New"'>GF_JAVA_HOME=$JAVA_HOME;
+export GF_JAVA_HOME</span></strong><br>
+<code>% </code><strong><span style='font-family:"Courier New"'>PATH=$JAVA_HOME/<span
+class=SpellE>bin:$PATH</span>; export PATH</span></strong></span></p>
+
+</blockquote>
+
+<p><strong>Windows</strong></p>
+
+<blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'>
+
+<p><code><span style='font-size:10.0pt'>&gt; </span></code><span class=SpellE><span
+class=GramE><strong><span style='font-size:10.0pt;font-family:"Courier New"'>cd</span></strong></span></span><strong><span
+style='font-size:10.0pt;font-family:"Courier New"'> <span class=SpellE>GemFireInstallDirectory</span></span></strong><span
+style='font-size:10.0pt;font-family:"Courier New"'><br>
+<code>&gt; </code><strong><span style='font-family:"Courier New"'>set
+CLASSPATH=%GEMFIRE%\<span class=SpellE>quickstart\classes;%CLASSPATH</span>%</span></strong><br>
+<code>&gt; </code><span class=SpellE><strong><span style='font-family:"Courier New"'>cd</span></strong></span><strong><span
+style='font-family:"Courier New"'> %GEMFIRE%\<span class=SpellE>quickstart</span></span></strong><br>
+<code>&gt; </code><strong><span style='font-family:"Courier New"'>set
+JAVA_HOME=&lt;Installed JRE PATH&gt;</span></strong><br>
+<code>&gt; </code><strong><span style='font-family:"Courier New"'>set
+GF_JAVA_HOME=%JAVA_HOME%</span></strong><br>
+<code>&gt; </code><strong><span style='font-family:"Courier New"'>set
+PATH=%JAVA_HOME%\<span class=SpellE>bin;%PATH</span>%</span></strong><code> </code></span></p>
+
+</blockquote>
+
+</div>
+
+<div>
+
+<h2>Starting <span class=SpellE>ExecuteFunctions</span> </h2>
+
+<p>To run the <span class=SpellE><code><span style='font-size:10.0pt'>ExecuteFunctions</span></code></span>
+example, create a session from the GemFire product directory and
+complete the following steps. Throughout this example, when you're prompted to
+enter the native client directory, replace the <span class=SpellE><code><span
+style='font-size:10.0pt'>xxxx</span></code></span> in <span class=SpellE><code><span
+style='font-size:10.0pt'>NativeClient_xxxx</span></code></span> with the actual
+four-digit product version number. Note that in the following steps, except ExecuteFunctions.exe,
+all other programs can be run on other operating system machines.</p>
+
+<p>This first session starts the Java cache server. <code><span
+style='mso-ansi-font-size:12.0pt;mso-bidi-font-size:12.0pt;font-family:"Times New Roman"'><o:p></o:p></span></code></p>
+
+</div>
+
+<p style='margin-left:.5in'><span class=SpellE><code><b><span
+style='font-size:10.0pt'>cd examples\ExecuteFunctions</span></b></code></span><b><span
+style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></b></p>
+
+
+<ol start=1 type=1>
+ <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
+     mso-list:l2 level1 lfo3;tab-stops:list .5in'>Start Java server: </li>
+</ol>
+
+<p style='margin-left:.5in'><span class=SpellE><code><b><span
+style='font-size:10.0pt'>startServer.bat</span></b></code></span><b><span
+style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></b></p>
+
+<ol start=2 type=1>
+ <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
+     mso-list:l2 level1 lfo3;tab-stops:list .5in'>Create another session and go
+     to the <span class=SpellE><code><span style='font-size:10.0pt'>cli_ExecuteFunctions</span></code></span>
+     example directory: </li>
+</ol>
+
+<p style='margin-left:.5in'><span class=SpellE><span class=GramE><code><b><span
+style='font-size:10.0pt'>cd</span></b></code></span></span><code><b><span
+style='font-size:10.0pt'> <span class=SpellE>examples\cli_ExecuteFunctions</span></span></b></code></p>
+
+<ol start=3 type=1>
+ <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
+     mso-list:l2 level1 lfo3;tab-stops:list .5in'>Start the <span class=SpellE><code><span
+     style='font-size:10.0pt'>ExecuteFunctions</span></code></span> application:</li>
+</ol>
+
+<blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'>
+
+<p><code><b><span style='margin-left:.1in;font-size:10.0pt'>ExecuteFunctions.exe</span></b></code><b><span
+style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></b></p>
+
+</blockquote>
+
+<ol start=4 type=1>
+ <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
+     mso-list:l2 level1 lfo3;tab-stops:list .5in'>Start the <code><span
+     style='font-size:10.0pt'>updater</span></code> application. In another window:</li>
+</ol>
+<br>
+<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
+margin-left:.5in'><span class=SpellE><span class=GramE><code><b><span
+style='font-size:10.0pt'>cd</span></b></code></span></span><code><b><span
+style='font-size:10.0pt'> <span class=SpellE>examples\ExecuteFunctions</span><o:p></o:p></span></b></code></p>
+
+<p style="margin-left:.25in"><code><b><span style='font-size:10.0pt'><span style='mso-spacerun:yes'>��
+</span><span class=SpellE>runUpdater.bat</span> &lt;<span class=SpellE>itr</span>
+number&gt;, where <span class=SpellE>itr</span> number is the number of
+iterations you want this program to run, <span class=SpellE>e.g</span>, 500.</span></b></code><code><span
+style='mso-ansi-font-size:12.0pt;mso-bidi-font-size:12.0pt;font-family:"Times New Roman"'><o:p></o:p></span></code></p>
+
+<ol start=5 type=1>
+ <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
+     mso-list:l2 level1 lfo3;tab-stops:list .5in'>Stop Java server. In the window where java server was started:</li>
+</ol>
+<br>
+<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
+margin-left:.5in'><span class=SpellE><code><b><span style='font-size:10.0pt'>stopServer.bat</span></b></code></span></p>
+<br>
+</div>
+
+<p class=MsoNormal><a href="#Top">Top</a> </p>
+
+<p><br>
+<p><span class=GramE>Copyright &#169; 2006-2014 Pivotal Software, Inc. All rights reserved.
+This product is protected by U.S. and international copyright and intellectual
+property laws. Pivotal products are covered by one or more patents listed at
+http://www.pivotal.io/patents. </p>
+
+</div>
+
+</body>
+
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ac967000/geode-client-native/examples/clicache/HelloWorld/DocIndex.css
----------------------------------------------------------------------
diff --git a/geode-client-native/examples/clicache/HelloWorld/DocIndex.css b/geode-client-native/examples/clicache/HelloWorld/DocIndex.css
new file mode 100644
index 0000000..4c7ce28
--- /dev/null
+++ b/geode-client-native/examples/clicache/HelloWorld/DocIndex.css
@@ -0,0 +1,1058 @@
+A.link {
+	color: blue;
+	text-decoration: underline;
+}
+A.visited {
+	color: purple;
+	text-decoration: underline;
+}
+A.active {
+	color: red;
+	text-decoration: underline;
+}
+LI.Appendix {
+	display: block;
+	text-align: left;
+	text-indent: -90.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 200.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 90.000000pt;
+	font-size: 36.000000pt;
+	font-weight: medium;
+	font-style: Italic;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.Body {
+	display: block;
+	text-align: left;
+	text-indent: 0pt;
+	margin-top: 5pt;
+	margin-bottom: 5pt;
+	margin-right: 0pt;
+	margin-left: 0pt;
+	font-size: 10pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.Body8 {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 1.000000pt;
+	margin-bottom: 5.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 8.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.Body9 {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 5.000000pt;
+	margin-bottom: 5.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 9.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+LI.Body {
+	display: block;
+	text-align: left;
+	text-indent: 0pt;
+	margin-top: 5pt;
+	margin-bottom: 5pt;
+	margin-right: 0pt;
+	margin-left: 0pt;
+	font-size: 10pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+LI.Bulleted {
+	display: block;
+	text-align: left;
+	text-indent: 0pt;
+	margin-top: 6pt;
+	margin-bottom: 6pt;
+	margin-right: 0pt;
+	margin-left: 18pt;
+	font-size: 10pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+LI.Bulleted-Indented {
+	display: block;
+	text-align: left;
+	text-indent: 0pt;
+	margin-top: 4pt;
+	margin-bottom: 4pt;
+	margin-right: 0pt;
+	margin-left: 36pt;
+	font-size: 10pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.CellBody {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 1.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.CellHeading {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 10.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+H1.Chapter, H2.Chapter, H3.Chapter, H4.Chapter, H5.Chapter, H6.Chapter {
+	display: block;
+	text-align: left;
+	text-indent: -90.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 200.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 90.000000pt;
+	font-size: 36.000000pt;
+	font-weight: medium;
+	font-style: Italic;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+LI.ChapterEA {
+	display: block;
+	text-align: left;
+	text-indent: -90.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 20.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 90.000000pt;
+	font-size: 36.000000pt;
+	font-weight: medium;
+	font-style: Italic;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+P.ChapterEA2 {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 7.000000pt;
+	margin-bottom: 7.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 14.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+P.Code {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 9.000000pt;
+	font-weight: medium;
+	font-style: normal;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Courier New";
+}
+P.Code-Indented {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 18.000000pt;
+	font-size: 9.000000pt;
+	font-weight: medium;
+	font-style: normal;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Courier New";
+}
+P.Code-Wide {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 9.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Courier New";
+}
+P.Company {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 1.000000pt;
+	margin-bottom: 1.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 1.000076pt;
+	font-size: 10.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.Company-Copyright {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 1.000076pt;
+	font-size: 8.000000pt;
+	font-weight: normal;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.date-stamp {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 6.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #ff0000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.Example-Caption {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 6.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Italic;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+P.Example-End {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 9.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+LI.Example-Title {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 10.000000pt;
+	margin-bottom: 5.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 9.000000pt;
+	font-size: 10.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+P.Figure-Caption {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 6.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Italic;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+H1.Figure-End, H2.Figure-End, H3.Figure-End, H4.Figure-End, H5.Figure-End, H6.Figure-End {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 9.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+H1.Figure-Title, H2.Figure-Title, H3.Figure-Title, H4.Figure-Title, H5.Figure-Title, H6.Figure-Title {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 10.000000pt;
+	margin-bottom: 5.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 9.000000pt;
+	font-size: 10.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+P.FigureBody10 {
+	display: block;
+	text-align: center;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+P.FigureBody10Left {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+P.FigureTag10 {
+	display: block;
+	text-align: center;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 10.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.FigureTag8 {
+	display: block;
+	text-align: center;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 8.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.FigureTag9 {
+	display: block;
+	text-align: center;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 9.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.footer {
+	display: block;
+	text-align: justify;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 8.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.Hang-Indent {
+	display: block;
+	text-align: left;
+	text-indent: -72.000000pt;
+	margin-top: 6.000000pt;
+	margin-bottom: 6.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 90.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+H1.Head-A, H2.Head-A, H3.Head-A, H4.Head-A, H5.Head-A, H6.Head-A {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 24.000000pt;
+	margin-bottom: 6.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 16.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.Head-A-noNum {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 24.000000pt;
+	margin-bottom: 6.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 16.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+H1.Head-B, H2.Head-B, H3.Head-B, H4.Head-B, H5.Head-B, H6.Head-B {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 17.000000pt;
+	margin-bottom: 6.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 14.000000pt;
+	font-weight: Bold;
+	font-style: normal;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+H1.Head-C, H2.Head-C, H3.Head-C, H4.Head-C, H5.Head-C, H6.Head-C {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 14.000000pt;
+	margin-bottom: 4.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 12.000000pt;
+	font-weight: Bold;
+	font-style: normal;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.Head-D {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 12.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 10.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.header {
+	display: block;
+	text-align: justify;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+	font-size: 8.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.Indented {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 6.000000pt;
+	margin-bottom: 6.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 18.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.IndentedTwice {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 6.000000pt;
+	margin-bottom: 6.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 36.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.Note {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 12.000000pt;
+	margin-right: 36.000000pt;
+	margin-left: 36.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Italic;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+LI.Numbered {
+	display: block;
+	text-align: left;
+	text-indent: -18.000000pt;
+	margin-top: 6.000000pt;
+	margin-bottom: 6.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 18.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+LI.Numbered-1st {
+	display: block;
+	text-align: left;
+	text-indent: -18.000000pt;
+	margin-top: 6.000000pt;
+	margin-bottom: 6.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 18.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+LI.NumberedA {
+	display: block;
+	text-align: left;
+	text-indent: -18.000000pt;
+	margin-top: 6.000000pt;
+	margin-bottom: 6.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 36.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+LI.NumberedA-1st {
+	display: block;
+	text-align: left;
+	text-indent: -18.000000pt;
+	margin-top: 6.000000pt;
+	margin-bottom: 6.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 36.000000pt;
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+H1.TableTitle, H2.TableTitle, H3.TableTitle, H4.TableTitle, H5.TableTitle, H6.TableTitle {
+	display: block;
+	text-align: left;
+	text-indent: 0.000000pt;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 9.000000pt;
+	font-size: 10.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+H1.Title-Date, H2.Title-Date, H3.Title-Date, H4.Title-Date, H5.Title-Date, H6.Title-Date {
+	display: block;
+	text-align: center;
+	text-indent: 0pt;
+	margin-top: 0pt;
+	margin-bottom: 15pt;
+	margin-right: 0pt;
+	margin-left: 0pt;
+	font-size: 12pt;
+	font-weight: medium;
+	font-style: normal;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+H1.Title2, H2.Title2, H3.Title2, H4.Title2 {
+	display: block;
+	text-align: center;
+	text-indent: 0pt;
+	margin-top: 0pt;
+	margin-bottom: 0pt;
+	margin-right: 0pt;
+	margin-left: 0pt;
+	font-size: 24pt;
+	font-weight: Bold;
+	font-style: Italic;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+H5.Title2, H6.Title2 {
+	display: block;
+	text-align: center;
+	text-indent: 0pt;
+	margin-top: 0pt;
+	margin-bottom: 0pt;
+	margin-right: 0pt;
+	margin-left: 0pt;
+	font-size: 16pt;
+	font-weight: Bold;
+	font-style: Italic;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+H1.Version, H2.Version, H3.Version, H4.Version, H5.Version, H6.Version {
+	display: block;
+	text-align: center;
+	text-indent: 0pt;
+	margin-top: 0pt;
+	margin-bottom: 0pt;
+	margin-right: 0pt;
+	margin-left: 0pt;
+	font-size: 18pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+EM.Body {
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	font-family: "Arial";
+}
+EM.Body8 {
+	font-size: 8.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+EM.Body9 {
+	font-size: 9.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	font-family: "Arial";
+}
+EM.Bold {
+	font-weight: Bold;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+}
+EM.Chapter- {
+	font-size: 75.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	vertical-align: sub;
+	font-family: "Times New Roman";
+}
+EM.Code10Bold {
+	font-size: 10.000000pt;
+	font-weight: Bold;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Courier New";
+}
+EM.Code9 {
+	font-size: 9pt;
+	font-weight: normal;
+	font-style: normal;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Courier New";
+}
+EM.FigureBody {
+	font-size: 8.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+EM.FigureBoldWhite {
+	font-weight: Bold;
+	color: #ffffff;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+}
+EM.hypertext {
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #2328a8;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+EM.Italic {
+	font-style: Italic;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+}
+EM.Subscript {
+	vertical-align: sub;
+}
+EM.Superscript {
+	vertical-align: super;
+}
+EM.Symbol9 {
+	font-size: 9.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Symbol";
+}
+EM.SymbolFont {
+	font-family: "Symbol";
+}
+EM.TagTitle {
+	font-size: 16.000000pt;
+	font-weight: medium;
+	font-style: Italic;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+EM.TextRed {
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #c45468;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+EM.URL {
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #2328a8;
+	text-decoration: underline ;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+EM.Webding {
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Webdings";
+}
+EM.webdingsRed {
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #c45468;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Webdings";
+}
+EM.webdingsRed8 {
+	font-size: 8.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #c45468;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Webdings";
+}
+EM.zd10red {
+	font-size: 10.000000pt;
+	font-weight: medium;
+	font-style: Regular;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Times New Roman";
+}
+P.Body {
+
+	display: block;
+	text-align: left;
+	text-indent: 0pt;
+	margin-top: 5pt;
+	margin-bottom: 5pt;
+	margin-right: 0pt;
+	margin-left: 0pt;
+	font-size: 10pt;
+	font-weight: normal;
+	font-style: normal;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}
+P.Body {
+
+	display: block;
+	text-align: left;
+	text-indent: 0pt;
+	margin-top: 5pt;
+	margin-bottom: 5pt;
+	margin-right: 0pt;
+	margin-left: 0pt;
+	font-size: 10pt;
+	font-weight: normal;
+	font-style: normal;
+	color: #000000;
+	text-decoration: none;
+	vertical-align: baseline;
+	text-transform: none;
+	font-family: "Arial";
+}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ac967000/geode-client-native/examples/clicache/HelloWorld/HelloWorld.cs
----------------------------------------------------------------------
diff --git a/geode-client-native/examples/clicache/HelloWorld/HelloWorld.cs b/geode-client-native/examples/clicache/HelloWorld/HelloWorld.cs
new file mode 100644
index 0000000..6dab63d
--- /dev/null
+++ b/geode-client-native/examples/clicache/HelloWorld/HelloWorld.cs
@@ -0,0 +1,99 @@
+/*=========================================================================
+ * Copyright (c) 2002-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
+ * more patents listed at http://www.pivotal.io/patents.
+ *========================================================================
+ */
+
+using System;
+
+namespace GemStone.GemFire.Cache.Examples
+{
+  class HelloWorld
+  {
+
+    #region Local constants
+
+    //private static Cache cache = null;
+    private static Region region = null;
+
+    private static string strKey = "abc";
+    private static string strValue = "Hello, World!";
+
+    private static int intKey = 777;
+    private static int intValue = 12345678;
+
+    #endregion
+
+    static void Main()
+    {
+      try
+      {
+        // Create a GemFire Cache.
+        CacheFactory cacheFactory = CacheFactory.CreateCacheFactory(null);
+        Cache cache = cacheFactory.Create();
+
+        Console.WriteLine("Created the GemFire Cache");
+
+        RegionFactory regionFactory = cache.CreateRegionFactory(RegionShortcut.LOCAL);
+
+        // Create the example Region programmatically.
+        region = regionFactory.Create("exampledsregion");
+
+        // Put some entries
+        Console.WriteLine("{0}Putting entries", Environment.NewLine);
+        PutStr(strKey, strValue);
+        PutInt(intKey, intValue);
+
+        // Get the entries
+        Console.WriteLine("{0}Getting entries", Environment.NewLine);
+        string getStr = GetStr(strKey);
+        int getInt = GetInt(intKey);
+
+        // Close cache 
+        cache.Close();
+        Console.WriteLine("Closed the cache.");
+       
+      }
+      catch (Exception ex)
+      {
+        Console.WriteLine("{0}An exception occurred: {1}", Environment.NewLine, ex);
+        Console.WriteLine("---[ Press <Enter> to End the Application ]---");
+        Console.ReadLine();
+      }
+    }
+
+    #region Local functions
+
+    public static void PutInt(int key, int value)
+    {
+      region.Put(key, value);
+      Console.WriteLine("    Put integer -- key: " + key + "   value: " + value);
+    }
+
+    public static int GetInt(int key)
+    {
+      CacheableInt32 cValue = region.Get(key) as CacheableInt32;
+
+      Console.WriteLine("    Get integer -- key: " + key + "   value: " + cValue.Value);
+      return cValue.Value;
+    }
+
+    public static void PutStr(string key, string value)
+    {
+      region.Put(key, value);
+      Console.WriteLine("    Put string  -- key: " + key + "   value: " + value);
+    }
+
+    public static string GetStr(string key)
+    {
+      IGFSerializable cValue = region.Get(key);
+
+      Console.WriteLine("    Get string  -- key: " + key + "   value: " + cValue);
+      return cValue.ToString();
+    }
+
+    #endregion
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ac967000/geode-client-native/examples/clicache/HelloWorld/HelloWorld.csproj
----------------------------------------------------------------------
diff --git a/geode-client-native/examples/clicache/HelloWorld/HelloWorld.csproj b/geode-client-native/examples/clicache/HelloWorld/HelloWorld.csproj
new file mode 100644
index 0000000..c0473c4
--- /dev/null
+++ b/geode-client-native/examples/clicache/HelloWorld/HelloWorld.csproj
@@ -0,0 +1,85 @@
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>8.0.50727</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{5DE79CEE-BEE8-404E-8365-2AE742001EEA}</ProjectGuid>
+    <OutputType>Exe</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>GemStone.GemFire.Cache.Examples</RootNamespace>
+    <AssemblyName>HelloWorld</AssemblyName>
+    <FileUpgradeFlags>
+    </FileUpgradeFlags>
+    <OldToolsVersion>2.0</OldToolsVersion>
+    <UpgradeBackupLocation>
+    </UpgradeBackupLocation>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <IntermediateOutputPath>$(OSBUILDDIR)\examples\clicache\Debug\HelloWorld\</IntermediateOutputPath>
+    <OutputPath>$(OSBUILDDIR)\examples\clicache\Debug\HelloWorld\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <PlatformTarget>x86</PlatformTarget>
+    <NoWarn>618</NoWarn>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <IntermediateOutputPath>$(OSBUILDDIR)\examples\clicache\HelloWorld\</IntermediateOutputPath>
+    <OutputPath>$(OSBUILDDIR)\examples\clicache\HelloWorld\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <PlatformTarget>x86</PlatformTarget>
+    <NoWarn>618</NoWarn>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
+    <DebugSymbols>true</DebugSymbols>
+    <IntermediateOutputPath>$(OSBUILDDIR)\examples\clicache\Debug\HelloWorld\</IntermediateOutputPath>
+    <OutputPath>$(OSBUILDDIR)\examples\clicache\Debug\HelloWorld\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <PlatformTarget>x64</PlatformTarget>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <NoWarn>618</NoWarn>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
+    <IntermediateOutputPath>$(OSBUILDDIR)\examples\clicache\HelloWorld\</IntermediateOutputPath>
+    <OutputPath>$(OSBUILDDIR)\examples\clicache\HelloWorld\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <Optimize>true</Optimize>
+    <DebugType>pdbonly</DebugType>
+    <PlatformTarget>x64</PlatformTarget>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <NoWarn>618</NoWarn>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="HelloWorld.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\..\..\vs_projects\gfclicache\gfclicache.vcproj">
+      <Project>{B274E3B1-6A09-4322-952B-8BDA712892CE}</Project>
+      <Name>gfclicache</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ac967000/geode-client-native/examples/clicache/HelloWorld/HelloWorld.csproj.user
----------------------------------------------------------------------
diff --git a/geode-client-native/examples/clicache/HelloWorld/HelloWorld.csproj.user b/geode-client-native/examples/clicache/HelloWorld/HelloWorld.csproj.user
new file mode 100644
index 0000000..957e734
--- /dev/null
+++ b/geode-client-native/examples/clicache/HelloWorld/HelloWorld.csproj.user
@@ -0,0 +1,5 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ReferencePath>$(OSBUILDDIR)\hidden\lib\</ReferencePath>
+  </PropertyGroup>
+</Project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ac967000/geode-client-native/examples/clicache/HelloWorld/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/geode-client-native/examples/clicache/HelloWorld/Properties/AssemblyInfo.cs b/geode-client-native/examples/clicache/HelloWorld/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..3326db0
--- /dev/null
+++ b/geode-client-native/examples/clicache/HelloWorld/Properties/AssemblyInfo.cs
@@ -0,0 +1,33 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("GemFireHelloWorld")]
+[assembly: AssemblyDescription("GemFire Simple PutGet Example")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("GemStone Systems Inc.")]
+[assembly: AssemblyProduct("GemFireHelloWorld")]
+[assembly: AssemblyCopyright("Copyright © GemStone Systems Inc. 2008")]
+[assembly: AssemblyTrademark("All Rights Reserved")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible 
+// to COM components.  If you need to access a type in this assembly from 
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("5b9cfc0d-3951-4b9f-9ffd-f7a50e9d2f1a")]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+//
+[assembly: AssemblyVersion("9.0.0.0")]
+[assembly: AssemblyFileVersion("9.0.0.0")]

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ac967000/geode-client-native/examples/clicache/HelloWorld/README.html
----------------------------------------------------------------------
diff --git a/geode-client-native/examples/clicache/HelloWorld/README.html b/geode-client-native/examples/clicache/HelloWorld/README.html
new file mode 100644
index 0000000..56d8ce8
--- /dev/null
+++ b/geode-client-native/examples/clicache/HelloWorld/README.html
@@ -0,0 +1,117 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<HTML>
+	<HEAD>
+		<TITLE>HelloWorld: Pivotal GemFire Native&#174; Client C# Example</TITLE>
+		<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+		<META http-equiv="Content-Style-Type" content="text/css">
+		<META content="Adobe FrameMaker 7.0/HTML Export Filter" name="GENERATOR">
+		<LINK href="DocIndex.css" type="text/css" charset="ISO-8859-1" rel="STYLESHEET">
+			<style type="text/css">.style1 { FONT-FAMILY: "Courier New" }
+	BODY { BACKGROUND-COLOR: #ffffff }
+        <IMG SRC="../../../docs/PIVOTAL_GemFire_190x81.png" BORDER="0">
+	.style5 { FONT-WEIGHT: bold }
+	</style>
+	</HEAD>
+	<BODY>
+		<DIV>
+			<H4 class="Title2">HelloWorld</H4>
+			<P></P>
+			<H5 class="Title2"><A name="pgfId-1003977"></A>Pivotal GemFire&#174; Native Client C#
+				<H5 class="Title2"><A name="pgfId-1003982"></A>C# API Programming Example
+					<P></P>
+					<P class="Body"><A name="pgfId-1005899"></A>The <EM class="Code9">HelloWorld</EM> example 
+						demonstrates the simplest functionality of the GemFire Native Client C# product:
+					</P>
+					<OL class="Body">						
+						<LI class="Body">
+							<P class="Body">Create a GemFire cache.</P>
+						<LI class="Body">
+							<P class="Body">Create a local region.</P>
+						<LI class="Body">
+							<P class="Body">Put some keys and values into the region.</P>
+						<LI class="Body">
+							<P class="Body">Get those&nbsp;keys and values.</P>
+						<LI class="Body">
+							<P class="Body">Close the cache.</P>
+						</LI>
+					</OL>
+					<br>
+					<P class="Body"></EM>The sample code is located in the Native Client SampleCode <EM class="Code9">examples/HelloWorld</EM>.
+					</P>
+					<P class="Body"></EM>To view the GemFire manuals, the online API documentation, and 
+						the complete set of examples, see <EM class="Code9">docs/index.html</EM> in the Native Client Installation.
+					</P>
+					<EM class="Code9 style1">
+						<H2 class="Head-B"><A name="pgfId-1004038"></A>Setting Up the Environment
+							<P></P>
+							<P class="Body">Verify that there is a valid&nbsp;<EM class="Code9">gfCppLicense.zip </EM>
+								file, version 1.1, in the&nbsp;<EM class="Italic">GemFireProductDirectory</EM>.</P>
+							<P class="Body">Create a file in the projects&nbsp; <EM class="Code9">.../bin</EM>
+								directory named&nbsp;<EM class="Code9">gfcpp.properties</EM> containing the 
+								following two&nbsp;lines:</P>
+							<P class="Code-Indented"></A><A name="pgfId-1004053"># turn off most log messages </A>
+							</P>
+							<P class="Code-Indented">log-level=error&nbsp;
+							</P>
+							<P class="Body">The GemFire - C# product requires an environment variable, <FONT face="Courier New">GFCPP</FONT> for the product base path.</P>
+							<P class="Body">Cygwin:</P>
+							<P class="Code-Indented"><A name="pgfId-1004040"></A>export GFCPP=<EM class="Italic">GemFireProductDirectory</EM>
+							</P>
+							<P class="Code-Indented"><A name="pgfId-1004041"></A>export PATH=$GFCPP/bin:$PATH</P>
+							<P class="Body"><A name="pgfId-1004043"></A>Windows:</P>
+							<P class="Code-Indented"><A name="pgfId-1004041"></A>set GFCPP=<EM class="Italic">GemFireProductDirectory</EM>&nbsp;&nbsp;</P>
+							<P class="Code-Indented">PATH=%GFCPP%/bin;%PATH%</A></P>
+							<H2 class="Head-B"><A name="pgfId-1006430"></A>Running&nbsp;HelloWorld
+								<P></P>
+								<P class="Body"><A name="pgfId-1006097"></A>Run the <EM class="Code9">HelloWorld</EM>
+								executable. There are no command line arguments.
+								<P class="Body">Cygwin:</P>
+								<P class="Code-Indented">cd .../bin</P>
+								<P class="Code-Indented">./HelloWorld.exe
+								</P>
+								<P class="Code-Indented">
+								</P>
+								<P class="Body"><A name="pgfId-1004043"></A>Windows:
+								</P>
+								<STRONG><FONT face="Courier New">
+										<P class="Code-Indented">cd ...\bin</P>
+										<P class="Code-Indented">HelloWorld.exe
+										</P>
+										<P class="Code-Indented">
+									</FONT></STRONG><STRONG><FONT face="Courier New"></FONT></STRONG>
+								<P class="Body">&nbsp;</P>
+								<P class="Body">The output is:
+								</P>
+								<P class="Code-Indented">
+									<EM CLASS="Code9">Created the GemFire Cache</EM></P>
+								<P class="Code-Indented"><EM class="Code9"> </EM>
+								</P>
+								<P class="Code-Indented"><EM class="Code9">Putting entries </EM>
+								</P>
+								<P class="Code-Indented"><EM class="Code9"> Put string &nbsp;-- key: abc value: Hello, 
+										world! </EM>
+								</P>
+								<P class="Code-Indented"><EM class="Code9"><EM class="Code9"></EM><EM class="Code9"></EM><EM class="Code9"></EM>
+										Put integer -- key: 777 value: 12345678 </EM>
+								</P>
+								<P class="Code-Indented"><EM class="Code9"> </EM>
+								</P>
+								<P class="Code-Indented"><EM class="Code9">Getting entries </EM>
+								</P>
+								<P class="Code-Indented"><EM class="Code9"> Get string &nbsp;-- key: abc value: Hello, 
+										world! </EM>
+								</P>
+								<P class="Code-Indented"><EM class="Code9"> Get integer -- key: 777 value: 12345678 </EM>
+								</P>
+								<P class="Code-Indented"><EM class="Code9"></EM>&nbsp;</P>
+								<P class="Code-Indented"><EM class="Code9"> Closed the cache.</EM></P>
+								<P></P>
+								<P></P>
+								<P CLASS="Company">&nbsp;</P>
+								<P CLASS="Company-Copyright">Copyright &#169; 2006-2014 Pivotal Software, Inc. All rights reserved.  This product is protected by U.S. and international copyright and intellectual property laws. Pivotal products are covered by one or more patents listed at http://www.pivotal.io/patents.</P>
+								<P CLASS="Body">
+									<A NAME="pgfId-998290"></A>&nbsp;</P>
+		</DIV>
+		</H2></H2></EM></H5></H5>
+	</BODY>
+</HTML>

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ac967000/geode-client-native/examples/clicache/HierarchicalClient/HierarchicalClient.cs
----------------------------------------------------------------------
diff --git a/geode-client-native/examples/clicache/HierarchicalClient/HierarchicalClient.cs b/geode-client-native/examples/clicache/HierarchicalClient/HierarchicalClient.cs
new file mode 100755
index 0000000..e4f92d7
--- /dev/null
+++ b/geode-client-native/examples/clicache/HierarchicalClient/HierarchicalClient.cs
@@ -0,0 +1,256 @@
+/*=========================================================================
+ * Copyright (c) 2002-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
+ * more patents listed at http://www.pivotal.io/patents.
+ *=========================================================================
+ * 
+ * This example demonstrates client/server caching. This is a classic
+ * client-server architecture (versus peer-to-peer). This program starts a client 
+ * that connects to a server so it can request, update, and delete data. 
+ * 
+ * While this example uses a console application, it is not a requirement.
+ * 
+ * Please note that this example requires that the GemFire HierarchicalServer
+ * process to be running prior to execution.  To start the HierarchicalServer
+ * QuickStart example, please refer to the GemFire Quickstart documentation.
+ *
+//////////////////////////////////////////////////////////////////////////////*/
+using System;
+
+// These namespaces provide access to classes needed to interact with GemFire.
+using GemStone.GemFire.Cache;
+
+public class HierarchicalClient
+{
+  public static void Main()
+  {
+    DistributedSystem MyDistributedSystem = null;
+    Cache MyCache = null;
+    string sKey = null;
+    CacheableString sValue = null;
+
+    try
+    {
+      Console.WriteLine("* Connecting to the distributed system and creating the cache.");
+
+      /* Properties can be passed to GemFire through two different mechanisms: the 
+       * Properties object as is done below or the gemfire.properties file. The 
+       * settings passed in a Properties object take precedence over any settings
+       * in a file. This way the end-user cannot bypass any required settings.
+       * 
+       * Using a gemfire.properties file can be useful when you want to change the 
+       * behavior of certain settings without doing a new build, test, and deploy cycle.
+       * 
+       * See gemfire.properties for details on some of the other settings used in this 
+       * project.
+       * 
+       * For details on all of the possible settings and their respective values 
+       * that can be specified in this configuration file, see chapter 5, 
+       * "System Configuration", in the "System Administrator's Guide". This is
+       * installed in the docs\pdf folder under the GemFire installation folder
+       * (e.g., C:\Program Files\Gemfire5\docs\pdf\SystemAdmin.pdf).
+      */
+      Properties DistributedSystemProperties = new Properties();
+
+      DistributedSystemProperties.Insert("name", "CacheClient");
+
+      /* Specify the file whose contents are used to initialize the cache when it is created.
+       * 
+       * An XML file isn't needed at all because everything can be specified in  code--much
+       * as the "license-file" property is. However, it provides a convenient way
+       * to isolate common settings that can be updated without a build/test/deploy cycle.
+      */
+      DistributedSystemProperties.Insert("cache-xml-file", "HierarchicalClient.xml");
+
+      /* Define where the license file is located. It is very useful to do this in
+       * code vs. the gemfire.properties file, because it allows you to access the
+       * license used by the GemFire installation (as pointed to by the GEMFIRE
+       * environment variable).
+      */
+      DistributedSystemProperties.Insert("license-file", "../../gfCppLicense.zip");
+
+      DistributedSystemProperties.Insert("log-file", "./csharpclient.log");
+      DistributedSystemProperties.Insert("log-level", "finest");
+
+      /* Override the mcast-port setting so the client runs "standalone".
+         The client and server must run in separate distributed systems.
+      */
+      //DistributedSystemProperties.Insert("mcast-port", "0");
+
+      // Connect to the GemFire distributed system.
+      MyDistributedSystem = DistributedSystem.Connect("LocalDS", DistributedSystemProperties);
+
+      /*//////////////////////////////////////////////////////////////////////////////
+       * 
+       * Create the cache.
+       * 
+      //////////////////////////////////////////////////////////////////////////////*/
+
+      // Create the cache. This causes the cache-xml-file to be parsed.
+      MyCache = CacheFactory.Create("localCache", MyDistributedSystem);
+
+      /*//////////////////////////////////////////////////////////////////////////////
+       * 
+       * Create the region.
+       * 
+      //////////////////////////////////////////////////////////////////////////////*/
+
+      // Prepare the attributes needed to create a sub-region.
+      AttributesFactory MyAttributesFactory = new AttributesFactory();
+
+      /* The "scope" determines how changes to the local cache are "broadcast"
+       * to like-named regions in other caches.
+       * 
+       * For native clients DistributedAck and DistributedNoAck work
+       * identically.
+      */
+      MyAttributesFactory.SetScope(ScopeType.DistributedAck);
+
+      /* Endpoints is a  comma delimited list of logical names, hostnames, and ports of 
+       * "server" caches with which to connect. The endpoints parameter follows this syntax: 
+       * 
+       *      logicalName1=host1:port1, . . . ,logicalNameN=hostN:portN
+      */
+      MyAttributesFactory.SetEndpoints("localhost:40404");
+      MyAttributesFactory.SetClientNotificationEnabled(true);
+
+      /* Because of implementation details, it is best not to cache data in a root-level 
+       * region. There is nothing special about the name "root", it is just a good naming
+       * convention.
+       * 
+       * Get the "root" region from the cache and create a sub-region under it for the
+       * data.
+      */
+      Region MyExampleRegion = MyCache.GetRegion("root").CreateSubRegion(
+        "exampleRegion", MyAttributesFactory.CreateRegionAttributes());
+
+      Console.WriteLine(String.Format("{0}* Region, {1}, was created in the cache.",
+        Environment.NewLine, MyExampleRegion.FullPath));
+      Console.WriteLine("* Getting three values from the Hierarchical Server.");
+
+      // Retrieve several values from the cache.
+      for (int nCount = 0; nCount < 4; nCount++)
+      {
+        sKey = string.Format("Key{0}", nCount);
+
+        Console.WriteLine(String.Format("* Requesting object: {0}{1}",
+          sKey, Environment.NewLine));
+
+        /* Request the object from the cache. Because it doesn't exist in the local
+         * cache, it will be passed to the server. Because the server doesn't have
+         * it, the request will be passed to SimpleCacheLoader.Load().  The entry 
+         * returned is a string.
+        */
+        sValue = MyExampleRegion.Get(sKey) as CacheableString;
+
+        Console.WriteLine(String.Format("* Retrieved object: ({0})", sValue.ToString()));
+      }
+
+      Console.WriteLine("* If you look at the Cache Server's console, you can see the CacheListener notifications that happened in response to the gets.");
+      Console.WriteLine("{0}---[ Press <Enter> to continue. ]---", Environment.NewLine);
+
+
+      Console.ReadLine();
+
+      /*//////////////////////////////////////////////////////////////////////////////
+       * 
+       * Exercise the serialization and deserialization methods.
+       * 
+      //////////////////////////////////////////////////////////////////////////////*/
+
+      // Demonstrate the process needed to manually deserialize the object from the cache.
+      Console.WriteLine(string.Format("* Manually deserializing the object for Key0: ({0})", MyExampleRegion.Get("Key0")));
+
+      // Demonstrate the static FromCache method in the CachedItem class and modify the object.
+      Console.WriteLine("* Using the FromCache() method and modifying the object for Key0");
+
+      // Get the item.
+      //sValue = (CacheableString)MyExampleRegion.Get("Key0");
+      sValue = MyExampleRegion.Get("Key0") as CacheableString;
+
+      Console.WriteLine(string.Format("* Original value: ({0})", sValue.ToString()));
+
+      /* This modifies the object associated with Key0 and uses CacheSerializer
+       * to perform manual serialization.
+      */
+      String cachedItem = "PDA";
+      MyExampleRegion.Put("Key0", cachedItem);
+
+      // Reread the object from the cache.
+      sValue = (CacheableString)MyExampleRegion.Get("Key0");
+
+      Console.WriteLine(string.Format("* Retrieved updated object: {0}", sValue));
+
+      Console.WriteLine("* Invalidating the data for Key2");
+
+      /* Invalidating a cached item causes the object to be removed, but the 
+       * key remains in the cache. If it is subsequently requested it will
+       * be retrieved using a CacheLoader if possible. 
+      */
+      MyExampleRegion.Invalidate("Key2");
+
+      Console.WriteLine("* Requesting Key2 after the invalidation.");
+
+      // Request the invalidated item.
+      sValue = (CacheableString)MyExampleRegion.Get("Key2");
+
+      Console.WriteLine(string.Format("* Retrieved object: {0}", sValue));
+
+      Console.WriteLine("* Destroying Key3");
+
+      // Destroying a cached item removes both the object and the key.
+      MyExampleRegion.Destroy("Key3");
+
+      Console.WriteLine("{0}---[ Press <Enter> to End the Application ]---",
+        Environment.NewLine);
+      Console.ReadLine();
+    }
+    catch (Exception ThrownException)
+    {
+      Console.Error.WriteLine(ThrownException.Message);
+      Console.Error.WriteLine(ThrownException.StackTrace);
+      Console.Error.WriteLine("---[ Press <Enter> to End the Application ]---");
+      Console.ReadLine();
+    }
+    finally
+    {
+      /* While there are not any ramifications of terminating without closing the cache
+       * and disconnecting from the distributed system, it is considered a best practice
+       * to do so.
+      */
+      try
+      {
+        Console.WriteLine("Closing the cache and disconnecting.{0}",
+          Environment.NewLine);
+      }
+      catch {/* Ignore any exceptions */}
+
+      try
+      {
+        /* Close the cache. This terminates the cache and releases all the resources. 
+         * Generally speaking, after a cache is closed, any further method calls on 
+         * it or region object will throw an exception.
+        */
+        MyCache.Close();
+      }
+      catch {/* Ignore any exceptions */}
+
+      try
+      {
+        /* Disconnect from the distributed system.                
+        */
+        MyDistributedSystem = null;
+      }
+      catch {/* Ignore any exceptions */}
+    }
+  }
+
+  public static string GetStr(string key, Region region)
+  {
+    IGFSerializable cValue = region.Get(key);
+
+    Console.WriteLine("    Get string  -- key: " + key + "   value: " + cValue.ToString());
+    return cValue.ToString();
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ac967000/geode-client-native/examples/clicache/HierarchicalClient/HierarchicalClient.csproj
----------------------------------------------------------------------
diff --git a/geode-client-native/examples/clicache/HierarchicalClient/HierarchicalClient.csproj b/geode-client-native/examples/clicache/HierarchicalClient/HierarchicalClient.csproj
new file mode 100755
index 0000000..ba70e16
--- /dev/null
+++ b/geode-client-native/examples/clicache/HierarchicalClient/HierarchicalClient.csproj
@@ -0,0 +1,86 @@
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>8.0.50727</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{6F9455A8-866A-4405-8354-449BC6CDFD46}</ProjectGuid>
+    <OutputType>Exe</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>GemStone.GemFire.Cache.Examples</RootNamespace>
+    <AssemblyName>HierarchicalClient</AssemblyName>
+    <FileUpgradeFlags>
+    </FileUpgradeFlags>
+    <OldToolsVersion>2.0</OldToolsVersion>
+    <UpgradeBackupLocation>
+    </UpgradeBackupLocation>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <IntermediateOutputPath>$(OSBUILDDIR)\examples\clicache\Debug\HierarchicalClient\</IntermediateOutputPath>
+    <OutputPath>$(OSBUILDDIR)\examples\clicache\Debug\HierarchicalClient\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <DocumentationFile />
+    <PlatformTarget>x86</PlatformTarget>
+    <NoWarn>618</NoWarn>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <IntermediateOutputPath>$(OSBUILDDIR)\examples\clicache\HierarchicalClient\</IntermediateOutputPath>
+    <OutputPath>$(OSBUILDDIR)\examples\clicache\HierarchicalClient\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <PlatformTarget>x86</PlatformTarget>
+    <NoWarn>618</NoWarn>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
+    <DebugSymbols>true</DebugSymbols>
+    <IntermediateOutputPath>$(OSBUILDDIR)\examples\clicache\Debug\HierarchicalClient\</IntermediateOutputPath>
+    <OutputPath>$(OSBUILDDIR)\examples\clicache\Debug\HierarchicalClient\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <PlatformTarget>x64</PlatformTarget>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <NoWarn>618</NoWarn>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
+    <IntermediateOutputPath>$(OSBUILDDIR)\examples\clicache\HierarchicalClient\</IntermediateOutputPath>
+    <OutputPath>$(OSBUILDDIR)\examples\clicache\HierarchicalClient\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <Optimize>true</Optimize>
+    <DebugType>pdbonly</DebugType>
+    <PlatformTarget>x64</PlatformTarget>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <NoWarn>618</NoWarn>
+  </PropertyGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\..\..\vs_projects\gfclicache\gfclicache.vcproj">
+      <Project>{B274E3B1-6A09-4322-952B-8BDA712892CE}</Project>
+      <Name>gfclicache</Name>
+    </ProjectReference>
+    <Reference Include="System" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="HierarchicalClient.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ac967000/geode-client-native/examples/clicache/HierarchicalClient/HierarchicalClient.xml
----------------------------------------------------------------------
diff --git a/geode-client-native/examples/clicache/HierarchicalClient/HierarchicalClient.xml b/geode-client-native/examples/clicache/HierarchicalClient/HierarchicalClient.xml
new file mode 100644
index 0000000..4be0995
--- /dev/null
+++ b/geode-client-native/examples/clicache/HierarchicalClient/HierarchicalClient.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" ?>
+<cache>
+  <!-- Create a root region. The sub-region is created in code. -->
+  <region name="root">
+    <region-attributes scope="distributed-no-ack" endpoints="localhost:40404"/>
+  </region>
+</cache>

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ac967000/geode-client-native/examples/clicache/HierarchicalClient/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/geode-client-native/examples/clicache/HierarchicalClient/Properties/AssemblyInfo.cs b/geode-client-native/examples/clicache/HierarchicalClient/Properties/AssemblyInfo.cs
new file mode 100755
index 0000000..3edf8eb
--- /dev/null
+++ b/geode-client-native/examples/clicache/HierarchicalClient/Properties/AssemblyInfo.cs
@@ -0,0 +1,33 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("Quick Start Examples")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("GemStone Systems, Inc.")]
+[assembly: AssemblyProduct("Quick Start Examples")]
+[assembly: AssemblyCopyright("Copyright © GemStone Systems, Inc. 2008")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible 
+// to COM components.  If you need to access a type in this assembly from 
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("ed332c93-70a1-4152-bd7f-8cf6cbf38528")]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+//
+[assembly: AssemblyVersion("9.0.0.0")]
+[assembly: AssemblyFileVersion("9.0.0.0")]


Mime
View raw message