<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>CalciteMetaImpl (Apache Calcite API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="CalciteMetaImpl (Apache Calcite API)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":9,"i8":9,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":9,"i28":9,"i29":9,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/CalciteMetaImpl.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.calcite.jdbc</a></div>
<h2 title="Class CalciteMetaImpl" class="title">Class CalciteMetaImpl</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.calcite.avatica.MetaImpl</li>
<li>
<ul class="inheritance">
<li>org.apache.calcite.jdbc.CalciteMetaImpl</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code>org.apache.calcite.avatica.Meta</code></dd>
</dl>
<hr>
<pre>public class <span class="typeNameLabel">CalciteMetaImpl</span>
extends org.apache.calcite.avatica.MetaImpl</pre>
<div class="block">Helper for implementing the <code>getXxx</code> methods such as
 <code>AvaticaDatabaseMetaData.getTables(java.lang.String, java.lang.String, java.lang.String, java.lang.String[])</code>.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="CalciteMetaImpl.CalciteMetaSchema.html" title="class in org.apache.calcite.jdbc">CalciteMetaImpl.CalciteMetaSchema</a></span></code></th>
<td class="colLast">
<div class="block">Metadata describing a Calcite schema.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="CalciteMetaImpl.CalciteMetaTable.html" title="class in org.apache.calcite.jdbc">CalciteMetaImpl.CalciteMetaTable</a></span></code></th>
<td class="colLast">
<div class="block">Metadata describing a Calcite table.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="CalciteMetaImpl.LimitIterator.html" title="class in org.apache.calcite.jdbc">CalciteMetaImpl.LimitIterator</a>&lt;<a href="CalciteMetaImpl.LimitIterator.html" title="type parameter in CalciteMetaImpl.LimitIterator">E</a>&gt;</span></code></th>
<td class="colLast">
<div class="block">Iterator that returns at most <code>limit</code> rows from an underlying
 <code>Iterator</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="CalciteMetaImpl.MetadataTable.html" title="class in org.apache.calcite.jdbc">CalciteMetaImpl.MetadataTable</a>&lt;<a href="CalciteMetaImpl.MetadataTable.html" title="type parameter in CalciteMetaImpl.MetadataTable">E</a>&gt;</span></code></th>
<td class="colLast">
<div class="block">Table whose contents are metadata.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.apache.calcite.avatica.MetaImpl">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.apache.calcite.avatica.MetaImpl</h3>
<code>org.apache.calcite.avatica.MetaImpl.ColumnNoNulls, org.apache.calcite.avatica.MetaImpl.ColumnNullable, org.apache.calcite.avatica.MetaImpl.ColumnNullableUnknown, org.apache.calcite.avatica.MetaImpl.MetaAttribute, org.apache.calcite.avatica.MetaImpl.MetaBestRowIdentifier, org.apache.calcite.avatica.MetaImpl.MetaCatalog, org.apache.calcite.avatica.MetaImpl.MetaClientInfoProperty, org.apache.calcite.avatica.MetaImpl.MetaColumn, org.apache.calcite.avatica.MetaImpl.MetaColumnPrivilege, org.apache.calcite.avatica.MetaImpl.MetaCrossReference, org.apache.calcite.avatica.MetaImpl.MetaExportedKey, org.apache.calcite.avatica.MetaImpl.MetaFunction, org.apache.calcite.avatica.MetaImpl.MetaFunctionColumn, org.apache.calcite.avatica.MetaImpl.MetaImportedKey, org.apache.calcite.avatica.MetaImpl.MetaIndexInfo, org.apache.calcite.avatica.MetaImpl.MetaPrimaryKey, org.apache.calcite.avatica.MetaImpl.MetaProcedure, org.apache.calcite.avatica.MetaImpl.MetaProcedureColumn, org.apache.calcite.avatica.MetaImpl.MetaPseudoColumn, org.apache.calcite.avatica.MetaImpl.MetaSchema, org.apache.calcite.avatica.MetaImpl.MetaSuperTable, org.apache.calcite.avatica.MetaImpl.MetaSuperType, org.apache.calcite.avatica.MetaImpl.MetaTable, org.apache.calcite.avatica.MetaImpl.MetaTablePrivilege, org.apache.calcite.avatica.MetaImpl.MetaTableType, org.apache.calcite.avatica.MetaImpl.MetaTypeInfo, org.apache.calcite.avatica.MetaImpl.MetaUdt, org.apache.calcite.avatica.MetaImpl.MetaVersionColumn, org.apache.calcite.avatica.MetaImpl.Named</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.apache.calcite.avatica.Meta">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.calcite.avatica.Meta</h3>
<code>org.apache.calcite.avatica.Meta.ConnectionHandle, org.apache.calcite.avatica.Meta.ConnectionProperties, org.apache.calcite.avatica.Meta.CursorFactory, org.apache.calcite.avatica.Meta.DatabaseProperty, org.apache.calcite.avatica.Meta.ExecuteBatchResult, org.apache.calcite.avatica.Meta.ExecuteResult, org.apache.calcite.avatica.Meta.Factory, org.apache.calcite.avatica.Meta.Frame, org.apache.calcite.avatica.Meta.MetaResultSet, org.apache.calcite.avatica.Meta.Pat, org.apache.calcite.avatica.Meta.PrepareCallback, org.apache.calcite.avatica.Meta.Signature, org.apache.calcite.avatica.Meta.StatementHandle, org.apache.calcite.avatica.Meta.StatementType, org.apache.calcite.avatica.Meta.Style</code></li>
</ul>
</li>
</ul>
</section>
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) static <a href="Driver.html" title="class in org.apache.calcite.jdbc">Driver</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#DRIVER">DRIVER</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.org.apache.calcite.avatica.MetaImpl">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.calcite.avatica.MetaImpl</h3>
<code>connection, connProps</code></li>
</ul>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(org.apache.calcite.jdbc.CalciteConnectionImpl)">CalciteMetaImpl</a></span>&#8203;(<a href="CalciteConnectionImpl.html" title="class in org.apache.calcite.jdbc">CalciteConnectionImpl</a>&nbsp;connection)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>(package private) java.lang.Iterable&lt;java.lang.Object&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#_createIterable(org.apache.calcite.avatica.Meta.StatementHandle,org.apache.calcite.avatica.Meta.Signature,java.util.List,org.apache.calcite.avatica.Meta.Frame)">_createIterable</a></span>&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;handle,
               org.apache.calcite.avatica.Meta.Signature&nbsp;signature,
               java.util.List&lt;org.apache.calcite.avatica.remote.TypedValue&gt;&nbsp;parameterValues,
               org.apache.calcite.avatica.Meta.Frame&nbsp;firstFrame)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>private com.google.common.collect.ImmutableMap.Builder&lt;org.apache.calcite.avatica.Meta.DatabaseProperty,&#8203;java.lang.Object&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addProperty(com.google.common.collect.ImmutableMap.Builder,org.apache.calcite.avatica.Meta.DatabaseProperty)">addProperty</a></span>&#8203;(com.google.common.collect.ImmutableMap.Builder&lt;org.apache.calcite.avatica.Meta.DatabaseProperty,&#8203;java.lang.Object&gt;&nbsp;builder,
           org.apache.calcite.avatica.Meta.DatabaseProperty&nbsp;p)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected <a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaTypeInfo&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#allTypeInfo()">allTypeInfo</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>(package private) <a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaCatalog&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#catalogs()">catalogs</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#closeStatement(org.apache.calcite.avatica.Meta.StatementHandle)">closeStatement</a></span>&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaColumn&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#columns(org.apache.calcite.avatica.MetaImpl.MetaTable)">columns</a></span>&#8203;(org.apache.calcite.avatica.MetaImpl.MetaTable&nbsp;table_)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#commit(org.apache.calcite.avatica.Meta.ConnectionHandle)">commit</a></span>&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>static <a href="CalciteConnection.html" title="interface in org.apache.calcite.jdbc">CalciteConnection</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#connect(org.apache.calcite.jdbc.CalciteSchema,org.apache.calcite.adapter.java.JavaTypeFactory)">connect</a></span>&#8203;(<a href="CalciteSchema.html" title="class in org.apache.calcite.jdbc">CalciteSchema</a>&nbsp;schema,
       <a href="../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">A trojan-horse method, subject to change without notice.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>static <a href="../DataContext.html" title="interface in org.apache.calcite">DataContext</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createDataContext(org.apache.calcite.jdbc.CalciteConnection)">createDataContext</a></span>&#8203;(<a href="CalciteConnection.html" title="interface in org.apache.calcite.jdbc">CalciteConnection</a>&nbsp;connection)</code></th>
