calcite-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From els...@apache.org
Subject svn commit: r1736937 - in /calcite/site/avatica/docs: client_reference.html history.html howto.html index.html json_reference.html protobuf_reference.html roadmap.html security.html
Date Mon, 28 Mar 2016 23:16:18 GMT
Author: elserj
Date: Mon Mar 28 23:16:18 2016
New Revision: 1736937

URL: http://svn.apache.org/viewvc?rev=1736937&view=rev
Log:
[CALCITE-1159] [CALCITE-1128] Site updates

Added:
    calcite/site/avatica/docs/client_reference.html
    calcite/site/avatica/docs/security.html
Modified:
    calcite/site/avatica/docs/history.html
    calcite/site/avatica/docs/howto.html
    calcite/site/avatica/docs/index.html
    calcite/site/avatica/docs/json_reference.html
    calcite/site/avatica/docs/protobuf_reference.html
    calcite/site/avatica/docs/roadmap.html

Added: calcite/site/avatica/docs/client_reference.html
URL: http://svn.apache.org/viewvc/calcite/site/avatica/docs/client_reference.html?rev=1736937&view=auto
==============================================================================
--- calcite/site/avatica/docs/client_reference.html (added)
+++ calcite/site/avatica/docs/client_reference.html Mon Mar 28 23:16:18 2016
@@ -0,0 +1,1026 @@
+<!DOCTYPE HTML>
+<html lang="en-US">
+<head>
+  <meta charset="UTF-8">
+  <title>Client Reference</title>
+  <meta name="viewport" content="width=device-width,initial-scale=1">
+  <meta name="generator" content="Jekyll v2.4.0">
+  <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Lato:300,300italic,400,400italic,700,700italic,900">
+  <link rel="stylesheet" href="/avatica/css/screen.css">
+  <link rel="icon" type="image/x-icon" href="/avatica/favicon.ico">
+  <!--[if lt IE 9]>
+  <script src="/js/html5shiv.min.js"></script>
+  <script src="/js/respond.min.js"></script>
+  <![endif]-->
+</head>
+
+
+<body class="wrap">
+  <header role="banner">
+  <nav class="mobile-nav show-on-mobiles">
+    <ul>
+  <li class="">
+    <a href="/avatica/">Home</a>
+  </li>
+  <li class="">
+    <a href="/avatica/downloads/">Download</a>
+  </li>
+  <li class="">
+    <a href="/avatica/community/">Community</a>
+  </li>
+  <li class="">
+    <a href="/avatica/develop/">Develop</a>
+  </li>
+  <li class="">
+    <a href="/avatica/news/">News</a>
+  </li>
+  <li class="current">
+    <a href="/avatica/docs/">Docs</a>
+  </li>
+</ul>
+
+  </nav>
+  <div class="grid">
+    <div class="unit one-third center-on-mobiles">
+      <h1>
+        <a href="/avatica/">
+          <span class="sr-only">Apache Calcite Avatica</span>
+          <img src="/avatica/img/logo.png" width="226" height="140" alt="Calcite Logo">
+        </a>
+      </h1>
+    </div>
+    <nav class="main-nav unit two-thirds hide-on-mobiles">
+      <ul>
+  <li class="">
+    <a href="/avatica/">Home</a>
+  </li>
+  <li class="">
+    <a href="/avatica/downloads/">Download</a>
+  </li>
+  <li class="">
+    <a href="/avatica/community/">Community</a>
+  </li>
+  <li class="">
+    <a href="/avatica/develop/">Develop</a>
+  </li>
+  <li class="">
+    <a href="/avatica/news/">News</a>
+  </li>
+  <li class="current">
+    <a href="/avatica/docs/">Docs</a>
+  </li>
+</ul>
+
+    </nav>
+  </div>
+</header>
+
+
+    <section class="docs">
+    <div class="grid">
+
+      <div class="docs-nav-mobile unit whole show-on-mobiles">
+  <select onchange="if (this.value) window.location.href=this.value">
+    <option value="">Navigate the docs…</option>
+    
+    <optgroup label="Overview">
+      
+
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+
+    </optgroup>
+    
+    <optgroup label="Reference">
+      
+
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+
+    </optgroup>
+    
+    <optgroup label="Meta">
+      
+
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+
+    </optgroup>
+    
+  </select>
+</div>
+
+
+      <div class="unit four-fifths">
+        <article>
+          <h1>Client Reference</h1>
+          <!--
+
+-->
+
+<p>Avatica provides a reference-implementation client in the form of a Java
+JDBC client that interacts with the Avatica server over HTTP. This client
+can be used just as any other JDBC driver. There are a number of options
+that are available for clients to specify via the JDBC connection URL.</p>
+
+<p>As a reminder, the JDBC connection URL for Avatica is:</p>
+
+<p><code>jdbc:avatica:remote:[option=value[;option=value]]</code></p>
+
+<p>The following are a list of supported options:</p>
+
+<dl>
+  <dt><strong>url</strong></dt>
+  <dd>
+    <p><em>Description</em>: This property is a URL which refers to the location of the
+Avatica Server which the driver will communicate with.</p>
+  </dd>
+  <dd>
+    <p><em>Default</em>: This property’s default value is <code>null</code>. It is required that the
+user provides a value for this property.</p>
+  </dd>
+  <dd>
+    <p><em>Required</em>: Yes.</p>
+  </dd>
+  <dt><strong>serialization</strong></dt>
+  <dd>
+    <p><em>Description</em>: Avatica supports multiple types of serialization mechanisms
+to format data between the client and server. This property is used to ensure
+that the client and server both use the same serialization mechanism. Valid
+values presently include <code>json</code> and <code>protobuf</code>.</p>
+  </dd>
+  <dd>
+    <p><em>Default</em>: <code>json</code> is the default value.</p>
+  </dd>
+  <dd>
+    <p><em>Required</em>: No.</p>
+  </dd>
+  <dt><strong>authentication</strong></dt>
+  <dd>
+    <p><em>Description</em>: Avatica clients can specify the means in which it authenticates
+with the Avatica server. Presently, the only form of authentication is SPNEGO
+which enables Kerberos authentication. Clients who want to use a specific form
+of authentication should specify the appropriate value in this property.</p>
+  </dd>
+  <dd>
+    <p><em>Default</em>: <code>null</code> (implying “no authentication”).</p>
+  </dd>
+  <dd>
+    <p><em>Required</em>: No.</p>
+  </dd>
+  <dt><strong>timeZone</strong></dt>
+  <dd>
+    <p><em>Description</em>: The timezone that will be used for dates and times. Valid values for this
+property are defined by <a href="https://www.ietf.org/rfc/rfc0822.txt">RFC 822</a>, for
+example: <code>GMT</code>, <code>GMT-3</code>, <code>EST</code> or <code>PDT</code>.</p>
+  </dd>
+  <dd>
+    <p><em>Default</em>: This property’s default value is <code>null</code> which will cause the Avatica Driver to
+use the default timezone as specified by the JVM, commonly overriden by the
+<code>user.timezone</code> system property.</p>
+  </dd>
+  <dd>
+    <p><em>Required</em>: No.</p>
+  </dd>
+  <dt><strong>httpclient_factory</strong></dt>
+  <dd>
+    <p><em>Description</em>: The Avatica client is a “fancy” HTTP client. As such, there are
+many libraries and APIs available for making HTTP calls. To determine which implementation
+should be used, there is an interface <code>AvaticaHttpClientFactory</code> which can be provided
+to control how the <code>AvaticaHttpClient</code> implementation is chosen.</p>
+  </dd>
+  <dd>
+    <p><em>Default</em>: <code>AvaticaHttpClientFactoryImpl</code>.</p>
+  </dd>
+  <dd>
+    <p><em>Required</em>: No.</p>
+  </dd>
+  <dt><strong>httpclient_impl</strong></dt>
+  <dd>
+    <p><em>Description</em>: When using the default <code>AvaticaHttpClientFactoryImpl</code> HTTP client factory
+implementation, this factory should choose the correct client implementation for the
+given client configuration. This property can be used to override the specific HTTP
+client implementation. If it is not provided, the <code>AvaticaHttpClientFactoryImpl</code> will
+automatically choose the HTTP client implementation.</p>
+  </dd>
+  <dd>
+    <p><em>Default</em>: <code>null</code>.</p>
+  </dd>
+  <dd>
+    <p><em>Required</em>: No.</p>
+  </dd>
+</dl>
+
+          
+
+
+
+
+
+  
+  
+
+  
+  
+
+  
+  
+    <div class="section-nav">
+      <div class="left align-right">
+          
+            
+            
+            <a href="/avatica/docs/roadmap.html" class="prev">Previous</a>
+          
+      </div>
+      <div class="right align-left">
+          
+            
+            
+            <a href="/avatica/docs/json_reference.html" class="next">Next</a>
+          
+      </div>
+    </div>
+    <div class="clear"></div>
+    
+
+        </article>
+      </div>
+
+      <div class="unit one-fifth hide-on-mobiles">
+  <aside>
+    
+    <h4>Overview</h4>
+    
+
+<ul>
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/index.html">Background</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
+      
+
+
+</ul>
+
+    
+    <h4>Reference</h4>
+    
+
+<ul>
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class="current"><a href="/avatica/docs/client_reference.html">Client Reference</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/json_reference.html">JSON Reference</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf Reference</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/security.html">Security</a></li>
+      
+
+
+</ul>
+
+    
+    <h4>Meta</h4>
+    
+
+<ul>
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/history.html">History</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/api.html">API</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/testapi.html">Test API</a></li>
+      
+
+
+</ul>
+
+    
+  </aside>
+</div>
+
+
+      <div class="clear"></div>
+
+    </div>
+  </section>
+
+
+  <footer role="contentinfo">
+  <div id="poweredby">
+    <a href="http://www.apache.org/">
+      <span class="sr-only">Apache</span>
+      <img src="/avatica/img/feather.png" width="190" height="77" alt="Apache Logo"></a>
+  </div>
+  <div id="copyright">
+  <p>The contents of this website are &copy;&nbsp;2016
+     <a href="https://www.apache.org/">Apache Software Foundation</a>
+     under the terms of
+     the <a href="https://www.apache.org/licenses/LICENSE-2.0.html">
+     Apache&nbsp;License&nbsp;v2</a>. Apache Calcite and its logo are
+     trademarks of the Apache Software Foundation.</p>
+  </div>
+</footer>
+
+  <script>
+  var anchorForId = function (id) {
+    var anchor = document.createElement("a");
+    anchor.className = "header-link";
+    anchor.href      = "#" + id;
+    anchor.innerHTML = "<span class=\"sr-only\">Permalink</span><i class=\"fa fa-link\"></i>";
+    anchor.title = "Permalink";
+    return anchor;
+  };
+
+  var linkifyAnchors = function (level, containingElement) {
+    var headers = containingElement.getElementsByTagName("h" + level);
+    for (var h = 0; h < headers.length; h++) {
+      var header = headers[h];
+
+      if (typeof header.id !== "undefined" && header.id !== "") {
+        header.appendChild(anchorForId(header.id));
+      }
+    }
+  };
+
+  document.onreadystatechange = function () {
+    if (this.readyState === "complete") {
+      var contentBlock = document.getElementsByClassName("docs")[0] || document.getElementsByClassName("news")[0];
+      if (!contentBlock) {
+        return;
+      }
+      for (var level = 1; level <= 6; level++) {
+        linkifyAnchors(level, contentBlock);
+      }
+    }
+  };
+</script>
+
+
+</body>
+</html>

