You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zeppelin.apache.org by zj...@apache.org on 2020/12/24 14:36:06 UTC

svn commit: r1884775 [14/49] - in /zeppelin/site/docs: 0.9.0-SNAPSHOT/ 0.9.0/ 0.9.0/assets/ 0.9.0/assets/themes/ 0.9.0/assets/themes/zeppelin/ 0.9.0/assets/themes/zeppelin/bootstrap/ 0.9.0/assets/themes/zeppelin/bootstrap/css/ 0.9.0/assets/themes/zeppe...

Added: zeppelin/site/docs/0.9.0/interpreter/geode.html
URL: http://svn.apache.org/viewvc/zeppelin/site/docs/0.9.0/interpreter/geode.html?rev=1884775&view=auto
==============================================================================
--- zeppelin/site/docs/0.9.0/interpreter/geode.html (added)
+++ zeppelin/site/docs/0.9.0/interpreter/geode.html Thu Dec 24 14:36:01 2020
@@ -0,0 +1,488 @@
+
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <title>Apache Zeppelin 0.9.0 Documentation: Geode/Gemfire OQL Interpreter for Apache Zeppelin</title>
+    <meta name="description" content="Apache Geode (incubating) provides a database-like consistency model, reliable transaction processing and a shared-nothing architecture to maintain very low latency performance with high concurrency processing.">
+    <meta name="author" content="The Apache Software Foundation">
+
+    <!-- Enable responsive viewport -->
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+    <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
+    <!--[if lt IE 9]>
+    <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
+    <![endif]-->
+
+    <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet">
+
+    <!-- Le styles -->
+    <link href="/docs/0.9.0/assets/themes/zeppelin/bootstrap/css/bootstrap.css" rel="stylesheet">
+    <link href="/docs/0.9.0/assets/themes/zeppelin/css/style.css?body=1" rel="stylesheet" type="text/css">
+    <link href="/docs/0.9.0/assets/themes/zeppelin/css/syntax.css" rel="stylesheet"  type="text/css" media="screen" /> 
+    <!-- Le fav and touch icons -->
+    <!-- Update these with your own images
+    <link rel="shortcut icon" href="images/favicon.ico">
+    <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
+    <link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png">
+    <link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png">
+    -->
+
+    <!-- Js -->
+    <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
+    <script src="/docs/0.9.0/assets/themes/zeppelin/bootstrap/js/bootstrap.min.js"></script>
+    <script src="/docs/0.9.0/assets/themes/zeppelin/js/docs.js"></script>
+    <script src="/docs/0.9.0/assets/themes/zeppelin/js/anchor.min.js"></script>
+    <script src="/docs/0.9.0/assets/themes/zeppelin/js/toc.js"></script>
+    <script src="/docs/0.9.0/assets/themes/zeppelin/js/lunr.min.js"></script>
+    <script src="/docs/0.9.0/assets/themes/zeppelin/js/search.js"></script>    
+
+    <!-- atom & rss feed -->
+    <link href="/docs/0.9.0/atom.xml" type="application/atom+xml" rel="alternate" title="Sitewide ATOM Feed">
+    <link href="/docs/0.9.0/rss.xml" type="application/rss+xml" rel="alternate" title="Sitewide RSS Feed">
+  </head>
+
+  <body>
+    
+        <div id="menu" class="navbar navbar-inverse navbar-fixed-top" role="navigation">
+      <div class="container navbar-container">
+        <div class="navbar-header">
+          <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+            <span class="sr-only">Toggle navigation</span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+          </button>
+          <div class="navbar-brand">
+            <a class="navbar-brand-main" href="http://zeppelin.apache.org">
+              <img src="/docs/0.9.0/assets/themes/zeppelin/img/zeppelin_logo.png" width="50"
+                   style="margin-top: -2px;" alt="I'm zeppelin">
+              <span style="margin-left: 5px; font-size: 27px;">Zeppelin</span>
+              <a class="navbar-brand-version" href="/docs/0.9.0"
+                 style="font-size: 15px; color: white;"> 0.9.0
+              </a>
+            </a>
+          </div>
+        </div>
+        <nav class="navbar-collapse collapse" role="navigation">
+          <ul class="nav navbar-nav">
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick Start <b class="caret"></b></a>
+              <ul class="dropdown-menu">
+                <li class="title"><span>Getting Started</span></li>
+                <li><a href="/docs/0.9.0/quickstart/install.html">Install</a></li>
+                <li><a href="/docs/0.9.0/quickstart/explore_ui.html">Explore UI</a></li>
+                <li><a href="/docs/0.9.0/quickstart/tutorial.html">Tutorial</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Run Mode</span></li>
+                <li><a href="/docs/0.9.0/quickstart/kubernetes.html">Kubernetes</a></li>
+                <li><a href="/docs/0.9.0/quickstart/docker.html">Docker</a></li>
+                <li><a href="/docs/0.9.0/quickstart/yarn.html">Yarn</a></li>
+                <li role="separator" class="divider"></li>
+                <li><a href="/docs/0.9.0/quickstart/spark_with_zeppelin.html">Spark with Zeppelin</a></li>
+                <li><a href="/docs/0.9.0/quickstart/sql_with_zeppelin.html">SQL with Zeppelin</a></li>
+                <li><a href="/docs/0.9.0/quickstart/python_with_zeppelin.html">Python with Zeppelin</a></li>
+              </ul>
+            </li>
+
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Usage<b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu">
+                <li class="title"><span>Dynamic Form</span></li>
+                <li><a href="/docs/0.9.0/usage/dynamic_form/intro.html">What is Dynamic Form?</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Display System</span></li>
+                <li><a href="/docs/0.9.0/usage/display_system/basic.html#text">Text Display</a></li>
+                <li><a href="/docs/0.9.0/usage/display_system/basic.html#html">HTML Display</a></li>
+                <li><a href="/docs/0.9.0/usage/display_system/basic.html#table">Table Display</a></li>
+                <li><a href="/docs/0.9.0/usage/display_system/basic.html#network">Network Display</a></li>
+                <li><a href="/docs/0.9.0/usage/display_system/angular_backend.html">Angular Display using Backend API</a></li>
+                <li><a href="/docs/0.9.0/usage/display_system/angular_frontend.html">Angular Display using Frontend API</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Interpreter</span></li>
+                <li><a href="/docs/0.9.0/usage/interpreter/overview.html">Overview</a></li>
+                <li><a href="/docs/0.9.0/usage/interpreter/interpreter_binding_mode.html">Interpreter Binding Mode</a></li>
+                <li><a href="/docs/0.9.0/usage/interpreter/user_impersonation.html">User Impersonation</a></li>
+                <li><a href="/docs/0.9.0/usage/interpreter/dependency_management.html">Dependency Management</a></li>
+                <li><a href="/docs/0.9.0/usage/interpreter/installation.html">Installing Interpreters</a></li>
+                <!--<li><a href="/docs/0.9.0/usage/interpreter/dynamic_loading.html">Dynamic Interpreter Loading (Experimental)</a></li>-->
+                <li><a href="/docs/0.9.0/usage/interpreter/execution_hooks.html">Execution Hooks (Experimental)</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Other Features</span></li>
+                <li><a href="/docs/0.9.0/usage/other_features/publishing_paragraphs.html">Publishing Paragraphs</a></li>
+                <li><a href="/docs/0.9.0/usage/other_features/personalized_mode.html">Personalized Mode</a></li>
+                <li><a href="/docs/0.9.0/usage/other_features/customizing_homepage.html">Customizing Zeppelin Homepage</a></li>
+                <li><a href="/docs/0.9.0/usage/other_features/notebook_actions.html">Notebook Actions</a></li>
+                <li><a href="/docs/0.9.0/usage/other_features/cron_scheduler.html">Cron Scheduler</a></li>
+                <li><a href="/docs/0.9.0/usage/other_features/zeppelin_context.html">Zeppelin Context</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>REST API</span></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/interpreter.html">Interpreter API</a></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/zeppelin_server.html">Zeppelin Server API</a></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/notebook.html">Notebook API</a></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/notebook_repository.html">Notebook Repository API</a></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/configuration.html">Configuration API</a></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/credential.html">Credential API</a></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/helium.html">Helium API</a></li>
+              </ul>
+            </li>
+
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Setup<b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu">
+                <li class="title"><span>Basics</span></li>
+                <li><a href="/docs/0.9.0/setup/basics/how_to_build.html">How to Build Zeppelin</a></li>
+                <li><a href="/docs/0.9.0/setup/basics/hadoop_integration.html">Hadoop Integration</a></li>
+                <li><a href="/docs/0.9.0/setup/basics/multi_user_support.html">Multi-user Support</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Deployment</span></li>
+                <!--<li><a href="/docs/0.9.0/setup/deployment/docker.html">Docker Image for Zeppelin</a></li>-->
+                <li><a href="/docs/0.9.0/setup/deployment/spark_cluster_mode.html#spark-standalone-mode">Spark Cluster Mode: Standalone</a></li>
+                <li><a href="/docs/0.9.0/setup/deployment/spark_cluster_mode.html#spark-on-yarn-mode">Spark Cluster Mode: YARN</a></li>
+                <li><a href="/docs/0.9.0/setup/deployment/spark_cluster_mode.html#spark-on-mesos-mode">Spark Cluster Mode: Mesos</a></li>
+                <li><a href="/docs/0.9.0/setup/deployment/flink_and_spark_cluster.html">Zeppelin with Flink, Spark Cluster</a></li>
+                <li><a href="/docs/0.9.0/setup/deployment/cdh.html">Zeppelin on CDH</a></li>
+                <li><a href="/docs/0.9.0/setup/deployment/virtual_machine.html">Zeppelin on VM: Vagrant</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Security</span></li>
+                <li><a href="/docs/0.9.0/setup/security/authentication_nginx.html">HTTP Basic Auth using NGINX</a></li>
+                <li><a href="/docs/0.9.0/setup/security/shiro_authentication.html">Shiro Authentication</a></li>
+                <li><a href="/docs/0.9.0/setup/security/notebook_authorization.html">Notebook Authorization</a></li>
+                <li><a href="/docs/0.9.0/setup/security/datasource_authorization.html">Data Source Authorization</a></li>
+                <li><a href="/docs/0.9.0/setup/security/http_security_headers.html">HTTP Security Headers</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Notebook Storage</span></li>
+                <li><a href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-local-git-repository">Git Storage</a></li>
+                <li><a href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-s3">S3 Storage</a></li>
+                <li><a href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-azure">Azure Storage</a></li>
+                <li><a href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-oss">OSS Storage</a></li>
+                <li><a href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-zeppelinhub">ZeppelinHub Storage</a></li>
+                <li><a href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-mongodb">MongoDB Storage</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Operation</span></li>
+                <li><a href="/docs/0.9.0/setup/operation/configuration.html">Configuration</a></li>
+                <li><a href="/docs/0.9.0/setup/operation/proxy_setting.html">Proxy Setting</a></li>
+                <li><a href="/docs/0.9.0/setup/operation/upgrading.html">Upgrading</a></li>
+                <li><a href="/docs/0.9.0/setup/operation/trouble_shooting.html">Trouble Shooting</a></li>
+              </ul>
+            </li>
+
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Interpreter <b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu">
+                <li class="title"><span>Interpreters</span></li>
+                <li><a href="/docs/0.9.0/usage/interpreter/overview.html">Overview</a></li>
+                <li role="separator" class="divider"></li>
+                <li><a href="/docs/0.9.0/interpreter/spark.html">Spark</a></li>
+                <li><a href="/docs/0.9.0/interpreter/jdbc.html">JDBC</a></li>
+                <li><a href="/docs/0.9.0/interpreter/python.html">Python</a></li>
+                <li><a href="/docs/0.9.0/interpreter/r.html">R</a></li>
+                <li role="separator" class="divider"></li>
+                <li><a href="/docs/0.9.0/interpreter/alluxio.html">Alluxio</a></li>
+                <li><a href="/docs/0.9.0/interpreter/beam.html">Beam</a></li>
+                <li><a href="/docs/0.9.0/interpreter/bigquery.html">BigQuery</a></li>
+                <li><a href="/docs/0.9.0/interpreter/cassandra.html">Cassandra</a></li>
+                <li><a href="/docs/0.9.0/interpreter/elasticsearch.html">Elasticsearch</a></li>
+                <li><a href="/docs/0.9.0/interpreter/flink.html">Flink</a></li>
+                <li><a href="/docs/0.9.0/interpreter/geode.html">Geode</a></li>
+                <li><a href="/docs/0.9.0/interpreter/groovy.html">Groovy</a></li>
+                <li><a href="/docs/0.9.0/interpreter/hazelcastjet.html">Hazelcast Jet</a></li>
+                <li><a href="/docs/0.9.0/interpreter/hbase.html">HBase</a></li>
+                <li><a href="/docs/0.9.0/interpreter/hdfs.html">HDFS</a></li>
+                <li><a href="/docs/0.9.0/interpreter/hive.html">Hive</a></li>
+                <li><a href="/docs/0.9.0/interpreter/ignite.html">Ignite</a></li>
+                <li><a href="/docs/0.9.0/interpreter/java.html">Java</a></li>
+                <li><a href="/docs/0.9.0/interpreter/jupyter.html">Jupyter</a></li>
+                <li><a href="/docs/0.9.0/interpreter/kotlin.html">Kotlin</a></li>
+                <li><a href="/docs/0.9.0/interpreter/kylin.html">Kylin</a></li>
+                <li><a href="/docs/0.9.0/interpreter/lens.html">Lens</a></li>
+                <li><a href="/docs/0.9.0/interpreter/livy.html">Livy</a></li>
+                <li><a href="/docs/0.9.0/interpreter/markdown.html">Markdown</a></li>
+                <li><a href="/docs/0.9.0/interpreter/mongodb.html">MongoDB</a></li>
+                <li><a href="/docs/0.9.0/interpreter/neo4j.html">Neo4j</a></li>
+                <li><a href="/docs/0.9.0/interpreter/pig.html">Pig</a></li>
+                <li><a href="/docs/0.9.0/interpreter/postgresql.html">Postgresql, HAWQ</a></li>
+                <li><a href="/docs/0.9.0/interpreter/scalding.html">Scalding</a></li>
+                <li><a href="/docs/0.9.0/interpreter/scio.html">Scio</a></li>
+                <li><a href="/docs/0.9.0/interpreter/shell.html">Shell</a></li>
+                <li><a href="/docs/0.9.0/interpreter/sparql.html">Sparql</a></li>
+                <li><a href="/docs/0.9.0/interpreter/submarine.html">Submarine</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">More<b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu" style="right: 0; left: auto;">
+                <li class="title"><span>Extending Zeppelin</span></li>
+                <li><a href="/docs/0.9.0/development/writing_zeppelin_interpreter.html">Writing Zeppelin Interpreter</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Helium (Experimental)</span></li>
+                <li><a href="/docs/0.9.0/development/helium/overview.html">Overview</a></li>
+                <li><a href="/docs/0.9.0/development/helium/writing_application.html">Writing Helium Application</a></li>
+                <li><a href="/docs/0.9.0/development/helium/writing_spell.html">Writing Helium Spell</a></li>
+                <li><a href="/docs/0.9.0/development/helium/writing_visualization_basic.html">Writing Helium Visualization: Basics</a></li>
+                <li><a href="/docs/0.9.0/development/helium/writing_visualization_transformation.html">Writing Helium Visualization: Transformation</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Contributing to Zeppelin</span></li>
+                <li><a href="/docs/0.9.0/setup/basics/how_to_build.html">How to Build Zeppelin</a></li>
+                <li><a href="/docs/0.9.0/development/contribution/useful_developer_tools.html">Useful Developer Tools</a></li>
+                <li><a href="/docs/0.9.0/development/contribution/how_to_contribute_code.html">How to Contribute (code)</a></li>
+                <li><a href="/docs/0.9.0/development/contribution/how_to_contribute_website.html">How to Contribute (website)</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>External Resources</span></li>
+                <li><a target="_blank" href="https://zeppelin.apache.org/community.html">Mailing List</a></li>
+                <li><a target="_blank" href="https://cwiki.apache.org/confluence/display/ZEPPELIN/Zeppelin+Home">Apache Zeppelin Wiki</a></li>
+                <li><a target="_blank" href="http://stackoverflow.com/questions/tagged/apache-zeppelin">Stackoverflow Questions about Zeppelin</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="/docs/0.9.0/search.html" class="nav-search-link">
+                <span class="fa fa-search nav-search-icon"></span>
+              </a>
+            </li>
+          </ul>
+        </nav><!--/.navbar-collapse -->
+      </div>
+    </div>
+
+
+
+    <div class="content">
+      
+<!--<div class="hero-unit Geode/Gemfire OQL Interpreter for Apache Zeppelin">
+  <h1></h1>
+</div>
+-->
+
+<div class="row">
+  <div class="col-md-12">
+    <!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<h1>Geode/Gemfire OQL Interpreter for Apache Zeppelin</h1>
+
+<div id="toc"></div>
+
+<h2>Overview</h2>
+
+<table class="table-configuration">
+  <tr>
+    <th>Name</th>
+    <th>Class</th>
+    <th>Description</th>
+  </tr>
+  <tr>
+    <td>%geode.oql</td>
+    <td>GeodeOqlInterpreter</td>
+    <td>Provides OQL environment for Apache Geode</td>
+  </tr>
+</table>
+
+<p>This interpreter supports the <a href="http://geode.incubator.apache.org/">Geode</a> <a href="http://geode-docs.cfapps.io/docs/developing/querying_basics/oql_compared_to_sql.html">Object Query Language (OQL)</a>.<br>
+With the OQL-based querying language:</p>
+
+<p><a href="https://www.youtube.com/watch?v=zvzzA9GXu3Q"><img align="right" src="http://img.youtube.com/vi/zvzzA9GXu3Q/3.jpg" alt="zeppelin-view" hspace="10" width="200"></img></a></p>
+
+<ul>
+<li>You can query on any arbitrary object</li>
+<li>You can navigate object collections</li>
+<li>You can invoke methods and access the behavior of objects</li>
+<li>Data mapping is supported</li>
+<li>You are not required to declare types. Since you do not need type definitions, you can work across multiple languages</li>
+<li>You are not constrained by a schema</li>
+</ul>
+
+<p>This <a href="https://www.youtube.com/watch?v=zvzzA9GXu3Q">Video Tutorial</a> illustrates some of the features provided by the <code>Geode Interpreter</code>.</p>
+
+<h2>Create Interpreter</h2>
+
+<p>By default Zeppelin creates one <code>Geode/OQL</code> instance. You can remove it or create more instances.</p>
+
+<p>Multiple Geode instances can be created, each configured to the same or different backend Geode cluster. 
+But over time a  <code>Notebook</code> can have only one Geode interpreter instance <code>bound</code>. 
+That means you <em>cannot</em> connect to different Geode clusters in the same <code>Notebook</code>. 
+This is a known Zeppelin limitation.</p>
+
+<p>To create new Geode instance open the <code>Interpreter</code> section and click the <code>+Create</code> button. 
+Pick a <code>Name</code> of your choice and from the <code>Interpreter</code> drop-down select <code>geode</code>.<br>
+Then follow the configuration instructions and <code>Save</code> the new instance.</p>
+
+<blockquote>
+<p>Note: The <code>Name</code> of the instance is used only to distinguish the instances while binding them to the <code>Notebook</code>. The <code>Name</code> is irrelevant inside the <code>Notebook</code>. In the <code>Notebook</code> you must use <code>%geode.oql</code> tag.</p>
+</blockquote>
+
+<h2>Bind to Notebook</h2>
+
+<p>In the <code>Notebook</code> click on the <code>settings</code> icon in the top right corner. 
+The select/deselect the interpreters to be bound with the <code>Notebook</code>.</p>
+
+<h2>Configuration</h2>
+
+<p>You can modify the configuration of the Geode from the <code>Interpreter</code> section. 
+The Geode interpreter expresses the following properties:</p>
+
+<table class="table-configuration">
+  <tr>
+    <th>Property Name</th>
+    <th>Description</th>
+    <th>Default Value</th>
+  </tr>
+  <tr>
+    <td>geode.locator.host</td>
+    <td>The Geode Locator Host</td>
+    <td>localhost</td>
+  </tr>
+  <tr>
+    <td>geode.locator.port</td>
+    <td>The Geode Locator Port</td>
+    <td>10334</td>
+  </tr>
+  <tr>
+    <td>geode.max.result</td>
+    <td>Max number of OQL result to display to prevent the browser overload</td>
+    <td>1000</td>
+  </tr>
+</table>
+
+<h2>How to use</h2>
+
+<blockquote>
+<p><em>Tip 1: Use (CTRL + .) for OQL auto-completion.</em></p>
+
+<p><em>Tip 2: Always start the paragraphs with the full <code>%geode.oql</code> prefix tag! The short notation: <code>%geode</code> would still be able run the OQL queries but the syntax highlighting and the auto-completions will be disabled.</em></p>
+</blockquote>
+
+<h3>Create / Destroy Regions</h3>
+
+<p>The OQL specification does not support  <a href="https://cwiki.apache.org/confluence/display/GEODE/Index#Index-MainConceptsandComponents">Geode Regions</a> mutation operations. 
+To <code>create</code>/<code>destroy</code> regions one should use the <a href="http://geode-docs.cfapps.io/docs/tools_modules/gfsh/chapter_overview.html">GFSH</a> shell tool instead. 
+In the following it is assumed that the GFSH is colocated with Zeppelin server.</p>
+<div class="highlight"><pre><code class="bash language-bash" data-lang="bash">%sh
+<span class="nb">source</span> /etc/geode/conf/geode-env.sh
+gfsh <span class="s">&lt;&lt; EOF</span>
+
+<span class="s"> connect --locator=ambari.localdomain[10334]</span>
+
+<span class="s"> destroy region --name=/regionEmployee</span>
+<span class="s"> destroy region --name=/regionCompany</span>
+<span class="s"> create region --name=regionEmployee --type=REPLICATE</span>
+<span class="s"> create region --name=regionCompany --type=REPLICATE</span>
+
+<span class="s"> exit;</span>
+<span class="s">EOF</span>
+</code></pre></div>
+<p>Above snippet re-creates two regions: <code>regionEmployee</code> and <code>regionCompany</code>. 
+Note that you have to explicitly specify the locator host and port. 
+The values should match those you have used in the Geode Interpreter configuration. 
+Comprehensive list of <a href="http://geode-docs.cfapps.io/docs/tools_modules/gfsh/gfsh_quick_reference.html">GFSH Commands by Functional Area</a>.</p>
+
+<h3>Basic OQL</h3>
+<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="n">geode</span><span class="p">.</span><span class="n">oql</span>
+<span class="k">SELECT</span> <span class="k">count</span><span class="p">(</span><span class="o">*</span><span class="p">)</span> <span class="k">FROM</span> <span class="o">/</span><span class="n">regionEmployee</span>
+</code></pre></div>
+<p>OQL <code>IN</code> and <code>SET</code> filters:</p>
+<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="n">geode</span><span class="p">.</span><span class="n">oql</span>
+<span class="k">SELECT</span> <span class="o">*</span> <span class="k">FROM</span> <span class="o">/</span><span class="n">regionEmployee</span>
+<span class="k">WHERE</span> <span class="n">companyId</span> <span class="k">IN</span> <span class="k">SET</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span> <span class="k">OR</span> <span class="n">lastName</span> <span class="k">IN</span> <span class="k">SET</span><span class="p">(</span><span class="s1">&#39;Tzolov13&#39;</span><span class="p">,</span> <span class="s1">&#39;Tzolov73&#39;</span><span class="p">)</span>
+</code></pre></div>
+<p>OQL <code>JOIN</code> operations</p>
+<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="n">geode</span><span class="p">.</span><span class="n">oql</span>
+<span class="k">SELECT</span> <span class="n">e</span><span class="p">.</span><span class="n">employeeId</span><span class="p">,</span> <span class="n">e</span><span class="p">.</span><span class="n">firstName</span><span class="p">,</span> <span class="n">e</span><span class="p">.</span><span class="n">lastName</span><span class="p">,</span> <span class="k">c</span><span class="p">.</span><span class="n">id</span> <span class="k">as</span> <span class="n">companyId</span><span class="p">,</span> <span class="k">c</span><span class="p">.</span><span class="n">companyName</span><span class="p">,</span> <span class="k">c</span><span class="p">.</span><span class="n">address</span>
+<span class="k">FROM</span> <span class="o">/</span><span class="n">regionEmployee</span> <span class="n">e</span><span class="p">,</span> <span class="o">/</span><span class="n">regionCompany</span> <span class="k">c</span>
+<span class="k">WHERE</span> <span class="n">e</span><span class="p">.</span><span class="n">companyId</span> <span class="o">=</span> <span class="k">c</span><span class="p">.</span><span class="n">id</span>
+</code></pre></div>
+<p>By default the QOL responses contain only the region entry values. To access the keys, query the <code>EntrySet</code> instead:</p>
+<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="n">geode</span><span class="p">.</span><span class="n">oql</span>
+<span class="k">SELECT</span> <span class="n">e</span><span class="p">.</span><span class="k">key</span><span class="p">,</span> <span class="n">e</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">companyId</span><span class="p">,</span> <span class="n">e</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">email</span>
+<span class="k">FROM</span> <span class="o">/</span><span class="n">regionEmployee</span><span class="p">.</span><span class="n">entrySet</span> <span class="n">e</span>
+</code></pre></div>
+<p>Following query will return the EntrySet value as a Blob:</p>
+<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="n">geode</span><span class="p">.</span><span class="n">oql</span>
+<span class="k">SELECT</span> <span class="n">e</span><span class="p">.</span><span class="k">key</span><span class="p">,</span> <span class="n">e</span><span class="p">.</span><span class="n">value</span> <span class="k">FROM</span> <span class="o">/</span><span class="n">regionEmployee</span><span class="p">.</span><span class="n">entrySet</span> <span class="n">e</span>
+</code></pre></div>
+<blockquote>
+<p>Note: You can have multiple queries in the same paragraph but only the result from the first is displayed. [<a href="https://issues.apache.org/jira/browse/ZEPPELIN-178">1</a>], [<a href="https://issues.apache.org/jira/browse/ZEPPELIN-212">2</a>].</p>
+</blockquote>
+
+<h3>GFSH Commands From The Shell</h3>
+
+<p>Use the Shell Interpreter (<code>%sh</code>) to run OQL commands form the command line:</p>
+<div class="highlight"><pre><code class="bash language-bash" data-lang="bash">%sh
+<span class="nb">source</span> /etc/geode/conf/geode-env.sh
+gfsh -e <span class="s2">&quot;connect&quot;</span> -e <span class="s2">&quot;list members&quot;</span>
+</code></pre></div>
+<h3>Apply Zeppelin Dynamic Forms</h3>
+
+<p>You can leverage <a href="../usage/dynamic_form/intro.html">Zeppelin Dynamic Form</a> inside your OQL queries. You can use both the <code>text input</code> and <code>select form</code> parameterization features</p>
+<div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="o">%</span><span class="n">geode</span><span class="p">.</span><span class="n">oql</span>
+<span class="k">SELECT</span> <span class="o">*</span> <span class="k">FROM</span> <span class="o">/</span><span class="n">regionEmployee</span> <span class="n">e</span> <span class="k">WHERE</span> <span class="n">e</span><span class="p">.</span><span class="n">employeeId</span> <span class="o">&gt;</span> <span class="err">${</span><span class="n">Id</span><span class="err">}</span>
+</code></pre></div>
+<h3>Auto-completion</h3>
+
+<p>The Geode Interpreter provides a basic auto-completion functionality. On <code>(Ctrl+.)</code> it list the most relevant suggestions in a pop-up window.</p>
+
+<h2>Geode REST API</h2>
+
+<p>To list the defined regions you can use the <a href="http://geode-docs.cfapps.io/docs/geode_rest/chapter_overview.html">Geode REST API</a>:</p>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">http://&lt;geode server hostname&gt;phd1.localdomain:8484/gemfire-api/v1/
+</code></pre></div><div class="highlight"><pre><code class="json language-json" data-lang="json"><span class="p">{</span>
+  <span class="nt">&quot;regions&quot;</span> <span class="p">:</span> <span class="p">[{</span>
+    <span class="nt">&quot;name&quot;</span> <span class="p">:</span> <span class="s2">&quot;regionEmployee&quot;</span><span class="p">,</span>
+    <span class="nt">&quot;type&quot;</span> <span class="p">:</span> <span class="s2">&quot;REPLICATE&quot;</span><span class="p">,</span>
+    <span class="nt">&quot;key-constraint&quot;</span> <span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
+    <span class="nt">&quot;value-constraint&quot;</span> <span class="p">:</span> <span class="kc">null</span>
+  <span class="p">},</span> <span class="p">{</span>
+    <span class="nt">&quot;name&quot;</span> <span class="p">:</span> <span class="s2">&quot;regionCompany&quot;</span><span class="p">,</span>
+    <span class="nt">&quot;type&quot;</span> <span class="p">:</span> <span class="s2">&quot;REPLICATE&quot;</span><span class="p">,</span>
+    <span class="nt">&quot;key-constraint&quot;</span> <span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
+    <span class="nt">&quot;value-constraint&quot;</span> <span class="p">:</span> <span class="kc">null</span>
+  <span class="p">}]</span>
+<span class="p">}</span>
+</code></pre></div>
+<blockquote>
+<p>To enable Geode REST API with JSON support add the following properties to geode.server.properties.file and restart:</p>
+</blockquote>
+<div class="highlight"><pre><code class="text language-text" data-lang="text">http-service-port=8484
+start-dev-rest-api=true
+</code></pre></div>
+  </div>
+</div>
+
+
+      <hr>
+      <footer>
+        <!-- <p>&copy; 2020 The Apache Software Foundation</p>-->
+      </footer>
+    </div>
+
+    
+
+
+  <script type="text/javascript">
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-45176241-5', 'zeppelin.apache.org');
+  ga('require', 'linkid', 'linkid.js');
+  ga('send', 'pageview');
+
+</script>
+
+
+
+  </body>
+</html>
+

Propchange: zeppelin/site/docs/0.9.0/interpreter/geode.html
------------------------------------------------------------------------------
    svn:executable = *

Added: zeppelin/site/docs/0.9.0/interpreter/groovy.html
URL: http://svn.apache.org/viewvc/zeppelin/site/docs/0.9.0/interpreter/groovy.html?rev=1884775&view=auto
==============================================================================
--- zeppelin/site/docs/0.9.0/interpreter/groovy.html (added)
+++ zeppelin/site/docs/0.9.0/interpreter/groovy.html Thu Dec 24 14:36:01 2020
@@ -0,0 +1,396 @@
+
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <title>Apache Zeppelin 0.9.0 Documentation: Apache Groovy Interpreter for Apache Zeppelin</title>
+    <meta name="description" content="Apache Groovy is a powerful, optionally typed and dynamic language, with static-typing and static compilation capabilities, for the Java platform aimed at improving developer productivity thanks to a concise, familiar and easy to learn syntax.">
+    <meta name="author" content="The Apache Software Foundation">
+
+    <!-- Enable responsive viewport -->
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+    <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
+    <!--[if lt IE 9]>
+    <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
+    <![endif]-->
+
+    <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet">
+
+    <!-- Le styles -->
+    <link href="/docs/0.9.0/assets/themes/zeppelin/bootstrap/css/bootstrap.css" rel="stylesheet">
+    <link href="/docs/0.9.0/assets/themes/zeppelin/css/style.css?body=1" rel="stylesheet" type="text/css">
+    <link href="/docs/0.9.0/assets/themes/zeppelin/css/syntax.css" rel="stylesheet"  type="text/css" media="screen" /> 
+    <!-- Le fav and touch icons -->
+    <!-- Update these with your own images
+    <link rel="shortcut icon" href="images/favicon.ico">
+    <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
+    <link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png">
+    <link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png">
+    -->
+
+    <!-- Js -->
+    <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
+    <script src="/docs/0.9.0/assets/themes/zeppelin/bootstrap/js/bootstrap.min.js"></script>
+    <script src="/docs/0.9.0/assets/themes/zeppelin/js/docs.js"></script>
+    <script src="/docs/0.9.0/assets/themes/zeppelin/js/anchor.min.js"></script>
+    <script src="/docs/0.9.0/assets/themes/zeppelin/js/toc.js"></script>
+    <script src="/docs/0.9.0/assets/themes/zeppelin/js/lunr.min.js"></script>
+    <script src="/docs/0.9.0/assets/themes/zeppelin/js/search.js"></script>    
+
+    <!-- atom & rss feed -->
+    <link href="/docs/0.9.0/atom.xml" type="application/atom+xml" rel="alternate" title="Sitewide ATOM Feed">
+    <link href="/docs/0.9.0/rss.xml" type="application/rss+xml" rel="alternate" title="Sitewide RSS Feed">
+  </head>
+
+  <body>
+    
+        <div id="menu" class="navbar navbar-inverse navbar-fixed-top" role="navigation">
+      <div class="container navbar-container">
+        <div class="navbar-header">
+          <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+            <span class="sr-only">Toggle navigation</span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+          </button>
+          <div class="navbar-brand">
+            <a class="navbar-brand-main" href="http://zeppelin.apache.org">
+              <img src="/docs/0.9.0/assets/themes/zeppelin/img/zeppelin_logo.png" width="50"
+                   style="margin-top: -2px;" alt="I'm zeppelin">
+              <span style="margin-left: 5px; font-size: 27px;">Zeppelin</span>
+              <a class="navbar-brand-version" href="/docs/0.9.0"
+                 style="font-size: 15px; color: white;"> 0.9.0
+              </a>
+            </a>
+          </div>
+        </div>
+        <nav class="navbar-collapse collapse" role="navigation">
+          <ul class="nav navbar-nav">
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick Start <b class="caret"></b></a>
+              <ul class="dropdown-menu">
+                <li class="title"><span>Getting Started</span></li>
+                <li><a href="/docs/0.9.0/quickstart/install.html">Install</a></li>
+                <li><a href="/docs/0.9.0/quickstart/explore_ui.html">Explore UI</a></li>
+                <li><a href="/docs/0.9.0/quickstart/tutorial.html">Tutorial</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Run Mode</span></li>
+                <li><a href="/docs/0.9.0/quickstart/kubernetes.html">Kubernetes</a></li>
+                <li><a href="/docs/0.9.0/quickstart/docker.html">Docker</a></li>
+                <li><a href="/docs/0.9.0/quickstart/yarn.html">Yarn</a></li>
+                <li role="separator" class="divider"></li>
+                <li><a href="/docs/0.9.0/quickstart/spark_with_zeppelin.html">Spark with Zeppelin</a></li>
+                <li><a href="/docs/0.9.0/quickstart/sql_with_zeppelin.html">SQL with Zeppelin</a></li>
+                <li><a href="/docs/0.9.0/quickstart/python_with_zeppelin.html">Python with Zeppelin</a></li>
+              </ul>
+            </li>
+
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Usage<b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu">
+                <li class="title"><span>Dynamic Form</span></li>
+                <li><a href="/docs/0.9.0/usage/dynamic_form/intro.html">What is Dynamic Form?</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Display System</span></li>
+                <li><a href="/docs/0.9.0/usage/display_system/basic.html#text">Text Display</a></li>
+                <li><a href="/docs/0.9.0/usage/display_system/basic.html#html">HTML Display</a></li>
+                <li><a href="/docs/0.9.0/usage/display_system/basic.html#table">Table Display</a></li>
+                <li><a href="/docs/0.9.0/usage/display_system/basic.html#network">Network Display</a></li>
+                <li><a href="/docs/0.9.0/usage/display_system/angular_backend.html">Angular Display using Backend API</a></li>
+                <li><a href="/docs/0.9.0/usage/display_system/angular_frontend.html">Angular Display using Frontend API</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Interpreter</span></li>
+                <li><a href="/docs/0.9.0/usage/interpreter/overview.html">Overview</a></li>
+                <li><a href="/docs/0.9.0/usage/interpreter/interpreter_binding_mode.html">Interpreter Binding Mode</a></li>
+                <li><a href="/docs/0.9.0/usage/interpreter/user_impersonation.html">User Impersonation</a></li>
+                <li><a href="/docs/0.9.0/usage/interpreter/dependency_management.html">Dependency Management</a></li>
+                <li><a href="/docs/0.9.0/usage/interpreter/installation.html">Installing Interpreters</a></li>
+                <!--<li><a href="/docs/0.9.0/usage/interpreter/dynamic_loading.html">Dynamic Interpreter Loading (Experimental)</a></li>-->
+                <li><a href="/docs/0.9.0/usage/interpreter/execution_hooks.html">Execution Hooks (Experimental)</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Other Features</span></li>
+                <li><a href="/docs/0.9.0/usage/other_features/publishing_paragraphs.html">Publishing Paragraphs</a></li>
+                <li><a href="/docs/0.9.0/usage/other_features/personalized_mode.html">Personalized Mode</a></li>
+                <li><a href="/docs/0.9.0/usage/other_features/customizing_homepage.html">Customizing Zeppelin Homepage</a></li>
+                <li><a href="/docs/0.9.0/usage/other_features/notebook_actions.html">Notebook Actions</a></li>
+                <li><a href="/docs/0.9.0/usage/other_features/cron_scheduler.html">Cron Scheduler</a></li>
+                <li><a href="/docs/0.9.0/usage/other_features/zeppelin_context.html">Zeppelin Context</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>REST API</span></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/interpreter.html">Interpreter API</a></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/zeppelin_server.html">Zeppelin Server API</a></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/notebook.html">Notebook API</a></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/notebook_repository.html">Notebook Repository API</a></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/configuration.html">Configuration API</a></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/credential.html">Credential API</a></li>
+                <li><a href="/docs/0.9.0/usage/rest_api/helium.html">Helium API</a></li>
+              </ul>
+            </li>
+
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Setup<b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu">
+                <li class="title"><span>Basics</span></li>
+                <li><a href="/docs/0.9.0/setup/basics/how_to_build.html">How to Build Zeppelin</a></li>
+                <li><a href="/docs/0.9.0/setup/basics/hadoop_integration.html">Hadoop Integration</a></li>
+                <li><a href="/docs/0.9.0/setup/basics/multi_user_support.html">Multi-user Support</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Deployment</span></li>
+                <!--<li><a href="/docs/0.9.0/setup/deployment/docker.html">Docker Image for Zeppelin</a></li>-->
+                <li><a href="/docs/0.9.0/setup/deployment/spark_cluster_mode.html#spark-standalone-mode">Spark Cluster Mode: Standalone</a></li>
+                <li><a href="/docs/0.9.0/setup/deployment/spark_cluster_mode.html#spark-on-yarn-mode">Spark Cluster Mode: YARN</a></li>
+                <li><a href="/docs/0.9.0/setup/deployment/spark_cluster_mode.html#spark-on-mesos-mode">Spark Cluster Mode: Mesos</a></li>
+                <li><a href="/docs/0.9.0/setup/deployment/flink_and_spark_cluster.html">Zeppelin with Flink, Spark Cluster</a></li>
+                <li><a href="/docs/0.9.0/setup/deployment/cdh.html">Zeppelin on CDH</a></li>
+                <li><a href="/docs/0.9.0/setup/deployment/virtual_machine.html">Zeppelin on VM: Vagrant</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Security</span></li>
+                <li><a href="/docs/0.9.0/setup/security/authentication_nginx.html">HTTP Basic Auth using NGINX</a></li>
+                <li><a href="/docs/0.9.0/setup/security/shiro_authentication.html">Shiro Authentication</a></li>
+                <li><a href="/docs/0.9.0/setup/security/notebook_authorization.html">Notebook Authorization</a></li>
+                <li><a href="/docs/0.9.0/setup/security/datasource_authorization.html">Data Source Authorization</a></li>
+                <li><a href="/docs/0.9.0/setup/security/http_security_headers.html">HTTP Security Headers</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Notebook Storage</span></li>
+                <li><a href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-local-git-repository">Git Storage</a></li>
+                <li><a href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-s3">S3 Storage</a></li>
+                <li><a href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-azure">Azure Storage</a></li>
+                <li><a href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-oss">OSS Storage</a></li>
+                <li><a href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-zeppelinhub">ZeppelinHub Storage</a></li>
+                <li><a href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-mongodb">MongoDB Storage</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Operation</span></li>
+                <li><a href="/docs/0.9.0/setup/operation/configuration.html">Configuration</a></li>
+                <li><a href="/docs/0.9.0/setup/operation/proxy_setting.html">Proxy Setting</a></li>
+                <li><a href="/docs/0.9.0/setup/operation/upgrading.html">Upgrading</a></li>
+                <li><a href="/docs/0.9.0/setup/operation/trouble_shooting.html">Trouble Shooting</a></li>
+              </ul>
+            </li>
+
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Interpreter <b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu">
+                <li class="title"><span>Interpreters</span></li>
+                <li><a href="/docs/0.9.0/usage/interpreter/overview.html">Overview</a></li>
+                <li role="separator" class="divider"></li>
+                <li><a href="/docs/0.9.0/interpreter/spark.html">Spark</a></li>
+                <li><a href="/docs/0.9.0/interpreter/jdbc.html">JDBC</a></li>
+                <li><a href="/docs/0.9.0/interpreter/python.html">Python</a></li>
+                <li><a href="/docs/0.9.0/interpreter/r.html">R</a></li>
+                <li role="separator" class="divider"></li>
+                <li><a href="/docs/0.9.0/interpreter/alluxio.html">Alluxio</a></li>
+                <li><a href="/docs/0.9.0/interpreter/beam.html">Beam</a></li>
+                <li><a href="/docs/0.9.0/interpreter/bigquery.html">BigQuery</a></li>
+                <li><a href="/docs/0.9.0/interpreter/cassandra.html">Cassandra</a></li>
+                <li><a href="/docs/0.9.0/interpreter/elasticsearch.html">Elasticsearch</a></li>
+                <li><a href="/docs/0.9.0/interpreter/flink.html">Flink</a></li>
+                <li><a href="/docs/0.9.0/interpreter/geode.html">Geode</a></li>
+                <li><a href="/docs/0.9.0/interpreter/groovy.html">Groovy</a></li>
+                <li><a href="/docs/0.9.0/interpreter/hazelcastjet.html">Hazelcast Jet</a></li>
+                <li><a href="/docs/0.9.0/interpreter/hbase.html">HBase</a></li>
+                <li><a href="/docs/0.9.0/interpreter/hdfs.html">HDFS</a></li>
+                <li><a href="/docs/0.9.0/interpreter/hive.html">Hive</a></li>
+                <li><a href="/docs/0.9.0/interpreter/ignite.html">Ignite</a></li>
+                <li><a href="/docs/0.9.0/interpreter/java.html">Java</a></li>
+                <li><a href="/docs/0.9.0/interpreter/jupyter.html">Jupyter</a></li>
+                <li><a href="/docs/0.9.0/interpreter/kotlin.html">Kotlin</a></li>
+                <li><a href="/docs/0.9.0/interpreter/kylin.html">Kylin</a></li>
+                <li><a href="/docs/0.9.0/interpreter/lens.html">Lens</a></li>
+                <li><a href="/docs/0.9.0/interpreter/livy.html">Livy</a></li>
+                <li><a href="/docs/0.9.0/interpreter/markdown.html">Markdown</a></li>
+                <li><a href="/docs/0.9.0/interpreter/mongodb.html">MongoDB</a></li>
+                <li><a href="/docs/0.9.0/interpreter/neo4j.html">Neo4j</a></li>
+                <li><a href="/docs/0.9.0/interpreter/pig.html">Pig</a></li>
+                <li><a href="/docs/0.9.0/interpreter/postgresql.html">Postgresql, HAWQ</a></li>
+                <li><a href="/docs/0.9.0/interpreter/scalding.html">Scalding</a></li>
+                <li><a href="/docs/0.9.0/interpreter/scio.html">Scio</a></li>
+                <li><a href="/docs/0.9.0/interpreter/shell.html">Shell</a></li>
+                <li><a href="/docs/0.9.0/interpreter/sparql.html">Sparql</a></li>
+                <li><a href="/docs/0.9.0/interpreter/submarine.html">Submarine</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="#" data-toggle="dropdown" class="dropdown-toggle">More<b class="caret"></b></a>
+              <ul class="dropdown-menu scrollable-menu" style="right: 0; left: auto;">
+                <li class="title"><span>Extending Zeppelin</span></li>
+                <li><a href="/docs/0.9.0/development/writing_zeppelin_interpreter.html">Writing Zeppelin Interpreter</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Helium (Experimental)</span></li>
+                <li><a href="/docs/0.9.0/development/helium/overview.html">Overview</a></li>
+                <li><a href="/docs/0.9.0/development/helium/writing_application.html">Writing Helium Application</a></li>
+                <li><a href="/docs/0.9.0/development/helium/writing_spell.html">Writing Helium Spell</a></li>
+                <li><a href="/docs/0.9.0/development/helium/writing_visualization_basic.html">Writing Helium Visualization: Basics</a></li>
+                <li><a href="/docs/0.9.0/development/helium/writing_visualization_transformation.html">Writing Helium Visualization: Transformation</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>Contributing to Zeppelin</span></li>
+                <li><a href="/docs/0.9.0/setup/basics/how_to_build.html">How to Build Zeppelin</a></li>
+                <li><a href="/docs/0.9.0/development/contribution/useful_developer_tools.html">Useful Developer Tools</a></li>
+                <li><a href="/docs/0.9.0/development/contribution/how_to_contribute_code.html">How to Contribute (code)</a></li>
+                <li><a href="/docs/0.9.0/development/contribution/how_to_contribute_website.html">How to Contribute (website)</a></li>
+                <li role="separator" class="divider"></li>
+                <li class="title"><span>External Resources</span></li>
+                <li><a target="_blank" href="https://zeppelin.apache.org/community.html">Mailing List</a></li>
+                <li><a target="_blank" href="https://cwiki.apache.org/confluence/display/ZEPPELIN/Zeppelin+Home">Apache Zeppelin Wiki</a></li>
+                <li><a target="_blank" href="http://stackoverflow.com/questions/tagged/apache-zeppelin">Stackoverflow Questions about Zeppelin</a></li>
+              </ul>
+            </li>
+            <li>
+              <a href="/docs/0.9.0/search.html" class="nav-search-link">
+                <span class="fa fa-search nav-search-icon"></span>
+              </a>
+            </li>
+          </ul>
+        </nav><!--/.navbar-collapse -->
+      </div>
+    </div>
+
+
+
+    <div class="content">
+      
+<!--<div class="hero-unit Apache Groovy Interpreter for Apache Zeppelin">
+  <h1></h1>
+</div>
+-->
+
+<div class="row">
+  <div class="col-md-12">
+    <!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<h1>Groovy Interpreter for Apache Zeppelin</h1>
+
+<h3>Samples</h3>
+<div class="highlight"><pre><code class="groovy language-groovy" data-lang="groovy"><span class="o">%</span><span class="n">groovy</span>
+<span class="c1">//get a parameter defined as z.angularBind(&#39;ngSearchParam&#39;, value, &#39;paragraph_id&#39;)</span>
+<span class="c1">//g is a context object for groovy to avoid mix with z object</span>
+<span class="kt">def</span> <span class="n">param</span> <span class="o">=</span> <span class="n">g</span><span class="o">.</span><span class="na">angular</span><span class="o">(</span><span class="s1">&#39;ngSearchParam&#39;</span><span class="o">)</span>
+<span class="c1">//send request https://www.googleapis.com/customsearch/v1?q=ngSearchParam_value</span>
+<span class="kt">def</span> <span class="n">r</span> <span class="o">=</span> <span class="n">HTTP</span><span class="o">.</span><span class="na">get</span><span class="o">(</span>
+  <span class="c1">//assume you defined the groovy interpreter property</span>
+  <span class="c1">//   `search_baseurl`=&#39;https://www.googleapis.com/customsearch/v1&#39;</span>
+  <span class="c1">//in groovy object o.getProperty(&#39;A&#39;) == o.&#39;A&#39; == o.A == o[&#39;A&#39;]</span>
+  <span class="n">url</span> <span class="o">:</span> <span class="n">g</span><span class="o">.</span><span class="na">search_baseurl</span><span class="o">,</span>
+  <span class="nl">query:</span> <span class="o">[</span> <span class="nl">q:</span> <span class="n">param</span> <span class="o">],</span>
+  <span class="nl">headers:</span> <span class="o">[</span>
+    <span class="s1">&#39;Accept&#39;</span><span class="o">:</span><span class="s1">&#39;application/json&#39;</span><span class="o">,</span>
+    <span class="c1">//&#39;Authorization:&#39; : g.getProperty(&#39;search_auth&#39;),</span>
+  <span class="o">],</span>
+  <span class="n">ssl</span> <span class="o">:</span> <span class="n">g</span><span class="o">.</span><span class="na">getProperty</span><span class="o">(</span><span class="s1">&#39;search_ssl&#39;</span><span class="o">)</span> <span class="c1">// assume groovy interpreter property search_ssl = HTTP.getNaiveSSLContext()</span>
+<span class="o">)</span>
+<span class="c1">//check response code</span>
+<span class="k">if</span><span class="o">(</span> <span class="n">r</span><span class="o">.</span><span class="na">response</span><span class="o">.</span><span class="na">code</span><span class="o">==</span><span class="mi">200</span> <span class="o">)</span> <span class="o">{</span>
+  <span class="n">g</span><span class="o">.</span><span class="na">html</span><span class="o">().</span><span class="na">with</span><span class="o">{</span> 
+    <span class="c1">//g.html() renders %angular to output and returns groovy.xml.MarkupBuilder</span>
+    <span class="n">h2</span><span class="o">(</span><span class="s2">&quot;the response ${r.response.code}&quot;</span><span class="o">)</span>
+    <span class="n">span</span><span class="o">(</span> <span class="n">r</span><span class="o">.</span><span class="na">response</span><span class="o">.</span><span class="na">body</span> <span class="o">)</span>
+    <span class="n">h2</span><span class="o">(</span><span class="s2">&quot;headers&quot;</span><span class="o">)</span>
+    <span class="n">pre</span><span class="o">(</span> <span class="n">r</span><span class="o">.</span><span class="na">response</span><span class="o">.</span><span class="na">headers</span><span class="o">.</span><span class="na">join</span><span class="o">(</span><span class="s1">&#39;\n&#39;</span><span class="o">)</span> <span class="o">)</span>
+  <span class="o">}</span>
+<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
+  <span class="c1">//just to show that it&#39;s possible to use println with multiline groovy string to render output</span>
+  <span class="n">println</span><span class="o">(</span><span class="s2">&quot;&quot;&quot;%angular</span>
+<span class="s2">    &lt;script&gt; alert (&quot;</span><span class="n">code</span><span class="o">=</span><span class="n">$</span><span class="o">{</span><span class="n">r</span><span class="o">.</span><span class="na">response</span><span class="o">.</span><span class="na">code</span><span class="o">}</span> <span class="err">\</span><span class="n">n</span> <span class="n">msg</span><span class="o">=</span><span class="n">$</span><span class="o">{</span><span class="n">r</span><span class="o">.</span><span class="na">response</span><span class="o">.</span><span class="na">message</span><span class="o">}</span><span class="s2">&quot;) &lt;/script&gt;</span>
+<span class="s2">  &quot;&quot;&quot;</span><span class="o">)</span>
+<span class="o">}</span>
+</code></pre></div><div class="highlight"><pre><code class="groovy language-groovy" data-lang="groovy"><span class="o">%</span><span class="n">groovy</span>
+
+<span class="c1">//renders a table with headers a, b, c  and two rows</span>
+<span class="n">g</span><span class="o">.</span><span class="na">table</span><span class="o">(</span>
+  <span class="o">[</span>
+    <span class="o">[</span><span class="s1">&#39;a&#39;</span><span class="o">,</span><span class="s1">&#39;b&#39;</span><span class="o">,</span><span class="s1">&#39;c&#39;</span><span class="o">],</span>
+    <span class="o">[</span><span class="s1">&#39;a1&#39;</span><span class="o">,</span><span class="s1">&#39;b1&#39;</span><span class="o">,</span><span class="s1">&#39;c1&#39;</span><span class="o">],</span>
+    <span class="o">[</span><span class="s1">&#39;a2&#39;</span><span class="o">,</span><span class="s1">&#39;b2&#39;</span><span class="o">,</span><span class="s1">&#39;c2&#39;</span><span class="o">],</span>
+  <span class="o">]</span>
+<span class="o">)</span>
+</code></pre></div>
+<h3>the <code>g</code> object</h3>
+
+<ul>
+<li><p><code>g.angular(String name)</code></p>
+
+<p>Returns angular object by name. Look up notebook scope first and then global scope.</p></li>
+<li><p><code>g.angularBind(String name, Object value)</code></p>
+
+<p>Assign a new <code>value</code> into angular object <code>name</code></p></li>
+<li><p><code>java.util.Properties g.getProperties()</code></p>
+
+<p>returns all properties defined for this interpreter</p></li>
+<li><p><code>String g.getProperty(&#39;PROPERTY_NAME&#39;)</code> </p>
+<div class="highlight"><pre><code class="groovy language-groovy" data-lang="groovy"><span class="n">g</span><span class="o">.</span><span class="na">PROPERTY_NAME</span>
+<span class="n">g</span><span class="o">.</span><span class="s1">&#39;PROPERTY_NAME&#39;</span>
+<span class="n">g</span><span class="o">[</span><span class="s1">&#39;PROPERTY_NAME&#39;</span><span class="o">]</span>
+<span class="n">g</span><span class="o">.</span><span class="na">getProperties</span><span class="o">().</span><span class="na">getProperty</span><span class="o">(</span><span class="s1">&#39;PROPERTY_NAME&#39;</span><span class="o">)</span>
+</code></pre></div>
+<p>All above the accessor to named property defined in groovy interpreter.
+In this case with name <code>PROPERTY_NAME</code></p></li>
+<li><p><code>groovy.xml.MarkupBuilder g.html()</code></p>
+
+<p>Starts or continues rendering of <code>%angular</code> to output and returns <a href="http://groovy-lang.org/processing-xml.html#_markupbuilder">groovy.xml.MarkupBuilder</a>
+MarkupBuilder is usefull to generate html (xml)</p></li>
+<li><p><code>void g.table(obj)</code></p>
+
+<p>starts or continues rendering table rows.</p>
+
+<p>obj:  List(rows) of List(columns) where first line is a header </p></li>
+<li><p><code>g.input(name, value )</code></p>
+
+<p>Creates <code>text</code> input with value specified. The parameter <code>value</code> is optional.</p></li>
+<li><p><code>g.select(name, default, Map&lt;Object, String&gt; options)</code></p>
+
+<p>Creates <code>select</code> input with defined options. The parameter <code>default</code> is optional.</p>
+
+<p><code>g.select(&#39;sex&#39;, &#39;m&#39;, [&#39;m&#39;:&#39;man&#39;, &#39;w&#39;:&#39;woman&#39;])</code></p></li>
+<li><p><code>g.checkbox(name, Collection checked, Map&lt;Object, String&gt; options)</code></p>
+
+<p>Creates <code>checkbox</code> input.</p></li>
+<li><p><code>g.get(name, default)</code></p>
+
+<p>Returns interpreter-based variable. Visibility depends on interpreter scope. The parameter <code>default</code> is optional.</p></li>
+<li><p><code>g.put(name, value)</code></p>
+
+<p>Stores new value into interpreter-based variable. Visibility depends on interpreter scope.</p></li>
+</ul>
+
+  </div>
+</div>
+
+
+      <hr>
+      <footer>
+        <!-- <p>&copy; 2020 The Apache Software Foundation</p>-->
+      </footer>
+    </div>
+
+    
+
+
+  <script type="text/javascript">
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-45176241-5', 'zeppelin.apache.org');
+  ga('require', 'linkid', 'linkid.js');
+  ga('send', 'pageview');
+
+</script>
+
+
+
+  </body>
+</html>
+

Propchange: zeppelin/site/docs/0.9.0/interpreter/groovy.html
------------------------------------------------------------------------------
    svn:executable = *