<td class="colLast">
<div class="block">A trojan-horse method, subject to change without notice.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>protected &lt;E&gt;&nbsp;org.apache.calcite.avatica.Meta.MetaResultSet</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createEmptyResultSet(java.lang.Class)">createEmptyResultSet</a></span>&#8203;(java.lang.Class&lt;E&gt;&nbsp;clazz)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>java.lang.Iterable&lt;java.lang.Object&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createIterable(org.apache.calcite.avatica.Meta.StatementHandle,org.apache.calcite.avatica.QueryState,org.apache.calcite.avatica.Meta.Signature,java.util.List,org.apache.calcite.avatica.Meta.Frame)">createIterable</a></span>&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;handle,
              org.apache.calcite.avatica.QueryState&nbsp;state,
              org.apache.calcite.avatica.Meta.Signature&nbsp;signature,
              java.util.List&lt;org.apache.calcite.avatica.remote.TypedValue&gt;&nbsp;parameterValues,
              org.apache.calcite.avatica.Meta.Frame&nbsp;firstFrame)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>protected org.apache.calcite.avatica.Meta.MetaResultSet</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createResultSet(java.util.Map,java.util.List,org.apache.calcite.avatica.Meta.CursorFactory,org.apache.calcite.avatica.Meta.Frame)">createResultSet</a></span>&#8203;(java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;internalParameters,
               java.util.List&lt;org.apache.calcite.avatica.ColumnMetaData&gt;&nbsp;columns,
               org.apache.calcite.avatica.Meta.CursorFactory&nbsp;cursorFactory,
               org.apache.calcite.avatica.Meta.Frame&nbsp;firstFrame)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>private &lt;E&gt;&nbsp;org.apache.calcite.avatica.Meta.MetaResultSet</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createResultSet(org.apache.calcite.linq4j.Enumerable,java.lang.Class,java.lang.String...)">createResultSet</a></span>&#8203;(<a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;E&gt;&nbsp;enumerable,
               java.lang.Class&nbsp;clazz,
               java.lang.String...&nbsp;names)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.StatementHandle</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createStatement(org.apache.calcite.avatica.Meta.ConnectionHandle)">createStatement</a></span>&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.ExecuteResult</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#execute(org.apache.calcite.avatica.Meta.StatementHandle,java.util.List,int)">execute</a></span>&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
       java.util.List&lt;org.apache.calcite.avatica.remote.TypedValue&gt;&nbsp;parameterValues,
       int&nbsp;maxRowsInFirstFrame)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.ExecuteResult</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#execute(org.apache.calcite.avatica.Meta.StatementHandle,java.util.List,long)">execute</a></span>&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
       java.util.List&lt;org.apache.calcite.avatica.remote.TypedValue&gt;&nbsp;parameterValues,
       long&nbsp;maxRowCount)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.ExecuteBatchResult</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#executeBatch(org.apache.calcite.avatica.Meta.StatementHandle,java.util.List)">executeBatch</a></span>&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
            java.util.List&lt;java.util.List&lt;org.apache.calcite.avatica.remote.TypedValue&gt;&gt;&nbsp;parameterValueLists)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.Frame</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#fetch(org.apache.calcite.avatica.Meta.StatementHandle,long,int)">fetch</a></span>&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
     long&nbsp;offset,
     int&nbsp;fetchMaxRowCount)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>private com.google.common.collect.ImmutableList&lt;org.apache.calcite.avatica.MetaImpl.MetaTypeInfo&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAllDefaultType()">getAllDefaultType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.MetaResultSet</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCatalogs(org.apache.calcite.avatica.Meta.ConnectionHandle)">getCatalogs</a></span>&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.MetaResultSet</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getColumns(org.apache.calcite.avatica.Meta.ConnectionHandle,java.lang.String,org.apache.calcite.avatica.Meta.Pat,org.apache.calcite.avatica.Meta.Pat,org.apache.calcite.avatica.Meta.Pat)">getColumns</a></span>&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch,
          java.lang.String&nbsp;catalog,
          org.apache.calcite.avatica.Meta.Pat&nbsp;schemaPattern,
          org.apache.calcite.avatica.Meta.Pat&nbsp;tableNamePattern,
          org.apache.calcite.avatica.Meta.Pat&nbsp;columnNamePattern)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>(package private) <a href="CalciteConnectionImpl.html" title="class in org.apache.calcite.jdbc">CalciteConnectionImpl</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getConnection()">getConnection</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>java.util.Map&lt;org.apache.calcite.avatica.Meta.DatabaseProperty,&#8203;java.lang.Object&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDatabaseProperties(org.apache.calcite.avatica.Meta.ConnectionHandle)">getDatabaseProperties</a></span>&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.MetaResultSet</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSchemas(org.apache.calcite.avatica.Meta.ConnectionHandle,java.lang.String,org.apache.calcite.avatica.Meta.Pat)">getSchemas</a></span>&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch,
          java.lang.String&nbsp;catalog,
          org.apache.calcite.avatica.Meta.Pat&nbsp;schemaPattern)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.MetaResultSet</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTables(org.apache.calcite.avatica.Meta.ConnectionHandle,java.lang.String,org.apache.calcite.avatica.Meta.Pat,org.apache.calcite.avatica.Meta.Pat,java.util.List)">getTables</a></span>&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch,
         java.lang.String&nbsp;catalog,
         org.apache.calcite.avatica.Meta.Pat&nbsp;schemaPattern,
         org.apache.calcite.avatica.Meta.Pat&nbsp;tableNamePattern,
         java.util.List&lt;java.lang.String&gt;&nbsp;typeList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.MetaResultSet</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTableTypes(org.apache.calcite.avatica.Meta.ConnectionHandle)">getTableTypes</a></span>&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.MetaResultSet</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTypeInfo(org.apache.calcite.avatica.Meta.ConnectionHandle)">getTypeInfo</a></span>&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>static java.util.regex.Pattern</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#likeToRegex(org.apache.calcite.avatica.Meta.Pat)">likeToRegex</a></span>&#8203;(org.apache.calcite.avatica.Meta.Pat&nbsp;pattern)</code></th>