Modified: calcite/site/avatica/docs/history.html
URL: http://svn.apache.org/viewvc/calcite/site/avatica/docs/history.html?rev=1736937&r1=1736936&r2=1736937&view=diff
==============================================================================
--- calcite/site/avatica/docs/history.html (original)
+++ calcite/site/avatica/docs/history.html Mon Mar 28 23:16:18 2016
@@ -106,6 +106,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -126,6 +130,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -153,6 +161,34 @@
   
     
   
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
 
   
 
@@ -173,6 +209,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -193,6 +233,34 @@
   
     
   
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
 
 
     </optgroup>
@@ -220,6 +288,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -240,6 +312,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -260,6 +336,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -407,12 +487,18 @@ for information about previous Avatica r
 
   
   
+
+  
+  
+
+  
+  
     <div class="section-nav">
       <div class="left align-right">
           
             
             
-            <a href="/avatica/docs/howto.html" class="prev">Previous</a>
+            <a href="/avatica/docs/security.html" class="prev">Previous</a>
           
       </div>
       <div class="right align-left">
@@ -469,6 +555,12 @@ for information about previous Avatica r
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/index.html">Background</a></li>
       
 
@@ -523,6 +615,12 @@ for information about previous Avatica r
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
       
 
@@ -555,6 +653,36 @@ for information about previous Avatica r
       
     
     
+      <li class=""><a href="/avatica/docs/client_reference.html">Client Reference</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
   
     
     
@@ -621,6 +749,12 @@ for information about previous Avatica r
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf Reference</a></li>
       
 
@@ -651,10 +785,82 @@ for information about previous Avatica r
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
       
 
 
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/security.html">Security</a></li>
+      
+
+
 </ul>
 
     
@@ -683,6 +889,12 @@ for information about previous Avatica r
       
     
     
+  
+    
+    
+      
+    
+    
       <li class="current"><a href="/avatica/docs/history.html">History</a></li>
       
 
@@ -716,6 +928,18 @@ for information about previous Avatica r
   
     
     
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
       
     
     

Modified: calcite/site/avatica/docs/howto.html
URL: http://svn.apache.org/viewvc/calcite/site/avatica/docs/howto.html?rev=1736937&r1=1736936&r2=1736937&view=diff
==============================================================================
--- calcite/site/avatica/docs/howto.html (original)
+++ calcite/site/avatica/docs/howto.html Mon Mar 28 23:16:18 2016
@@ -106,6 +106,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -126,6 +130,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -153,6 +161,58 @@
   
     
   
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
 
   
 
@@ -173,6 +233,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -193,6 +257,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -220,6 +288,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -240,6 +312,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -260,6 +336,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -1057,6 +1137,9 @@ as a template. Be sure to include a brie
 
   
   
+
+  
+  
     <div class="section-nav">
       <div class="left align-right">
           
@@ -1069,7 +1152,7 @@ as a template. Be sure to include a brie
           
             
             
-            <a href="/avatica/docs/history.html" class="next">Next</a>
+            <a href="/avatica/docs/security.html" class="next">Next</a>
           
       </div>
     </div>
@@ -1119,6 +1202,12 @@ as a template. Be sure to include a brie
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/index.html">Background</a></li>
       
 
@@ -1173,6 +1262,12 @@ as a template. Be sure to include a brie
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
       
 
@@ -1205,6 +1300,36 @@ as a template. Be sure to include a brie
       
     
     
+      <li class=""><a href="/avatica/docs/client_reference.html">Client Reference</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
   
     
     
@@ -1271,6 +1396,12 @@ as a template. Be sure to include a brie
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf Reference</a></li>
       
 
@@ -1301,10 +1432,82 @@ as a template. Be sure to include a brie
       
     
     
+  
+    
+    
+      
+    
+    
       <li class="current"><a href="/avatica/docs/howto.html">HOWTO</a></li>
       
 
 
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/security.html">Security</a></li>
+      
+
+
 </ul>
 
     
@@ -1333,6 +1536,12 @@ as a template. Be sure to include a brie
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/history.html">History</a></li>
       
 
@@ -1366,6 +1575,18 @@ as a template. Be sure to include a brie
   
     
     
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
       
     
     

Modified: calcite/site/avatica/docs/index.html
URL: http://svn.apache.org/viewvc/calcite/site/avatica/docs/index.html?rev=1736937&r1=1736936&r2=1736937&view=diff
==============================================================================
--- calcite/site/avatica/docs/index.html (original)
+++ calcite/site/avatica/docs/index.html Mon Mar 28 23:16:18 2016
@@ -106,6 +106,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -126,6 +130,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -153,6 +161,58 @@
   
     
   
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
 
   
 
@@ -173,6 +233,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -193,6 +257,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -220,6 +288,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -240,6 +312,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -260,6 +336,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -463,6 +543,12 @@ At some point Avatica could become a sep
       
     
     
