Author: buildbot
Date: Fri Dec  4 19:47:13 2015
New Revision: 974573

Log:
Staging update by buildbot for thrift

Modified:
    websites/staging/thrift/trunk/content/   (props changed)
    websites/staging/thrift/trunk/content/tutorial/go.html

Propchange: websites/staging/thrift/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Dec  4 19:47:13 2015
@@ -1 +1 @@
-1717100
+1718014

Modified: websites/staging/thrift/trunk/content/tutorial/go.html
==============================================================================
--- websites/staging/thrift/trunk/content/tutorial/go.html (original)
+++ websites/staging/thrift/trunk/content/tutorial/go.html Fri Dec  4 19:47:13 
2015
@@ -257,6 +257,106 @@ h2:hover > .headerlink, h3:hover > .head
   <a 
href="http://git-wip-us.apache.org/repos/asf?p=thrift.git;a=blob;f=tutorial/go/src/server.go;hb=HEAD";</a>tutorial/go/src/server.go</a>
 </p>
 
+<h3 id="server-handler">Server Handler<a class="headerlink" 
href="#server-handler" title="Permanent link">&para;</a></h3>
+<style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, 
h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, 
dt:hover > .elementid-permalink { visibility: visible }</style>
+
+<div class="codehilite"><pre><span class="n">import</span> <span 
class="p">(</span>
+    <span class="s">&quot;fmt&quot;</span>
+    <span class="s">&quot;shared&quot;</span>
+    <span class="s">&quot;strconv&quot;</span>
+    <span class="s">&quot;tutorial&quot;</span>
+<span class="p">)</span>
+
+<span class="n">type</span> <span class="n">CalculatorHandler</span> <span 
class="k">struct</span> <span class="p">{</span>
+    <span class="n">log</span> <span class="n">map</span><span 
class="p">[</span><span class="kt">int</span><span class="p">]</span><span 
class="o">*</span><span class="n">shared</span><span class="p">.</span><span 
class="n">SharedStruct</span>
+<span class="p">}</span>
+
+<span class="n">func</span> <span class="n">NewCalculatorHandler</span><span 
class="p">()</span> <span class="o">*</span><span 
class="n">CalculatorHandler</span> <span class="p">{</span>
+    <span class="k">return</span> <span class="o">&amp;</span><span 
class="n">CalculatorHandler</span><span class="p">{</span><span 
class="nl">log:</span> <span class="n">make</span><span class="p">(</span><span 
class="n">map</span><span class="p">[</span><span class="kt">int</span><span 
class="p">]</span><span class="o">*</span><span class="n">shared</span><span 
class="p">.</span><span class="n">SharedStruct</span><span class="p">)}</span>
+<span class="p">}</span>
+
+<span class="n">func</span> <span class="p">(</span><span class="n">p</span> 
<span class="o">*</span><span class="n">CalculatorHandler</span><span 
class="p">)</span> <span class="n">Ping</span><span class="p">()</span> <span 
class="p">(</span><span class="n">err</span> <span class="n">error</span><span 
class="p">)</span> <span class="p">{</span>
+    <span class="n">fmt</span><span class="p">.</span><span 
class="n">Print</span><span class="p">(</span><span 
class="s">&quot;ping()</span><span class="se">\n</span><span 
class="s">&quot;</span><span class="p">)</span>
+    <span class="k">return</span> <span class="n">nil</span>
+<span class="p">}</span>
+
+<span class="n">func</span> <span class="p">(</span><span class="n">p</span> 
<span class="o">*</span><span class="n">CalculatorHandler</span><span 
class="p">)</span> <span class="n">Add</span><span class="p">(</span><span 
class="n">num1</span> <span class="n">int32</span><span class="p">,</span> 
<span class="n">num2</span> <span class="n">int32</span><span 
class="p">)</span> <span class="p">(</span><span class="n">retval17</span> 
<span class="n">int32</span><span class="p">,</span> <span class="n">err</span> 
<span class="n">error</span><span class="p">)</span> <span class="p">{</span>
+    <span class="n">fmt</span><span class="p">.</span><span 
class="n">Print</span><span class="p">(</span><span 
class="s">&quot;add(&quot;</span><span class="p">,</span> <span 
class="n">num1</span><span class="p">,</span> <span 
class="s">&quot;,&quot;</span><span class="p">,</span> <span 
class="n">num2</span><span class="p">,</span> <span 
class="s">&quot;)</span><span class="se">\n</span><span 
class="s">&quot;</span><span class="p">)</span>
+    <span class="k">return</span> <span class="n">num1</span> <span 
class="o">+</span> <span class="n">num2</span><span class="p">,</span> <span 
class="n">nil</span>
+<span class="p">}</span>
+
+<span class="n">func</span> <span class="p">(</span><span class="n">p</span> 
<span class="o">*</span><span class="n">CalculatorHandler</span><span 
class="p">)</span> <span class="n">Calculate</span><span 
class="p">(</span><span class="n">logid</span> <span 
class="n">int32</span><span class="p">,</span> <span class="n">w</span> <span 
class="o">*</span><span class="n">tutorial</span><span class="p">.</span><span 
class="n">Work</span><span class="p">)</span> <span class="p">(</span><span 
class="n">val</span> <span class="n">int32</span><span class="p">,</span> <span 
class="n">err</span> <span class="n">error</span><span class="p">)</span> <span 
class="p">{</span>
+    <span class="n">fmt</span><span class="p">.</span><span 
class="n">Print</span><span class="p">(</span><span 
class="s">&quot;calculate(&quot;</span><span class="p">,</span> <span 
class="n">logid</span><span class="p">,</span> <span class="s">&quot;, 
{&quot;</span><span class="p">,</span> <span class="n">w</span><span 
class="p">.</span><span class="n">Op</span><span class="p">,</span> <span 
class="s">&quot;,&quot;</span><span class="p">,</span> <span 
class="n">w</span><span class="p">.</span><span class="n">Num1</span><span 
class="p">,</span> <span class="s">&quot;,&quot;</span><span class="p">,</span> 
<span class="n">w</span><span class="p">.</span><span 
class="n">Num2</span><span class="p">,</span> <span 
class="s">&quot;})</span><span class="se">\n</span><span 
class="s">&quot;</span><span class="p">)</span>
+    <span class="k">switch</span> <span class="n">w</span><span 
class="p">.</span><span class="n">Op</span> <span class="p">{</span>
+    <span class="k">case</span> <span class="n">tutorial</span><span 
class="p">.</span><span class="nl">Operation_ADD:</span>
+        <span class="n">val</span> <span class="o">=</span> <span 
class="n">w</span><span class="p">.</span><span class="n">Num1</span> <span 
class="o">+</span> <span class="n">w</span><span class="p">.</span><span 
class="n">Num2</span>
+        <span class="k">break</span>
+    <span class="k">case</span> <span class="n">tutorial</span><span 
class="p">.</span><span class="nl">Operation_SUBTRACT:</span>
+        <span class="n">val</span> <span class="o">=</span> <span 
class="n">w</span><span class="p">.</span><span class="n">Num1</span> <span 
class="o">-</span> <span class="n">w</span><span class="p">.</span><span 
class="n">Num2</span>
+        <span class="k">break</span>
+    <span class="k">case</span> <span class="n">tutorial</span><span 
class="p">.</span><span class="nl">Operation_MULTIPLY:</span>
+        <span class="n">val</span> <span class="o">=</span> <span 
class="n">w</span><span class="p">.</span><span class="n">Num1</span> <span 
class="o">*</span> <span class="n">w</span><span class="p">.</span><span 
class="n">Num2</span>
+        <span class="k">break</span>
+    <span class="k">case</span> <span class="n">tutorial</span><span 
class="p">.</span><span class="nl">Operation_DIVIDE:</span>
+        <span class="k">if</span> <span class="n">w</span><span 
class="p">.</span><span class="n">Num2</span> <span class="o">==</span> <span 
class="mi">0</span> <span class="p">{</span>
+            <span class="n">ouch</span> <span class="o">:=</span> <span 
class="n">tutorial</span><span class="p">.</span><span 
class="n">NewInvalidOperation</span><span class="p">()</span>
+            <span class="n">ouch</span><span class="p">.</span><span 
class="n">WhatOp</span> <span class="o">=</span> <span 
class="n">int32</span><span class="p">(</span><span class="n">w</span><span 
class="p">.</span><span class="n">Op</span><span class="p">)</span>
+            <span class="n">ouch</span><span class="p">.</span><span 
class="n">Why</span> <span class="o">=</span> <span class="s">&quot;Cannot 
divide by 0&quot;</span>
+            <span class="n">err</span> <span class="o">=</span> <span 
class="n">ouch</span>
+            <span class="k">return</span>
+        <span class="p">}</span>
+        <span class="n">val</span> <span class="o">=</span> <span 
class="n">w</span><span class="p">.</span><span class="n">Num1</span> <span 
class="o">/</span> <span class="n">w</span><span class="p">.</span><span 
class="n">Num2</span>
+        <span class="k">break</span>
+    <span class="k">default</span><span class="o">:</span>
+        <span class="n">ouch</span> <span class="o">:=</span> <span 
class="n">tutorial</span><span class="p">.</span><span 
class="n">NewInvalidOperation</span><span class="p">()</span>
+        <span class="n">ouch</span><span class="p">.</span><span 
class="n">WhatOp</span> <span class="o">=</span> <span 
class="n">int32</span><span class="p">(</span><span class="n">w</span><span 
class="p">.</span><span class="n">Op</span><span class="p">)</span>
+        <span class="n">ouch</span><span class="p">.</span><span 
class="n">Why</span> <span class="o">=</span> <span class="s">&quot;Unknown 
operation&quot;</span>
+        <span class="n">err</span> <span class="o">=</span> <span 
class="n">ouch</span>
+        <span class="k">return</span>
+    <span class="p">}</span>
+    <span class="n">entry</span> <span class="o">:=</span> <span 
class="n">shared</span><span class="p">.</span><span 
class="n">NewSharedStruct</span><span class="p">()</span>
+    <span class="n">entry</span><span class="p">.</span><span 
class="n">Key</span> <span class="o">=</span> <span class="n">logid</span>
+    <span class="n">entry</span><span class="p">.</span><span 
class="n">Value</span> <span class="o">=</span> <span 
class="n">strconv</span><span class="p">.</span><span 
class="n">Itoa</span><span class="p">(</span><span class="kt">int</span><span 
class="p">(</span><span class="n">val</span><span class="p">))</span>
+    <span class="n">k</span> <span class="o">:=</span> <span 
class="kt">int</span><span class="p">(</span><span class="n">logid</span><span 
class="p">)</span>
+    <span class="cm">/*</span>
+<span class="cm">       oldvalue, exists := p.log[k]</span>
+<span class="cm">       if exists {</span>
+<span class="cm">         fmt.Print(&quot;Replacing &quot;, oldvalue, &quot; 
with &quot;, entry, &quot; for key &quot;, k, &quot;\n&quot;)</span>
+<span class="cm">       } else {</span>
+<span class="cm">         fmt.Print(&quot;Adding &quot;, entry, &quot; for key 
&quot;, k, &quot;\n&quot;)</span>
+<span class="cm">       }</span>
+<span class="cm">    */</span>
+    <span class="n">p</span><span class="p">.</span><span 
class="n">log</span><span class="p">[</span><span class="n">k</span><span 
class="p">]</span> <span class="o">=</span> <span class="n">entry</span>
+    <span class="k">return</span> <span class="n">val</span><span 
class="p">,</span> <span class="n">err</span>
+<span class="p">}</span>
+
+<span class="n">func</span> <span class="p">(</span><span class="n">p</span> 
<span class="o">*</span><span class="n">CalculatorHandler</span><span 
class="p">)</span> <span class="n">GetStruct</span><span 
class="p">(</span><span class="n">key</span> <span class="n">int32</span><span 
class="p">)</span> <span class="p">(</span><span class="o">*</span><span 
class="n">shared</span><span class="p">.</span><span 
class="n">SharedStruct</span><span class="p">,</span> <span 
class="n">error</span><span class="p">)</span> <span class="p">{</span>
+    <span class="n">fmt</span><span class="p">.</span><span 
class="n">Print</span><span class="p">(</span><span 
class="s">&quot;getStruct(&quot;</span><span class="p">,</span> <span 
class="n">key</span><span class="p">,</span> <span 
class="s">&quot;)</span><span class="se">\n</span><span 
class="s">&quot;</span><span class="p">)</span>
+    <span class="n">v</span><span class="p">,</span> <span class="n">_</span> 
<span class="o">:=</span> <span class="n">p</span><span class="p">.</span><span 
class="n">log</span><span class="p">[</span><span class="kt">int</span><span 
class="p">(</span><span class="n">key</span><span class="p">)]</span>
+    <span class="k">return</span> <span class="n">v</span><span 
class="p">,</span> <span class="n">nil</span>
+<span class="p">}</span>
+
+<span class="n">func</span> <span class="p">(</span><span class="n">p</span> 
<span class="o">*</span><span class="n">CalculatorHandler</span><span 
class="p">)</span> <span class="n">Zip</span><span class="p">()</span> <span 
class="p">(</span><span class="n">err</span> <span class="n">error</span><span 
class="p">)</span> <span class="p">{</span>
+    <span class="n">fmt</span><span class="p">.</span><span 
class="n">Print</span><span class="p">(</span><span 
class="s">&quot;zip()</span><span class="se">\n</span><span 
class="s">&quot;</span><span class="p">)</span>
+    <span class="k">return</span> <span class="n">nil</span>
+<span class="p">}</span>
+</pre></div>
+
+<p class='snippet_footer'>
+  This snippet was generated by Apache Thrift's <strong>source tree 
docs</strong>:
+  <a 
href="http://git-wip-us.apache.org/repos/asf?p=thrift.git;a=blob;f=tutorial/go/src/handler.go;hb=HEAD";</a>tutorial/go/src/handler.go</a>
+</p>
+
 <h2 id="additional-information">Additional Information<a class="headerlink" 
href="#additional-information" title="Permanent link">&para;</a></h2>
 <ul>
 <li>Try using one of the other available protocols, default is binary.</li>


Reply via email to