<td class="colLast">
<div class="block">Converts a LIKE-style pattern (where '%' represents a wild-card, escaped
 using '\') to a Java regex.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>(package private) static <a href="../linq4j/function/Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#matcher(org.apache.calcite.avatica.Meta.Pat)">matcher</a></span>&#8203;(org.apache.calcite.avatica.Meta.Pat&nbsp;pattern)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>(package private) static &lt;T extends org.apache.calcite.avatica.MetaImpl.Named&gt;<br><a href="../linq4j/function/Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#namedMatcher(org.apache.calcite.avatica.Meta.Pat)">namedMatcher</a></span>&#8203;(org.apache.calcite.avatica.Meta.Pat&nbsp;pattern)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.StatementHandle</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#prepare(org.apache.calcite.avatica.Meta.ConnectionHandle,java.lang.String,long)">prepare</a></span>&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch,
       java.lang.String&nbsp;sql,
       long&nbsp;maxRowCount)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.ExecuteResult</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#prepareAndExecute(org.apache.calcite.avatica.Meta.StatementHandle,java.lang.String,long,int,org.apache.calcite.avatica.Meta.PrepareCallback)">prepareAndExecute</a></span>&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
                 java.lang.String&nbsp;sql,
                 long&nbsp;maxRowCount,
                 int&nbsp;maxRowsInFirstFrame,
                 org.apache.calcite.avatica.Meta.PrepareCallback&nbsp;callback)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.ExecuteResult</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#prepareAndExecute(org.apache.calcite.avatica.Meta.StatementHandle,java.lang.String,long,org.apache.calcite.avatica.Meta.PrepareCallback)">prepareAndExecute</a></span>&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
                 java.lang.String&nbsp;sql,
                 long&nbsp;maxRowCount,
                 org.apache.calcite.avatica.Meta.PrepareCallback&nbsp;callback)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>org.apache.calcite.avatica.Meta.ExecuteBatchResult</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#prepareAndExecuteBatch(org.apache.calcite.avatica.Meta.StatementHandle,java.util.List)">prepareAndExecuteBatch</a></span>&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
                      java.util.List&lt;java.lang.String&gt;&nbsp;sqlCommands)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#rollback(org.apache.calcite.avatica.Meta.ConnectionHandle)">rollback</a></span>&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>(package private) <a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaSchema&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#schemas(java.lang.String)">schemas</a></span>&#8203;(java.lang.String&nbsp;catalog)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#syncResults(org.apache.calcite.avatica.Meta.StatementHandle,org.apache.calcite.avatica.QueryState,long)">syncResults</a></span>&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
           org.apache.calcite.avatica.QueryState&nbsp;state,
           long&nbsp;offset)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>(package private) <a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaTable&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#tables(java.lang.String)">tables</a></span>&#8203;(java.lang.String&nbsp;catalog)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>(package private) <a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaTable&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#tables(org.apache.calcite.avatica.MetaImpl.MetaSchema)">tables</a></span>&#8203;(org.apache.calcite.avatica.MetaImpl.MetaSchema&nbsp;schema_)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>(package private) <a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaTable&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#tables(org.apache.calcite.avatica.MetaImpl.MetaSchema,org.apache.calcite.linq4j.function.Predicate1)">tables</a></span>&#8203;(org.apache.calcite.avatica.MetaImpl.MetaSchema&nbsp;schema,
      <a href="../linq4j/function/Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;java.lang.String&gt;&nbsp;matcher)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>(package private) <a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaTableType&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#tableTypes()">tableTypes</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>private <a href="CalcitePrepare.Query.html" title="class in org.apache.calcite.jdbc">CalcitePrepare.Query</a>&lt;java.lang.Object&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toQuery(org.apache.calcite.jdbc.CalcitePrepare.Context,java.lang.String)">toQuery</a></span>&#8203;(<a href="CalcitePrepare.Context.html" title="interface in org.apache.calcite.jdbc">CalcitePrepare.Context</a>&nbsp;context,
       java.lang.String&nbsp;sql)</code></th>