+  
+    
+    
+      
+    
+    
       <li class="current"><a href="/avatica/docs/index.html">Background</a></li>
       
 
@@ -517,6 +603,12 @@ At some point Avatica could become a sep
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
       
 
@@ -549,6 +641,36 @@ At some point Avatica could become a sep
       
     
     
+      <li class=""><a href="/avatica/docs/client_reference.html">Client Reference</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
   
     
     
@@ -615,6 +737,12 @@ At some point Avatica could become a sep
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf Reference</a></li>
       
 
@@ -645,10 +773,82 @@ At some point Avatica could become a sep
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
       
 
 
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/security.html">Security</a></li>
+      
+
+
 </ul>
 
     
@@ -677,6 +877,12 @@ At some point Avatica could become a sep
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/history.html">History</a></li>
       
 
@@ -710,6 +916,18 @@ At some point Avatica could become a sep
   
     
     
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
       
     
     

Modified: calcite/site/avatica/docs/json_reference.html
URL: http://svn.apache.org/viewvc/calcite/site/avatica/docs/json_reference.html?rev=1736937&r1=1736936&r2=1736937&view=diff
==============================================================================
--- calcite/site/avatica/docs/json_reference.html (original)
+++ calcite/site/avatica/docs/json_reference.html Mon Mar 28 23:16:18 2016
@@ -106,6 +106,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -126,6 +130,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -153,6 +161,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -173,6 +185,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -193,6 +209,58 @@
   
     
   
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
 
 
     </optgroup>
@@ -220,6 +288,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -240,6 +312,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -260,6 +336,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -289,12 +369,12 @@ in Java. For support outside of Java, se
 
 <h3 id="requests">Requests</h3>
 <ul>
-  <li><a href="#catalogsrequest">CatalogsRequest</a></li><li><a href="#closeconnectionrequest">CloseConnectionRequest</a></li><li><a href="#closestatementrequest">CloseStatementRequest</a></li><li><a href="#columnsrequest">ColumnsRequest</a></li><li><a href="#commitrequest">CommitRequest</a></li><li><a href="#connectionsyncrequest">ConnectionSyncRequest</a></li><li><a href="#createstatementrequest">CreateStatementRequest</a></li><li><a href="#databasepropertyrequest">DatabasePropertyRequest</a></li><li><a href="#executerequest">ExecuteRequest</a></li><li><a href="#fetchrequest">FetchRequest</a></li><li><a href="#openconnectionrequest">OpenConnectionRequest</a></li><li><a href="#prepareandexecuterequest">PrepareAndExecuteRequest</a></li><li><a href="#preparerequest">PrepareRequest</a></li><li><a href="#rollbackrequest">RollbackRequest</a></li><li><a href="#schemasrequest">SchemasRequest</a></li><li><a href="#syncresultsrequest">SyncResultsRequest</a></li><li><a href="#tabletypesreque
 st">TableTypesRequest</a></li><li><a href="#tablesrequest">TablesRequest</a></li><li><a href="#typeinforequest">TypeInfoRequest</a></li>
+  <li><a href="#catalogsrequest">CatalogsRequest</a></li><li><a href="#closeconnectionrequest">CloseConnectionRequest</a></li><li><a href="#closestatementrequest">CloseStatementRequest</a></li><li><a href="#columnsrequest">ColumnsRequest</a></li><li><a href="#commitrequest">CommitRequest</a></li><li><a href="#connectionsyncrequest">ConnectionSyncRequest</a></li><li><a href="#createstatementrequest">CreateStatementRequest</a></li><li><a href="#databasepropertyrequest">DatabasePropertyRequest</a></li><li><a href="#executerequest">ExecuteRequest</a></li><li><a href="#executebatchrequest">ExecuteBatchRequest</a></li><li><a href="#fetchrequest">FetchRequest</a></li><li><a href="#openconnectionrequest">OpenConnectionRequest</a></li><li><a href="#prepareandexecutebatchrequest">PrepareAndExecuteBatchRequest</a></li><li><a href="#prepareandexecuterequest">PrepareAndExecuteRequest</a></li><li><a href="#preparerequest">PrepareRequest</a></li><li><a href="#rollbackrequest">RollbackRequest</a></
 li><li><a href="#schemasrequest">SchemasRequest</a></li><li><a href="#syncresultsrequest">SyncResultsRequest</a></li><li><a href="#tabletypesrequest">TableTypesRequest</a></li><li><a href="#tablesrequest">TablesRequest</a></li><li><a href="#typeinforequest">TypeInfoRequest</a></li>
 </ul>
 
 <h3 id="responses">Responses</h3>
 <ul>
-  <li><a href="#closeconnectionresponse">CloseConnectionResponse</a></li><li><a href="#closestatementresponse">CloseStatementResponse</a></li><li><a href="#commitresponse">CommitResponse</a></li><li><a href="#connectionsyncresponse">ConnectionSyncResponse</a></li><li><a href="#createstatementresponse">CreateStatementResponse</a></li><li><a href="#databasepropertyresponse">DatabasePropertyResponse</a></li><li><a href="#errorresponse">ErrorResponse</a></li><li><a href="#executeresponse">ExecuteResponse</a></li><li><a href="#fetchresponse">FetchResponse</a></li><li><a href="#openconnectionresponse">OpenConnectionResponse</a></li><li><a href="#prepareresponse">PrepareResponse</a></li><li><a href="#resultsetresponse">ResultSetResponse</a></li><li><a href="#rollbackresponse">RollbackResponse</a></li><li><a href="#syncresultsresponse">SyncResultsResponse</a></li>
+  <li><a href="#closeconnectionresponse">CloseConnectionResponse</a></li><li><a href="#closestatementresponse">CloseStatementResponse</a></li><li><a href="#commitresponse">CommitResponse</a></li><li><a href="#connectionsyncresponse">ConnectionSyncResponse</a></li><li><a href="#createstatementresponse">CreateStatementResponse</a></li><li><a href="#databasepropertyresponse">DatabasePropertyResponse</a></li><li><a href="#errorresponse">ErrorResponse</a></li><li><a href="#executebatchresponse">ExecuteBatchResponse</a></li><li><a href="#executeresponse">ExecuteResponse</a></li><li><a href="#fetchresponse">FetchResponse</a></li><li><a href="#openconnectionresponse">OpenConnectionResponse</a></li><li><a href="#prepareresponse">PrepareResponse</a></li><li><a href="#resultsetresponse">ResultSetResponse</a></li><li><a href="#rollbackresponse">RollbackResponse</a></li><li><a href="#syncresultsresponse">SyncResultsResponse</a></li>
 </ul>
 
 <h3 id="miscellaneous">Miscellaneous</h3>
@@ -412,6 +492,24 @@ which uniquely identifies the concrete R
 
 <p><code>connectionId</code> (required string) The identifier of the connection to use when fetching the database properties.</p>
 
+<h3 id="executebatchrequest">ExecuteBatchRequest</h3>
+
+<p>This request is used to execute a batch of updates on a PreparedStatement.</p>
+
+<div class="highlight"><pre><code class="language-json" data-lang="json"><span class="p">{</span>
+  <span class="nt">&quot;request&quot;</span><span class="p">:</span> <span class="s2">&quot;executeBatch&quot;</span><span class="p">,</span>
+  <span class="nt">&quot;connectionId&quot;</span><span class="p">:</span> <span class="s2">&quot;000000-0000-0000-00000000&quot;</span><span class="p">,</span>
+  <span class="nt">&quot;statementId&quot;</span><span class="p">:</span> <span class="mi">12345</span><span class="p">,</span>
+  <span class="nt">&quot;parameterValues&quot;</span><span class="p">:</span> <span class="p">[</span> <span class="p">[</span> <span class="err">TypedValue</span><span class="p">,</span> <span class="err">TypedValue</span><span class="p">,</span> <span class="err">...</span> <span class="p">],</span> <span class="p">[</span> <span class="err">TypedValue</span><span class="p">,</span> <span class="err">TypedValue</span><span class="p">,</span> <span class="err">...</span><span class="p">],</span> <span class="err">...</span> <span class="p">]</span>
+<span class="p">}</span></code></pre></div>
+
+<p><code>connectionId</code> (required string) The identifier of the connection to use when fetching the database properties.</p>
+
+<p><code>statementId</code> (required integer) The identifier of the statement created using the above connection.</p>
+
+<p><code>parameterValues</code> (required array of array) An array of arrays of <a href="#typedvalue">TypedValue</a>’s. Each element
+  in the array is an update to a row, while the outer array represents the entire “batch” of updates.</p>
+
 <h3 id="executerequest">ExecuteRequest</h3>
 
 <p>This request is used to execute a PreparedStatement, optionally with values to bind to the parameters in the Statement.</p>