<td class="colLast">
<div class="block">Wraps the SQL string in a
 <a href="CalcitePrepare.Query.html" title="class in org.apache.calcite.jdbc"><code>CalcitePrepare.Query</code></a> object, giving the
 <a href="../runtime/Hook.html#STRING_TO_QUERY"><code>Hook.STRING_TO_QUERY</code></a> hook chance to override.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.calcite.avatica.MetaImpl">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.calcite.avatica.MetaImpl</h3>
<code>checkParameterValueHasNull, closeConnection, collect, collect, columnMetaData, columnMetaData, columnMetaData, columnMetaData, connectionSync, createCursor, fetch, fieldMetaData, getAttributes, getBestRowIdentifier, getClientInfoProperties, getColumnNullability, getColumnPrivileges, getCrossReference, getExportedKeys, getFunctionColumns, getFunctions, getImportedKeys, getIndexInfo, getPrimaryKeys, getProcedureColumns, getProcedures, getPseudoColumns, getSuperTables, getSuperTypes, getTablePrivileges, getUDTs, getVersionColumns, openConnection</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a id="DRIVER">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DRIVER</h4>
<pre>static final&nbsp;<a href="Driver.html" title="class in org.apache.calcite.jdbc">Driver</a> DRIVER</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;(org.apache.calcite.jdbc.CalciteConnectionImpl)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>CalciteMetaImpl</h4>
<pre>public&nbsp;CalciteMetaImpl&#8203;(<a href="CalciteConnectionImpl.html" title="class in org.apache.calcite.jdbc">CalciteConnectionImpl</a>&nbsp;connection)</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="namedMatcher(org.apache.calcite.avatica.Meta.Pat)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>namedMatcher</h4>
<pre class="methodSignature">static&nbsp;&lt;T extends org.apache.calcite.avatica.MetaImpl.Named&gt;&nbsp;<a href="../linq4j/function/Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;&nbsp;namedMatcher&#8203;(org.apache.calcite.avatica.Meta.Pat&nbsp;pattern)</pre>
</li>
</ul>
<a id="matcher(org.apache.calcite.avatica.Meta.Pat)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>matcher</h4>
<pre class="methodSignature">static&nbsp;<a href="../linq4j/function/Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;java.lang.String&gt;&nbsp;matcher&#8203;(org.apache.calcite.avatica.Meta.Pat&nbsp;pattern)</pre>
</li>
</ul>
<a id="likeToRegex(org.apache.calcite.avatica.Meta.Pat)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>likeToRegex</h4>
<pre class="methodSignature">public static&nbsp;java.util.regex.Pattern&nbsp;likeToRegex&#8203;(org.apache.calcite.avatica.Meta.Pat&nbsp;pattern)</pre>
<div class="block">Converts a LIKE-style pattern (where '%' represents a wild-card, escaped
 using '\') to a Java regex.</div>
</li>
</ul>
<a id="createStatement(org.apache.calcite.avatica.Meta.ConnectionHandle)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createStatement</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.StatementHandle&nbsp;createStatement&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>createStatement</code>&nbsp;in interface&nbsp;<code>org.apache.calcite.avatica.Meta</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>createStatement</code>&nbsp;in class&nbsp;<code>org.apache.calcite.avatica.MetaImpl</code></dd>
</dl>
</li>
</ul>
<a id="closeStatement(org.apache.calcite.avatica.Meta.StatementHandle)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>closeStatement</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;closeStatement&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h)</pre>
</li>
</ul>
<a id="createResultSet(org.apache.calcite.linq4j.Enumerable,java.lang.Class,java.lang.String...)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createResultSet</h4>
<pre class="methodSignature">private&nbsp;&lt;E&gt;&nbsp;org.apache.calcite.avatica.Meta.MetaResultSet&nbsp;createResultSet&#8203;(<a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;E&gt;&nbsp;enumerable,
                                                                          java.lang.Class&nbsp;clazz,
                                                                          java.lang.String...&nbsp;names)</pre>
</li>
</ul>
<a id="createEmptyResultSet(java.lang.Class)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createEmptyResultSet</h4>
<pre class="methodSignature">protected&nbsp;&lt;E&gt;&nbsp;org.apache.calcite.avatica.Meta.MetaResultSet&nbsp;createEmptyResultSet&#8203;(java.lang.Class&lt;E&gt;&nbsp;clazz)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>createEmptyResultSet</code>&nbsp;in class&nbsp;<code>org.apache.calcite.avatica.MetaImpl</code></dd>
</dl>
</li>
</ul>
<a id="createResultSet(java.util.Map,java.util.List,org.apache.calcite.avatica.Meta.CursorFactory,org.apache.calcite.avatica.Meta.Frame)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createResultSet</h4>
<pre class="methodSignature">protected&nbsp;org.apache.calcite.avatica.Meta.MetaResultSet&nbsp;createResultSet&#8203;(java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;internalParameters,
                                                                        java.util.List&lt;org.apache.calcite.avatica.ColumnMetaData&gt;&nbsp;columns,
                                                                        org.apache.calcite.avatica.Meta.CursorFactory&nbsp;cursorFactory,
                                                                        org.apache.calcite.avatica.Meta.Frame&nbsp;firstFrame)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>createResultSet</code>&nbsp;in class&nbsp;<code>org.apache.calcite.avatica.MetaImpl</code></dd>
</dl>
</li>
</ul>
<a id="getConnection()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConnection</h4>
<pre class="methodSignature"><a href="CalciteConnectionImpl.html" title="class in org.apache.calcite.jdbc">CalciteConnectionImpl</a>&nbsp;getConnection()</pre>
</li>
</ul>
<a id="getDatabaseProperties(org.apache.calcite.avatica.Meta.ConnectionHandle)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDatabaseProperties</h4>
<pre class="methodSignature">public&nbsp;java.util.Map&lt;org.apache.calcite.avatica.Meta.DatabaseProperty,&#8203;java.lang.Object&gt;&nbsp;getDatabaseProperties&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getDatabaseProperties</code>&nbsp;in interface&nbsp;<code>org.apache.calcite.avatica.Meta</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getDatabaseProperties</code>&nbsp;in class&nbsp;<code>org.apache.calcite.avatica.MetaImpl</code></dd>
</dl>
</li>
</ul>
<a id="addProperty(com.google.common.collect.ImmutableMap.Builder,org.apache.calcite.avatica.Meta.DatabaseProperty)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addProperty</h4>
<pre class="methodSignature">private&nbsp;com.google.common.collect.ImmutableMap.Builder&lt;org.apache.calcite.avatica.Meta.DatabaseProperty,&#8203;java.lang.Object&gt;&nbsp;addProperty&#8203;(com.google.common.collect.ImmutableMap.Builder&lt;org.apache.calcite.avatica.Meta.DatabaseProperty,&#8203;java.lang.Object&gt;&nbsp;builder,
                                                                                                                                            org.apache.calcite.avatica.Meta.DatabaseProperty&nbsp;p)</pre>