@@ -463,6 +561,23 @@ which uniquely identifies the concrete R
 
 <p><code>info</code> (optional string-to-string map) A Map containing properties to include when creating the Connection.</p>
 
+<h3 id="prepareandexecutebatchrequest">PrepareAndExecuteBatchRequest</h3>
+
+<p>This request is used as short-hand to create a Statement and execute an batch of SQL commands in that Statement.</p>
+
+<div class="highlight"><pre><code class="language-json" data-lang="json"><span class="p">{</span>
+  <span class="nt">&quot;request&quot;</span><span class="p">:</span> <span class="s2">&quot;prepareAndExecuteBatch&quot;</span><span class="p">,</span>
+  <span class="nt">&quot;connectionId&quot;</span><span class="p">:</span> <span class="s2">&quot;000000-0000-0000-00000000&quot;</span><span class="p">,</span>
+  <span class="nt">&quot;statementId&quot;</span><span class="p">:</span> <span class="mi">12345</span><span class="p">,</span>
+  <span class="nt">&quot;sqlCommands&quot;</span><span class="p">,</span> <span class="err">[</span> <span class="nt">&quot;SQL Command&quot;</span><span class="p">,</span> <span class="nt">&quot;SQL Command&quot;</span><span class="p">,</span> <span class="err">...</span> <span class="err">]</span>
+<span class="p">}</span></code></pre></div>
+
+<p><code>connectionId</code> (required string) The identifier for the connection to use.</p>
+
+<p><code>statementId</code> (required integer) The identifier for the statement created by the above connection to use.</p>
+
+<p><code>sqlCommands</code> (required array of strings) An array of SQL commands</p>
+
 <h3 id="prepareandexecuterequest">PrepareAndExecuteRequest</h3>
 
 <p>This request is used as a short-hand for create a Statement and fetching the first batch of results in a single call without any parameter substitution.</p>
@@ -705,6 +820,30 @@ primitive type or an array of primitive
 
 <p><code>rpcMetadata</code> <a href="#rpcmetadata">Server metadata</a> about this call.</p>
 
+<h3 id="executebatchresponse">ExecuteBatchResponse</h3>
+
+<p>A response to <a href="#executebatchrequest">ExecuteBatchRequest</a> and <a href="#prepareandexecutebatchrequest">PrepareAndExecuteRequest</a>
+which encapsulates the update counts for a batch of updates.</p>
+
+<div class="highlight"><pre><code class="language-json" data-lang="json"><span class="p">{</span>
+  <span class="nt">&quot;response&quot;</span><span class="p">:</span> <span class="s2">&quot;executeBatch&quot;</span><span class="p">,</span>
+  <span class="nt">&quot;connectionId&quot;</span><span class="p">:</span> <span class="s2">&quot;000000-0000-0000-00000000&quot;</span><span class="p">,</span>
+  <span class="nt">&quot;statementId&quot;</span><span class="p">:</span> <span class="mi">12345</span><span class="p">,</span>
+  <span class="nt">&quot;updateCounts&quot;</span><span class="p">:</span> <span class="p">[</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="err">...</span> <span class="p">],</span>
+  <span class="nt">&quot;missingStatement&quot;</span><span class="p">:</span> <span class="kc">false</span><span class="p">,</span>
+  <span class="nt">&quot;rpcMetadata&quot;</span><span class="p">:</span> <span class="err">RpcMetadata</span>
+<span class="p">}</span></code></pre></div>
+
+<p><code>connectionId</code> The identifier for the connection used to create the statement.</p>
+
+<p><code>statementId</code> The identifier for the created statement.</p>
+
+<p><code>updateCounts</code> An array of integers corresponding to each update contained in the batch that was executed.</p>
+
+<p><code>missingStatement</code> True if the operation failed because the Statement is not cached in the server, false otherwise.</p>
+
+<p><code>rpcMetadata</code> <a href="#rpcmetadata">Server metadata</a> about this call.</p>
+
 <h3 id="executeresponse">ExecuteResponse</h3>
 
 <p>A response to the <a href="#executerequest">ExecuteRequest</a> which contains the results for a metadata query.</p>
@@ -1224,12 +1363,15 @@ SQL or by a DatabaseMetaData operation w
 
   
   
+
+  
+  
     <div class="section-nav">
       <div class="left align-right">
           
             
             
-            <a href="/avatica/docs/roadmap.html" class="prev">Previous</a>
+            <a href="/avatica/docs/client_reference.html" class="prev">Previous</a>
           
       </div>
       <div class="right align-left">
@@ -1286,6 +1428,12 @@ SQL or by a DatabaseMetaData operation w
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/index.html">Background</a></li>
       
 
@@ -1340,6 +1488,12 @@ SQL or by a DatabaseMetaData operation w
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
       
 
@@ -1372,6 +1526,36 @@ SQL or by a DatabaseMetaData operation w
       
     
     
+      <li class=""><a href="/avatica/docs/client_reference.html">Client Reference</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
   
     
     
@@ -1438,6 +1622,12 @@ SQL or by a DatabaseMetaData operation w
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf Reference</a></li>
       
 
@@ -1468,10 +1658,82 @@ SQL or by a DatabaseMetaData operation w
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
       
 
 
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/security.html">Security</a></li>
+      
+
+
 </ul>
 
     
@@ -1500,6 +1762,12 @@ SQL or by a DatabaseMetaData operation w
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/history.html">History</a></li>
       
 
@@ -1533,6 +1801,18 @@ SQL or by a DatabaseMetaData operation w
   
     
     
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
       
     
     

Modified: calcite/site/avatica/docs/protobuf_reference.html
URL: http://svn.apache.org/viewvc/calcite/site/avatica/docs/protobuf_reference.html?rev=1736937&r1=1736936&r2=1736937&view=diff
==============================================================================
--- calcite/site/avatica/docs/protobuf_reference.html (original)
+++ calcite/site/avatica/docs/protobuf_reference.html Mon Mar 28 23:16:18 2016
@@ -106,6 +106,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -126,6 +130,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -153,6 +161,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -173,6 +185,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -193,6 +209,58 @@
   
     
   
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
 
 
     </optgroup>
@@ -220,6 +288,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -240,6 +312,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -260,6 +336,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -296,17 +376,17 @@ all protocol buffer messages are <code>o
 
 <h3 id="requests">Requests</h3>
 <ul>
-  <li><a href="#catalogsrequest">CatalogsRequest</a></li><li><a href="#closeconnectionrequest">CloseConnectionRequest</a></li><li><a href="#closestatementrequest">CloseStatementRequest</a></li><li><a href="#columnsrequest">ColumnsRequest</a></li><li><a href="#commitrequest">CommitRequest</a></li><li><a href="#connectionsyncrequest">ConnectionSyncRequest</a></li><li><a href="#createstatementrequest">CreateStatementRequest</a></li><li><a href="#databasepropertyrequest">DatabasePropertyRequest</a></li><li><a href="#executerequest">ExecuteRequest</a></li><li><a href="#fetchrequest">FetchRequest</a></li><li><a href="#openconnectionrequest">OpenConnectionRequest</a></li><li><a href="#prepareandexecuterequest">PrepareAndExecuteRequest</a></li><li><a href="#preparerequest">PrepareRequest</a></li><li><a href="#rollbackrequest">RollbackRequest</a></li><li><a href="#schemasrequest">SchemasRequest</a></li><li><a href="#syncresultsrequest">SyncResultsRequest</a></li><li><a href="#tabletypesreque
 st">TableTypesRequest</a></li><li><a href="#tablesrequest">TablesRequest</a></li><li><a href="#typeinforequest">TypeInfoRequest</a></li>