</li>
</ul>
<a id="getTables(org.apache.calcite.avatica.Meta.ConnectionHandle,java.lang.String,org.apache.calcite.avatica.Meta.Pat,org.apache.calcite.avatica.Meta.Pat,java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTables</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.MetaResultSet&nbsp;getTables&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch,
                                                               java.lang.String&nbsp;catalog,
                                                               org.apache.calcite.avatica.Meta.Pat&nbsp;schemaPattern,
                                                               org.apache.calcite.avatica.Meta.Pat&nbsp;tableNamePattern,
                                                               java.util.List&lt;java.lang.String&gt;&nbsp;typeList)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getTables</code>&nbsp;in interface&nbsp;<code>org.apache.calcite.avatica.Meta</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getTables</code>&nbsp;in class&nbsp;<code>org.apache.calcite.avatica.MetaImpl</code></dd>
</dl>
</li>
</ul>
<a id="getTypeInfo(org.apache.calcite.avatica.Meta.ConnectionHandle)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTypeInfo</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.MetaResultSet&nbsp;getTypeInfo&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getTypeInfo</code>&nbsp;in interface&nbsp;<code>org.apache.calcite.avatica.Meta</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getTypeInfo</code>&nbsp;in class&nbsp;<code>org.apache.calcite.avatica.MetaImpl</code></dd>
</dl>
</li>
</ul>
<a id="getColumns(org.apache.calcite.avatica.Meta.ConnectionHandle,java.lang.String,org.apache.calcite.avatica.Meta.Pat,org.apache.calcite.avatica.Meta.Pat,org.apache.calcite.avatica.Meta.Pat)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getColumns</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.MetaResultSet&nbsp;getColumns&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch,
                                                                java.lang.String&nbsp;catalog,
                                                                org.apache.calcite.avatica.Meta.Pat&nbsp;schemaPattern,
                                                                org.apache.calcite.avatica.Meta.Pat&nbsp;tableNamePattern,
                                                                org.apache.calcite.avatica.Meta.Pat&nbsp;columnNamePattern)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getColumns</code>&nbsp;in interface&nbsp;<code>org.apache.calcite.avatica.Meta</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getColumns</code>&nbsp;in class&nbsp;<code>org.apache.calcite.avatica.MetaImpl</code></dd>
</dl>
</li>
</ul>
<a id="catalogs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>catalogs</h4>
<pre class="methodSignature"><a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaCatalog&gt;&nbsp;catalogs()</pre>
</li>
</ul>
<a id="tableTypes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tableTypes</h4>
<pre class="methodSignature"><a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaTableType&gt;&nbsp;tableTypes()</pre>
</li>
</ul>
<a id="schemas(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>schemas</h4>
<pre class="methodSignature"><a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaSchema&gt;&nbsp;schemas&#8203;(java.lang.String&nbsp;catalog)</pre>
</li>
</ul>
<a id="tables(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tables</h4>
<pre class="methodSignature"><a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaTable&gt;&nbsp;tables&#8203;(java.lang.String&nbsp;catalog)</pre>
</li>
</ul>
<a id="tables(org.apache.calcite.avatica.MetaImpl.MetaSchema)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tables</h4>
<pre class="methodSignature"><a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaTable&gt;&nbsp;tables&#8203;(org.apache.calcite.avatica.MetaImpl.MetaSchema&nbsp;schema_)</pre>
</li>
</ul>
<a id="tables(org.apache.calcite.avatica.MetaImpl.MetaSchema,org.apache.calcite.linq4j.function.Predicate1)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tables</h4>
<pre class="methodSignature"><a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaTable&gt;&nbsp;tables&#8203;(org.apache.calcite.avatica.MetaImpl.MetaSchema&nbsp;schema,
                                                                 <a href="../linq4j/function/Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;java.lang.String&gt;&nbsp;matcher)</pre>
</li>
</ul>
<a id="getAllDefaultType()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllDefaultType</h4>
<pre class="methodSignature">private&nbsp;com.google.common.collect.ImmutableList&lt;org.apache.calcite.avatica.MetaImpl.MetaTypeInfo&gt;&nbsp;getAllDefaultType()</pre>
</li>
</ul>
<a id="allTypeInfo()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allTypeInfo</h4>
<pre class="methodSignature">protected&nbsp;<a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaTypeInfo&gt;&nbsp;allTypeInfo()</pre>
</li>
</ul>
<a id="columns(org.apache.calcite.avatica.MetaImpl.MetaTable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>columns</h4>
<pre class="methodSignature">public&nbsp;<a href="../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j">Enumerable</a>&lt;org.apache.calcite.avatica.MetaImpl.MetaColumn&gt;&nbsp;columns&#8203;(org.apache.calcite.avatica.MetaImpl.MetaTable&nbsp;table_)</pre>
</li>
</ul>
<a id="getSchemas(org.apache.calcite.avatica.Meta.ConnectionHandle,java.lang.String,org.apache.calcite.avatica.Meta.Pat)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSchemas</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.MetaResultSet&nbsp;getSchemas&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch,
                                                                java.lang.String&nbsp;catalog,
                                                                org.apache.calcite.avatica.Meta.Pat&nbsp;schemaPattern)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getSchemas</code>&nbsp;in interface&nbsp;<code>org.apache.calcite.avatica.Meta</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getSchemas</code>&nbsp;in class&nbsp;<code>org.apache.calcite.avatica.MetaImpl</code></dd>