+  <li><a href="#catalogsrequest">CatalogsRequest</a></li><li><a href="#closeconnectionrequest">CloseConnectionRequest</a></li><li><a href="#closestatementrequest">CloseStatementRequest</a></li><li><a href="#columnsrequest">ColumnsRequest</a></li><li><a href="#commitrequest">CommitRequest</a></li><li><a href="#connectionsyncrequest">ConnectionSyncRequest</a></li><li><a href="#createstatementrequest">CreateStatementRequest</a></li><li><a href="#databasepropertyrequest">DatabasePropertyRequest</a></li><li><a href="#executebatchrequest">ExecuteBatchRequest</a></li><li><a href="#executerequest">ExecuteRequest</a></li><li><a href="#fetchrequest">FetchRequest</a></li><li><a href="#openconnectionrequest">OpenConnectionRequest</a></li><li><a href="#prepareandexecutebatchrequest">PrepareAndExecuteBatchRequest</a></li><li><a href="#prepareandexecuterequest">PrepareAndExecuteRequest</a></li><li><a href="#preparerequest">PrepareRequest</a></li><li><a href="#rollbackrequest">RollbackRequest</a></
 li><li><a href="#schemasrequest">SchemasRequest</a></li><li><a href="#syncresultsrequest">SyncResultsRequest</a></li><li><a href="#tabletypesrequest">TableTypesRequest</a></li><li><a href="#tablesrequest">TablesRequest</a></li><li><a href="#typeinforequest">TypeInfoRequest</a></li>
 </ul>
 
 <h3 id="responses">Responses</h3>
 <ul>
-  <li><a href="#closeconnectionresponse">CloseConnectionResponse</a></li><li><a href="#closestatementresponse">CloseStatementResponse</a></li><li><a href="#commitresponse">CommitResponse</a></li><li><a href="#connectionsyncresponse">ConnectionSyncResponse</a></li><li><a href="#createstatementresponse">CreateStatementResponse</a></li><li><a href="#databasepropertyresponse">DatabasePropertyResponse</a></li><li><a href="#errorresponse">ErrorResponse</a></li><li><a href="#executeresponse">ExecuteResponse</a></li><li><a href="#fetchresponse">FetchResponse</a></li><li><a href="#openconnectionresponse">OpenConnectionResponse</a></li><li><a href="#prepareresponse">PrepareResponse</a></li><li><a href="#resultsetresponse">ResultSetResponse</a></li><li><a href="#rollbackresponse">RollbackResponse</a></li><li><a href="#syncresultsresponse">SyncResultsResponse</a></li>
+  <li><a href="#closeconnectionresponse">CloseConnectionResponse</a></li><li><a href="#closestatementresponse">CloseStatementResponse</a></li><li><a href="#commitresponse">CommitResponse</a></li><li><a href="#connectionsyncresponse">ConnectionSyncResponse</a></li><li><a href="#createstatementresponse">CreateStatementResponse</a></li><li><a href="#databasepropertyresponse">DatabasePropertyResponse</a></li><li><a href="#errorresponse">ErrorResponse</a></li><li><a href="#executebatchresponse">ExecuteBatchResponse</a></li><li><a href="#executeresponse">ExecuteResponse</a></li><li><a href="#fetchresponse">FetchResponse</a></li><li><a href="#openconnectionresponse">OpenConnectionResponse</a></li><li><a href="#prepareresponse">PrepareResponse</a></li><li><a href="#resultsetresponse">ResultSetResponse</a></li><li><a href="#rollbackresponse">RollbackResponse</a></li><li><a href="#syncresultsresponse">SyncResultsResponse</a></li>
 </ul>
 
 <h3 id="miscellaneous">Miscellaneous</h3>
 <ul>
-  <li><a href="#avaticaparameter">AvaticaParameter</a></li><li><a href="#avaticaseverity">AvaticaSeverity</a></li><li><a href="#avaticatype">AvaticaType</a></li><li><a href="#columnmetadata">ColumnMetaData</a></li><li><a href="#columnvalue">ColumnValue</a></li><li><a href="#connectionproperties">ConnectionProperties</a></li><li><a href="#cursorfactory">CursorFactory</a></li><li><a href="#databaseproperty">DatabaseProperty</a></li><li><a href="#frame">Frame</a></li><li><a href="#querystate">QueryState</a></li><li><a href="#rep">Rep</a></li><li><a href="#row">Row</a></li><li><a href="#rpcmetadata">RpcMetadata</a></li><li><a href="#signature">Signature</a></li><li><a href="#statetype">StateType</a></li><li><a href="#statementhandle">StatementHandle</a></li><li><a href="#statementtype">StatementType</a></li><li><a href="#style">Style</a></li><li><a href="#typedvalue">TypedValue</a></li><li><a href="#wiremessage">WireMessage</a></li>
+  <li><a href="#avaticaparameter">AvaticaParameter</a></li><li><a href="#avaticaseverity">AvaticaSeverity</a></li><li><a href="#avaticatype">AvaticaType</a></li><li><a href="#columnmetadata">ColumnMetaData</a></li><li><a href="#columnvalue">ColumnValue</a></li><li><a href="#connectionproperties">ConnectionProperties</a></li><li><a href="#cursorfactory">CursorFactory</a></li><li><a href="#databaseproperty">DatabaseProperty</a></li><li><a href="#frame">Frame</a></li><li><a href="#querystate">QueryState</a></li><li><a href="#rep">Rep</a></li><li><a href="#row">Row</a></li><li><a href="#rpcmetadata">RpcMetadata</a></li><li><a href="#signature">Signature</a></li><li><a href="#statetype">StateType</a></li><li><a href="#statementhandle">StatementHandle</a></li><li><a href="#statementtype">StatementType</a></li><li><a href="#style">Style</a></li><li><a href="#typedvalue">TypedValue</a></li><li><a href="#updatebatch">UpdateBatch</a></li><li><a href="#wiremessage">WireMessage</a></li>
 </ul>
 
 <h2 id="requests-1">Requests</h2>
@@ -412,6 +492,22 @@ objects should be wrapped in a <code>Wir
 
 <p><code>connection_id</code> The identifier of the connection to use when fetching the database properties.</p>
 
+<h3 id="executebatchrequest">ExecuteBatchRequest</h3>
+
+<p>This request is used to execute a batch of updates against a PreparedStatement.</p>
+
+<div class="highlight"><pre><code class="language-protobuf" data-lang="protobuf"><span class="kd">message</span> <span class="nc">ExecuteBatchRequest</span> <span class="p">{</span>
+  <span class="kt">string</span> <span class="na">connection_id</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
+  <span class="kt">uint32</span> <span class="na">statement_id</span> <span class="o">=</span> <span class="mi">2</span><span class="p">;</span>
+  <span class="k">repeated</span> <span class="n">UpdateBatch</span> <span class="na">updates</span> <span class="o">=</span> <span class="mi">3</span><span class="p">;</span>
+<span class="p">}</span></code></pre></div>
+
+<p><code>connection_id</code> A string which refers to a connection.</p>
+
+<p><code>statement_id</code> An integer which refers to a statement.</p>
+
+<p><code>updates</code> A list of <a href="#updatebatch">UpdateBatch</a>’s; the batch of updates.</p>
+
 <h3 id="executerequest">ExecuteRequest</h3>
 
 <p>This request is used to execute a PreparedStatement, optionally with values to bind to the parameters in the Statement.</p>
@@ -463,6 +559,22 @@ objects should be wrapped in a <code>Wir
 
 <p><code>info</code> A Map containing properties to include when creating the Connection.</p>
 
+<h3 id="prepareandexecutebatchrequest">PrepareAndExecuteBatchRequest</h3>
+
+<p>This request is used as short-hand to create a Statement and execute a batch of updates against that Statement.</p>
+
+<div class="highlight"><pre><code class="language-protobuf" data-lang="protobuf"><span class="kd">message</span> <span class="nc">PrepareAndExecuteBatchRequest</span> <span class="p">{</span>
+  <span class="kt">string</span> <span class="na">connection_id</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
+  <span class="kt">uint32</span> <span class="na">statement_id</span> <span class="o">=</span> <span class="mi">2</span><span class="p">;</span>
+  <span class="k">repeated</span> <span class="kt">string</span> <span class="na">sql_commands</span> <span class="o">=</span> <span class="mi">3</span><span class="p">;</span>
+<span class="p">}</span></code></pre></div>
+
+<p><code>connection_id</code> The identifier for the connection to use.</p>
+
+<p><code>statement_id</code> The identifier for the statement created by the above connection to use.</p>
+
+<p><code>sql_commands</code> A list of SQL commands to execute; a batch.</p>
+
 <h3 id="prepareandexecuterequest">PrepareAndExecuteRequest</h3>
 
 <p>This request is used as a short-hand for create a Statement and fetching the first batch of results in a single call without any parameter substitution.</p>