</dl>
</li>
</ul>
<a id="getCatalogs(org.apache.calcite.avatica.Meta.ConnectionHandle)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCatalogs</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.MetaResultSet&nbsp;getCatalogs&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getCatalogs</code>&nbsp;in interface&nbsp;<code>org.apache.calcite.avatica.Meta</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getCatalogs</code>&nbsp;in class&nbsp;<code>org.apache.calcite.avatica.MetaImpl</code></dd>
</dl>
</li>
</ul>
<a id="getTableTypes(org.apache.calcite.avatica.Meta.ConnectionHandle)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTableTypes</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.MetaResultSet&nbsp;getTableTypes&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getTableTypes</code>&nbsp;in interface&nbsp;<code>org.apache.calcite.avatica.Meta</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getTableTypes</code>&nbsp;in class&nbsp;<code>org.apache.calcite.avatica.MetaImpl</code></dd>
</dl>
</li>
</ul>
<a id="createIterable(org.apache.calcite.avatica.Meta.StatementHandle,org.apache.calcite.avatica.QueryState,org.apache.calcite.avatica.Meta.Signature,java.util.List,org.apache.calcite.avatica.Meta.Frame)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createIterable</h4>
<pre class="methodSignature">public&nbsp;java.lang.Iterable&lt;java.lang.Object&gt;&nbsp;createIterable&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;handle,
                                                           org.apache.calcite.avatica.QueryState&nbsp;state,
                                                           org.apache.calcite.avatica.Meta.Signature&nbsp;signature,
                                                           java.util.List&lt;org.apache.calcite.avatica.remote.TypedValue&gt;&nbsp;parameterValues,
                                                           org.apache.calcite.avatica.Meta.Frame&nbsp;firstFrame)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>createIterable</code>&nbsp;in interface&nbsp;<code>org.apache.calcite.avatica.Meta</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>createIterable</code>&nbsp;in class&nbsp;<code>org.apache.calcite.avatica.MetaImpl</code></dd>
</dl>
</li>
</ul>
<a id="_createIterable(org.apache.calcite.avatica.Meta.StatementHandle,org.apache.calcite.avatica.Meta.Signature,java.util.List,org.apache.calcite.avatica.Meta.Frame)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>_createIterable</h4>
<pre class="methodSignature">java.lang.Iterable&lt;java.lang.Object&gt;&nbsp;_createIterable&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;handle,
                                                     org.apache.calcite.avatica.Meta.Signature&nbsp;signature,
                                                     java.util.List&lt;org.apache.calcite.avatica.remote.TypedValue&gt;&nbsp;parameterValues,
                                                     org.apache.calcite.avatica.Meta.Frame&nbsp;firstFrame)</pre>
</li>
</ul>
<a id="prepare(org.apache.calcite.avatica.Meta.ConnectionHandle,java.lang.String,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepare</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.StatementHandle&nbsp;prepare&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch,
                                                               java.lang.String&nbsp;sql,
                                                               long&nbsp;maxRowCount)</pre>
</li>
</ul>
<a id="prepareAndExecute(org.apache.calcite.avatica.Meta.StatementHandle,java.lang.String,long,org.apache.calcite.avatica.Meta.PrepareCallback)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepareAndExecute</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.ExecuteResult&nbsp;prepareAndExecute&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
                                                                       java.lang.String&nbsp;sql,
                                                                       long&nbsp;maxRowCount,
                                                                       org.apache.calcite.avatica.Meta.PrepareCallback&nbsp;callback)
                                                                throws org.apache.calcite.avatica.NoSuchStatementException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>org.apache.calcite.avatica.NoSuchStatementException</code></dd>
</dl>
</li>
</ul>
<a id="prepareAndExecute(org.apache.calcite.avatica.Meta.StatementHandle,java.lang.String,long,int,org.apache.calcite.avatica.Meta.PrepareCallback)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepareAndExecute</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.ExecuteResult&nbsp;prepareAndExecute&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
                                                                       java.lang.String&nbsp;sql,
                                                                       long&nbsp;maxRowCount,
                                                                       int&nbsp;maxRowsInFirstFrame,
                                                                       org.apache.calcite.avatica.Meta.PrepareCallback&nbsp;callback)
                                                                throws org.apache.calcite.avatica.NoSuchStatementException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>org.apache.calcite.avatica.NoSuchStatementException</code></dd>
</dl>
</li>
</ul>
<a id="toQuery(org.apache.calcite.jdbc.CalcitePrepare.Context,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toQuery</h4>
<pre class="methodSignature">private&nbsp;<a href="CalcitePrepare.Query.html" title="class in org.apache.calcite.jdbc">CalcitePrepare.Query</a>&lt;java.lang.Object&gt;&nbsp;toQuery&#8203;(<a href="CalcitePrepare.Context.html" title="interface in org.apache.calcite.jdbc">CalcitePrepare.Context</a>&nbsp;context,
                                                       java.lang.String&nbsp;sql)</pre>