@@ -696,6 +808,28 @@ for information on the available propert
 
 <p><code>metadata</code> <a href="#rpcmetadata">Server metadata</a> about this call.</p>
 
+<h3 id="executebatchresponse">ExecuteBatchResponse</h3>
+
+<p>A response to the <a href="#executebatchrequest">ExecuteBatchRequest</a> and <a href="#prepareandexecutebatchrequest">PrepareAndExecuteBatchRequest</a>.</p>
+
+<div class="highlight"><pre><code class="language-protobuf" data-lang="protobuf"><span class="kd">message</span> <span class="nc">ExecuteBatchResponse</span> <span class="p">{</span>
+  <span class="kt">string</span> <span class="na">connection_id</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
+  <span class="kt">uint32</span> <span class="na">statement_id</span> <span class="o">=</span> <span class="mi">2</span><span class="p">;</span>
+  <span class="k">repeated</span> <span class="kt">uint32</span> <span class="na">update_counts</span> <span class="o">=</span> <span class="mi">3</span><span class="p">;</span>
+  <span class="kt">bool</span> <span class="na">missing_statement</span> <span class="o">=</span> <span class="mi">4</span><span class="p">;</span>
+  <span class="n">RpcMetadata</span> <span class="na">metadata</span> <span class="o">=</span> <span class="mi">5</span><span class="p">;</span>
+<span class="p">}</span></code></pre></div>
+
+<p><code>connection_id</code> The ID referring to the connection that was used.</p>
+
+<p><code>statment_id</code> The ID referring to the statement that was used.</p>
+
+<p><code>update_counts</code> An array of integer values corresponding to the update count for each update in the batch.</p>
+
+<p><code>missing_statement</code> A boolean which denotes if the request failed due to a missing statement.</p>
+
+<p><code>metadata</code> <a href="#rpcmetadata">Server metadata</a> about this call.</p>
+
 <h3 id="executeresponse">ExecuteResponse</h3>
 
 <p>A response to the <a href="#executerequest">ExecuteRequest</a> which contains the results for a metadata query.</p>
@@ -1258,6 +1392,16 @@ SQL or by a DatabaseMetaData operation w
 
 <p><code>null</code> A boolean which denotes if the value was null.</p>
 
+<h3 id="updatebatch">UpdateBatch</h3>
+
+<p>This is a message which serves as a wrapper around a collection of <a href="#typedvalue">TypedValue</a>’s.</p>
+
+<div class="highlight"><pre><code class="language-protobuf" data-lang="protobuf"><span class="kd">message</span> <span class="nc">UpdateBatch</span> <span class="p">{</span>
+  <span class="k">repeated</span> <span class="n">TypedValue</span> <span class="na">parameter_values</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
+<span class="p">}</span></code></pre></div>
+
+<p><code>parameter_values</code> A collection of parameter values for one SQL command update.</p>
+
 <h3 id="wiremessage">WireMessage</h3>
 
 <p>This message wraps all <code>Request</code>s and <code>Response</code>s.</p>
@@ -1288,6 +1432,9 @@ SQL or by a DatabaseMetaData operation w
 
   
   
+
+  
+  
     <div class="section-nav">
       <div class="left align-right">
           
@@ -1350,6 +1497,12 @@ SQL or by a DatabaseMetaData operation w
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/index.html">Background</a></li>
       
 
@@ -1404,6 +1557,12 @@ SQL or by a DatabaseMetaData operation w
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
       
 
@@ -1436,6 +1595,36 @@ SQL or by a DatabaseMetaData operation w
       
     
     
+      <li class=""><a href="/avatica/docs/client_reference.html">Client Reference</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
   
     
     
@@ -1502,6 +1691,12 @@ SQL or by a DatabaseMetaData operation w
       
     
     
+  
+    
+    
+      
+    
+    
       <li class="current"><a href="/avatica/docs/protobuf_reference.html">Protobuf Reference</a></li>
       
 
@@ -1532,10 +1727,82 @@ SQL or by a DatabaseMetaData operation w
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
       
 
 
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/security.html">Security</a></li>
+      
+
+
 </ul>
 
     
@@ -1564,6 +1831,12 @@ SQL or by a DatabaseMetaData operation w
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/history.html">History</a></li>
       
 
@@ -1597,6 +1870,18 @@ SQL or by a DatabaseMetaData operation w
   
     
     
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
       
     
     

Modified: calcite/site/avatica/docs/roadmap.html
URL: http://svn.apache.org/viewvc/calcite/site/avatica/docs/roadmap.html?rev=1736937&r1=1736936&r2=1736937&view=diff
==============================================================================
--- calcite/site/avatica/docs/roadmap.html (original)
+++ calcite/site/avatica/docs/roadmap.html Mon Mar 28 23:16:18 2016
@@ -106,6 +106,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -126,6 +130,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -153,6 +161,58 @@
   
     
   
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
 
   
 
@@ -173,6 +233,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -193,6 +257,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -220,6 +288,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -240,6 +312,10 @@
   
     
   
+    
+  
+    
+  
 
   
 
@@ -260,6 +336,10 @@
   
     
   
+    
+  
+    
+  
 
 
     </optgroup>
@@ -337,7 +417,7 @@
           
             
             
-            <a href="/avatica/docs/json_reference.html" class="next">Next</a>
+            <a href="/avatica/docs/client_reference.html" class="next">Next</a>
           
       </div>
     </div>
@@ -387,6 +467,12 @@
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/index.html">Background</a></li>
       
 
@@ -441,6 +527,12 @@
       
     
     
+  
+    
+    
+      
+    
+    
       <li class="current"><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
       
 
@@ -473,6 +565,36 @@
       
     
     
+      <li class=""><a href="/avatica/docs/client_reference.html">Client Reference</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
   
     
     
@@ -539,6 +661,12 @@
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf Reference</a></li>
       
 
@@ -569,10 +697,82 @@
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
       
 
 
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/security.html">Security</a></li>
+      
+
+
 </ul>
 
     
@@ -601,6 +801,12 @@
       
     
     
+  
+    
+    
+      
+    
+    
       <li class=""><a href="/avatica/docs/history.html">History</a></li>
       
 
@@ -634,6 +840,18 @@
   
     
     
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
       
     
     

Added: calcite/site/avatica/docs/security.html
URL: http://svn.apache.org/viewvc/calcite/site/avatica/docs/security.html?rev=1736937&view=auto
==============================================================================
--- calcite/site/avatica/docs/security.html (added)
+++ calcite/site/avatica/docs/security.html Mon Mar 28 23:16:18 2016
@@ -0,0 +1,1058 @@
+<!DOCTYPE HTML>
+<html lang="en-US">
+<head>
+  <meta charset="UTF-8">
+  <title>Security</title>
+  <meta name="viewport" content="width=device-width,initial-scale=1">
+  <meta name="generator" content="Jekyll v2.4.0">
+  <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Lato:300,300italic,400,400italic,700,700italic,900">
+  <link rel="stylesheet" href="/avatica/css/screen.css">
+  <link rel="icon" type="image/x-icon" href="/avatica/favicon.ico">
+  <!--[if lt IE 9]>
+  <script src="/js/html5shiv.min.js"></script>
+  <script src="/js/respond.min.js"></script>
+  <![endif]-->
+</head>
+
+
+<body class="wrap">
+  <header role="banner">
+  <nav class="mobile-nav show-on-mobiles">
+    <ul>
+  <li class="">
+    <a href="/avatica/">Home</a>
+  </li>
+  <li class="">
+    <a href="/avatica/downloads/">Download</a>
+  </li>
+  <li class="">
+    <a href="/avatica/community/">Community</a>
+  </li>
+  <li class="">
+    <a href="/avatica/develop/">Develop</a>
+  </li>
+  <li class="">
+    <a href="/avatica/news/">News</a>
+  </li>
+  <li class="current">
+    <a href="/avatica/docs/">Docs</a>
+  </li>
+</ul>
+
+  </nav>
+  <div class="grid">
+    <div class="unit one-third center-on-mobiles">
+      <h1>
+        <a href="/avatica/">
+          <span class="sr-only">Apache Calcite Avatica</span>
+          <img src="/avatica/img/logo.png" width="226" height="140" alt="Calcite Logo">
+        </a>
+      </h1>
+    </div>
+    <nav class="main-nav unit two-thirds hide-on-mobiles">
+      <ul>
+  <li class="">
+    <a href="/avatica/">Home</a>
+  </li>
+  <li class="">
+    <a href="/avatica/downloads/">Download</a>
+  </li>
+  <li class="">
+    <a href="/avatica/community/">Community</a>
+  </li>
+  <li class="">
+    <a href="/avatica/develop/">Develop</a>
+  </li>
+  <li class="">
+    <a href="/avatica/news/">News</a>
+  </li>
+  <li class="current">
+    <a href="/avatica/docs/">Docs</a>
+  </li>
+</ul>
+
+    </nav>
+  </div>
+</header>
+
+
+    <section class="docs">
+    <div class="grid">
+
+      <div class="docs-nav-mobile unit whole show-on-mobiles">
+  <select onchange="if (this.value) window.location.href=this.value">
+    <option value="">Navigate the docs…</option>
+    
+    <optgroup label="Overview">
+      
+
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+
+    </optgroup>
+    
+    <optgroup label="Reference">
+      
+
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+
+    </optgroup>
+    
+    <optgroup label="Meta">
+      
+
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+  
+
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+    
+  
+
+
+    </optgroup>
+    
+  </select>
+</div>
+
+
+      <div class="unit four-fifths">
+        <article>
+          <h1>Security</h1>
+          <!--
+
+-->
+
+<p>Security is an important topic between clients and the Avatica server. Most JDBC
+drivers and databases implement some level of authentication and authorization
+for limit what actions clients are allowed to perform.</p>
+
+<p>Similarly, Avatica must limit what users are allowed to connect and interact
+with the server. Avatica must primarily deal with authentication while authorization
+is deferred to the underlying database. By default, Avatica provides no authentication.
+Avatica does have the ability to perform client authentication using Kerberos.</p>
+
+<h2 id="kerberos-based-authentication">Kerberos-based authentication</h2>
+
+<p>Because Avatica operates over an HTTP interface, the simple and protected GSSAPI
+negotiation mechanism (<a href="https://en.wikipedia.org/wiki/SPNEGO">SPNEGO</a>) is a logical
+choice. This mechanism makes use of the “HTTP Negotiate” authentication extension to
+communicate with the Kerberos Key Distribution Center (KDC) to authenticate a client.</p>
+
+<h2 id="enabling-spnegokerberos-authentication-in-servers">Enabling SPNEGO/Kerberos Authentication in servers</h2>
+
+<p>The Avatica server can operate either by performing the login using
+a JAAS configuration file or login programmatically. By default, authenticated clients
+will have queries executed as the Avatica server’s kerberos user. <a href="#impersonation">Impersonation</a>
+is the feature which enables actions to be run in the server as the actual end-user.</p>
+
+<p>As a note, it is required that the Kerberos principal in use by the Avatica server
+<strong>must</strong> have an primary of <code>HTTP</code> (where Kerberos principals are of the form
+<code>primary[/instance]@REALM</code>). This is specified by <a href="https://tools.ietf.org/html/rfc4559">RFC-4559</a>.</p>
+
+<h3 id="programmatic-login">Programmatic Login</h3>
+
+<p>This approach requires no external file configurations and only requires a
+keytab file for the principal.</p>
+
+<div class="highlight"><pre><code class="language-java" data-lang="java"><span class="n">HttpServer</span> <span class="n">server</span> <span class="o">=</span> <span class="k">new</span> <span class="n">HttpServer</span><span class="o">.</span><span class="na">Builder</span><span class="o">()</span>
+    <span class="o">.</span><span class="na">withPort</span><span class="o">(</span><span class="mi">8765</span><span class="o">)</span>
+    <span class="o">.</span><span class="na">withHandler</span><span class="o">(</span><span class="k">new</span> <span class="nf">LocalService</span><span class="o">(),</span> <span class="n">Driver</span><span class="o">.</span><span class="na">Serialization</span><span class="o">.</span><span class="na">PROTOBUF</span><span class="o">)</span>
+    <span class="o">.</span><span class="na">withSpnego</span><span class="o">(</span><span class="s">&quot;HTTP/host.domain.com@DOMAIN.COM&quot;</span><span class="o">)</span>
+    <span class="o">.</span><span class="na">withAutomaticLogin</span><span class="o">(</span>
+        <span class="k">new</span> <span class="nf">File</span><span class="o">(</span><span class="s">&quot;/etc/security/keytabs/avatica.spnego.keytab&quot;</span><span class="o">))</span>
+    <span class="o">.</span><span class="na">build</span><span class="o">();</span></code></pre></div>
+
+<h3 id="jaas-configuration-file-login">JAAS Configuration File Login</h3>
+
+<p>A JAAS configuration file can be set via the system property <code>java.security.auth.login.config</code>.
+The user must set this property when launching their Java application invoking the Avatica server.
+The presence of this file will automatically perform login as necessary in the first use
+of the Avatica server. The invocation is nearly the same as the programmatic login.</p>
+
+<div class="highlight"><pre><code class="language-java" data-lang="java"><span class="n">HttpServer</span> <span class="n">server</span> <span class="o">=</span> <span class="k">new</span> <span class="n">HttpServer</span><span class="o">.</span><span class="na">Builder</span><span class="o">()</span>
+    <span class="o">.</span><span class="na">withPort</span><span class="o">(</span><span class="mi">8765</span><span class="o">)</span>
+    <span class="o">.</span><span class="na">withHandler</span><span class="o">(</span><span class="k">new</span> <span class="nf">LocalService</span><span class="o">(),</span> <span class="n">Driver</span><span class="o">.</span><span class="na">Serialization</span><span class="o">.</span><span class="na">PROTOBUF</span><span class="o">)</span>
+    <span class="o">.</span><span class="na">withSpnego</span><span class="o">(</span><span class="s">&quot;HTTP/host.domain.com@DOMAIN.COM&quot;</span><span class="o">)</span>
+    <span class="o">.</span><span class="na">build</span><span class="o">();</span></code></pre></div>
+
+<p>The contents of the JAAS configuration file are very specific:</p>
+
+<div class="highlight"><pre><code class="language-java" data-lang="java"><span class="n">com</span><span class="o">.</span><span class="na">sun</span><span class="o">.</span><span class="na">security</span><span class="o">.</span><span class="na">jgss</span><span class="o">.</span><span class="na">accept</span>  <span class="o">{</span>
+  <span class="n">com</span><span class="o">.</span><span class="na">sun</span><span class="o">.</span><span class="na">security</span><span class="o">.</span><span class="na">auth</span><span class="o">.</span><span class="na">module</span><span class="o">.</span><span class="na">Krb5LoginModule</span> <span class="n">required</span>
+  <span class="n">storeKey</span><span class="o">=</span><span class="kc">true</span>
+  <span class="n">useKeyTab</span><span class="o">=</span><span class="kc">true</span>
+  <span class="n">keyTab</span><span class="o">=/</span><span class="n">etc</span><span class="o">/</span><span class="n">security</span><span class="o">/</span><span class="n">keytabs</span><span class="o">/</span><span class="n">avatica</span><span class="o">.</span><span class="na">spnego</span><span class="o">.</span><span class="na">keyTab</span>
+  <span class="n">principal</span><span class="o">=</span><span class="n">HTTP</span><span class="o">/</span><span class="n">host</span><span class="o">.</span><span class="na">domain</span><span class="o">.</span><span class="na">com</span><span class="nd">@DOMAIN.COM</span><span class="o">;</span>
+<span class="o">};</span></code></pre></div>
+
+<p>Ensure the <code>keyTab</code> and <code>principal</code> attributes are set correctly for your system.</p>
+
+<h2 id="impersonation">Impersonation</h2>
+
+<p>Impersonation is a feature of the Avatica server which allows the Avatica clients
+to execute the server-side calls (e.g. the underlying JDBC calls). Because the details
+on what it means to execute such an operation are dependent on the actual system, a
+callback is exposed for downstream integrators to implement.</p>
+
+<p>For example, the following is an example for creating an Apache Hadoop <code>UserGroupInformation</code>
+“proxy user”. This example takes a <code>UserGroupInformation</code> object representing the Avatica server’s
+identity, creates a “proxy user” with the client’s username, and performs the action as that
+client but using the server’s identity.</p>
+
+<div class="highlight"><pre><code class="language-java" data-lang="java"><span class="kd">public</span> <span class="kd">class</span> <span class="nc">PhoenixDoAsCallback</span> <span class="kd">implements</span> <span class="n">DoAsRemoteUserCallback</span> <span class="o">{</span>
+  <span class="kd">private</span> <span class="kd">final</span> <span class="n">UserGroupInformation</span> <span class="n">serverUgi</span><span class="o">;</span>
+
+  <span class="kd">public</span> <span class="nf">PhoenixDoAsCallback</span><span class="o">(</span><span class="n">UserGroupInformation</span> <span class="n">serverUgi</span><span class="o">)</span> <span class="o">{</span>
+    <span class="k">this</span><span class="o">.</span><span class="na">serverUgi</span> <span class="o">=</span> <span class="n">Objects</span><span class="o">.</span><span class="na">requireNonNull</span><span class="o">(</span><span class="n">serverUgi</span><span class="o">);</span>
+  <span class="o">}</span>
+
+  <span class="nd">@Override</span>
+  <span class="kd">public</span> <span class="o">&lt;</span><span class="n">T</span><span class="o">&gt;</span> <span class="n">T</span> <span class="nf">doAsRemoteUser</span><span class="o">(</span><span class="n">String</span> <span class="n">remoteUserName</span><span class="o">,</span> <span class="n">String</span> <span class="n">remoteAddress</span><span class="o">,</span> <span class="kd">final</span> <span class="n">Callable</span><span class="o">&lt;</span><span class="n">T</span><span class="o">&gt;</span> <span class="n">action</span><span class="o">)</span> <span class="kd">throws</span> <span class="n">Exception</span> <span class="o">{</span>
+    <span class="c1">// Proxy this user on top of the server&#39;s user (the real user)</span>
+    <span class="n">UserGroupInformation</span> <span class="n">proxyUser</span> <span class="o">=</span> <span class="n">UserGroupInformation</span><span class="o">.</span><span class="na">createProxyUser</span><span class="o">(</span><span class="n">remoteUserName</span><span class="o">,</span> <span class="n">serverUgi</span><span class="o">);</span>
+
+    <span class="c1">// Check if this user is allowed to be impersonated.</span>
+    <span class="c1">// Will throw AuthorizationException if the impersonation as this user is not allowed</span>
+    <span class="n">ProxyUsers</span><span class="o">.</span><span class="na">authorize</span><span class="o">(</span><span class="n">proxyUser</span><span class="o">,</span> <span class="n">remoteAddress</span><span class="o">);</span>
+
+    <span class="c1">// Execute the actual call as this proxy user</span>
+    <span class="k">return</span> <span class="n">proxyUser</span><span class="o">.</span><span class="na">doAs</span><span class="o">(</span><span class="k">new</span> <span class="n">PrivilegedExceptionAction</span><span class="o">&lt;</span><span class="n">T</span><span class="o">&gt;()</span> <span class="o">{</span>
+      <span class="nd">@Override</span>
+      <span class="kd">public</span> <span class="n">T</span> <span class="nf">run</span><span class="o">()</span> <span class="kd">throws</span> <span class="n">Exception</span> <span class="o">{</span>
+        <span class="k">return</span> <span class="n">action</span><span class="o">.</span><span class="na">call</span><span class="o">();</span>
+      <span class="o">}</span>
+    <span class="o">});</span>
+  <span class="o">}</span>
+<span class="o">}</span></code></pre></div>
+
+<h2 id="client-implementation">Client implementation</h2>
+
+<p>Many HTTP client libraries, such as <a href="https://hc.apache.org/">Apache Commons HttpComponents</a>, already have
+support for performing SPNEGO authentication. When in doubt, refer to one of
+these implementations as it is likely correct.</p>
+
+<p>For information on building this by hand, consult <a href="https://tools.ietf.org/html/rfc4559">RFC-4559</a>
+which describes how the authentication handshake, through use of the “WWW-authenticate”
+HTTP header, is used to authenticate a client.</p>
+
+          
+
+
+
+
+
+  
+  
+
+  
+  
+
+  
+  
+
+  
+  
+
+  
+  
+
+  
+  
+
+  
+  
+    <div class="section-nav">
+      <div class="left align-right">
+          
+            
+            
+            <a href="/avatica/docs/howto.html" class="prev">Previous</a>
+          
+      </div>
+      <div class="right align-left">
+          
+            
+            
+            <a href="/avatica/docs/history.html" class="next">Next</a>
+          
+      </div>
+    </div>
+    <div class="clear"></div>
+    
+
+        </article>
+      </div>
+
+      <div class="unit one-fifth hide-on-mobiles">
+  <aside>
+    
+    <h4>Overview</h4>
+    
+
+<ul>
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/index.html">Background</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
+      
+
+
+</ul>
+
+    
+    <h4>Reference</h4>
+    
+
+<ul>
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/client_reference.html">Client Reference</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/json_reference.html">JSON Reference</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf Reference</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class="current"><a href="/avatica/docs/security.html">Security</a></li>
+      
+
+
+</ul>
+
+    
+    <h4>Meta</h4>
+    
+
+<ul>
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/history.html">History</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/api.html">API</a></li>
+      
+
+
+  
+  
+  
+
+  
+    
+  
+
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+  
+    
+    
+      
+    
+    
+      <li class=""><a href="/avatica/docs/testapi.html">Test API</a></li>
+      
+
+
+</ul>
+
+    
+  </aside>
+</div>
+
+
+      <div class="clear"></div>
+
+    </div>
+  </section>
+
+
+  <footer role="contentinfo">
+  <div id="poweredby">
+    <a href="http://www.apache.org/">
+      <span class="sr-only">Apache</span>
+      <img src="/avatica/img/feather.png" width="190" height="77" alt="Apache Logo"></a>
+  </div>
+  <div id="copyright">
+  <p>The contents of this website are &copy;&nbsp;2016
+     <a href="https://www.apache.org/">Apache Software Foundation</a>
+     under the terms of
+     the <a href="https://www.apache.org/licenses/LICENSE-2.0.html">
+     Apache&nbsp;License&nbsp;v2</a>. Apache Calcite and its logo are
+     trademarks of the Apache Software Foundation.</p>
+  </div>
+</footer>
+
+  <script>
+  var anchorForId = function (id) {
+    var anchor = document.createElement("a");
+    anchor.className = "header-link";
+    anchor.href      = "#" + id;
+    anchor.innerHTML = "<span class=\"sr-only\">Permalink</span><i class=\"fa fa-link\"></i>";
+    anchor.title = "Permalink";
+    return anchor;
+  };
+
+  var linkifyAnchors = function (level, containingElement) {
+    var headers = containingElement.getElementsByTagName("h" + level);
+    for (var h = 0; h < headers.length; h++) {
+      var header = headers[h];
+
+      if (typeof header.id !== "undefined" && header.id !== "") {
+        header.appendChild(anchorForId(header.id));
+      }
+    }
+  };
+
+  document.onreadystatechange = function () {
+    if (this.readyState === "complete") {
+      var contentBlock = document.getElementsByClassName("docs")[0] || document.getElementsByClassName("news")[0];
+      if (!contentBlock) {
+        return;
+      }
+      for (var level = 1; level <= 6; level++) {
+        linkifyAnchors(level, contentBlock);
+      }
+    }
+  };
+</script>
+
+
+</body>
+</html>



Mime
View raw message