<div class="block">Wraps the SQL string in a
 <a href="CalcitePrepare.Query.html" title="class in org.apache.calcite.jdbc"><code>CalcitePrepare.Query</code></a> object, giving the
 <a href="../runtime/Hook.html#STRING_TO_QUERY"><code>Hook.STRING_TO_QUERY</code></a> hook chance to override.</div>
</li>
</ul>
<a id="fetch(org.apache.calcite.avatica.Meta.StatementHandle,long,int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fetch</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.Frame&nbsp;fetch&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
                                                   long&nbsp;offset,
                                                   int&nbsp;fetchMaxRowCount)
                                            throws org.apache.calcite.avatica.NoSuchStatementException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>org.apache.calcite.avatica.NoSuchStatementException</code></dd>
</dl>
</li>
</ul>
<a id="execute(org.apache.calcite.avatica.Meta.StatementHandle,java.util.List,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>execute</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.ExecuteResult&nbsp;execute&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
                                                             java.util.List&lt;org.apache.calcite.avatica.remote.TypedValue&gt;&nbsp;parameterValues,
                                                             long&nbsp;maxRowCount)
                                                      throws org.apache.calcite.avatica.NoSuchStatementException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>org.apache.calcite.avatica.NoSuchStatementException</code></dd>
</dl>
</li>
</ul>
<a id="execute(org.apache.calcite.avatica.Meta.StatementHandle,java.util.List,int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>execute</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.ExecuteResult&nbsp;execute&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
                                                             java.util.List&lt;org.apache.calcite.avatica.remote.TypedValue&gt;&nbsp;parameterValues,
                                                             int&nbsp;maxRowsInFirstFrame)
                                                      throws org.apache.calcite.avatica.NoSuchStatementException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>org.apache.calcite.avatica.NoSuchStatementException</code></dd>
</dl>
</li>
</ul>
<a id="executeBatch(org.apache.calcite.avatica.Meta.StatementHandle,java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>executeBatch</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.ExecuteBatchResult&nbsp;executeBatch&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
                                                                       java.util.List&lt;java.util.List&lt;org.apache.calcite.avatica.remote.TypedValue&gt;&gt;&nbsp;parameterValueLists)
                                                                throws org.apache.calcite.avatica.NoSuchStatementException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>org.apache.calcite.avatica.NoSuchStatementException</code></dd>
</dl>
</li>
</ul>
<a id="prepareAndExecuteBatch(org.apache.calcite.avatica.Meta.StatementHandle,java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepareAndExecuteBatch</h4>
<pre class="methodSignature">public&nbsp;org.apache.calcite.avatica.Meta.ExecuteBatchResult&nbsp;prepareAndExecuteBatch&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
                                                                                 java.util.List&lt;java.lang.String&gt;&nbsp;sqlCommands)
                                                                          throws org.apache.calcite.avatica.NoSuchStatementException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>org.apache.calcite.avatica.NoSuchStatementException</code></dd>
</dl>
</li>
</ul>
<a id="createDataContext(org.apache.calcite.jdbc.CalciteConnection)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createDataContext</h4>
<pre class="methodSignature">public static&nbsp;<a href="../DataContext.html" title="interface in org.apache.calcite">DataContext</a>&nbsp;createDataContext&#8203;(<a href="CalciteConnection.html" title="interface in org.apache.calcite.jdbc">CalciteConnection</a>&nbsp;connection)</pre>
<div class="block">A trojan-horse method, subject to change without notice.</div>
</li>
</ul>
<a id="connect(org.apache.calcite.jdbc.CalciteSchema,org.apache.calcite.adapter.java.JavaTypeFactory)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>connect</h4>
<pre class="methodSignature">public static&nbsp;<a href="CalciteConnection.html" title="interface in org.apache.calcite.jdbc">CalciteConnection</a>&nbsp;connect&#8203;(<a href="CalciteSchema.html" title="class in org.apache.calcite.jdbc">CalciteSchema</a>&nbsp;schema,
                                        <a href="../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory)</pre>
<div class="block">A trojan-horse method, subject to change without notice.</div>
</li>
</ul>
<a id="syncResults(org.apache.calcite.avatica.Meta.StatementHandle,org.apache.calcite.avatica.QueryState,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>syncResults</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;syncResults&#8203;(org.apache.calcite.avatica.Meta.StatementHandle&nbsp;h,
                           org.apache.calcite.avatica.QueryState&nbsp;state,
                           long&nbsp;offset)
                    throws org.apache.calcite.avatica.NoSuchStatementException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>org.apache.calcite.avatica.NoSuchStatementException</code></dd>
</dl>
</li>
</ul>
<a id="commit(org.apache.calcite.avatica.Meta.ConnectionHandle)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>commit</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;commit&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</pre>
</li>
</ul>
<a id="rollback(org.apache.calcite.avatica.Meta.ConnectionHandle)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>rollback</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;rollback&#8203;(org.apache.calcite.avatica.Meta.ConnectionHandle&nbsp;ch)</pre>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/CalciteMetaImpl.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2012&#x2013;2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
