blob: fc6bef7a283cb91bff42f56d5f4f1b4d862f2ece [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IndexDiscoverBase (Drill : 1.20.3 API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IndexDiscoverBase (Drill : 1.20.3 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":6,"i3":10,"i4":10,"i5":10,"i6":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/IndexDiscoverBase.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">
<li><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverable.html" title="interface in org.apache.drill.exec.planner.index"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverFactory.html" title="class in org.apache.drill.exec.planner.index"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/drill/exec/planner/index/IndexDiscoverBase.html" target="_top">Frames</a></li>
<li><a href="IndexDiscoverBase.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></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>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&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>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.drill.exec.planner.index</div>
<h2 title="Class IndexDiscoverBase" class="title">Class IndexDiscoverBase</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.drill.exec.planner.index.IndexDiscoverBase</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscover.html" title="interface in org.apache.drill.exec.planner.index">IndexDiscover</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../../org/apache/drill/exec/planner/index/MapRDBIndexDiscover.html" title="class in org.apache.drill.exec.planner.index">MapRDBIndexDiscover</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">IndexDiscoverBase</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscover.html" title="interface in org.apache.drill.exec.planner.index">IndexDiscover</a></pre>
<div class="block">IndexDiscoverBase is the layer to read index configurations of tables on storage plugins,
then based on the properties it collected, get the StoragePlugin from StoragePluginRegistry,
together with indexes information, build an IndexCollection</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverBase.html#IndexDiscoverBase-org.apache.drill.exec.physical.base.AbstractDbGroupScan-org.apache.drill.exec.planner.common.DrillScanRelBase-">IndexDiscoverBase</a></span>(<a href="../../../../../../org/apache/drill/exec/physical/base/AbstractDbGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractDbGroupScan</a>&nbsp;inScan,
<a href="../../../../../../org/apache/drill/exec/planner/common/DrillScanRelBase.html" title="class in org.apache.drill.exec.planner.common">DrillScanRelBase</a>&nbsp;inScanPrel)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverBase.html#IndexDiscoverBase-org.apache.drill.exec.physical.base.AbstractDbGroupScan-org.apache.drill.exec.planner.physical.ScanPrel-">IndexDiscoverBase</a></span>(<a href="../../../../../../org/apache/drill/exec/physical/base/AbstractDbGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractDbGroupScan</a>&nbsp;inScan,
<a href="../../../../../../org/apache/drill/exec/planner/physical/ScanPrel.html" title="class in org.apache.drill.exec.planner.physical">ScanPrel</a>&nbsp;inScanPrel)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</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="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract 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="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/drill/exec/planner/logical/DrillTable.html" title="class in org.apache.drill.exec.planner.logical">DrillTable</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverBase.html#buildDrillTable-org.apache.drill.exec.planner.index.IndexDescriptor-">buildDrillTable</a></span>(<a href="../../../../../../org/apache/drill/exec/planner/index/IndexDescriptor.html" title="interface in org.apache.drill.exec.planner.index">IndexDescriptor</a>&nbsp;idxDesc)</code>
<div class="block">Abstract function getDrillTable will be implemented the IndexDiscover within storage plugin(e.g.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/drill/exec/planner/logical/DrillTable.html" title="class in org.apache.drill.exec.planner.logical">DrillTable</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverBase.html#getExternalDrillTable-org.apache.drill.exec.planner.index.IndexDescriptor-">getExternalDrillTable</a></span>(<a href="../../../../../../org/apache/drill/exec/planner/index/IndexDescriptor.html" title="interface in org.apache.drill.exec.planner.index">IndexDescriptor</a>&nbsp;idxDesc)</code>
<div class="block">When there is storageName in IndexDescriptor, get a DrillTable instance based on the
StorageName and other informaiton in idxDesc that helps identifying the table.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../../../org/apache/drill/exec/planner/logical/DrillTable.html" title="class in org.apache.drill.exec.planner.logical">DrillTable</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverBase.html#getNativeDrillTable-org.apache.drill.exec.planner.index.IndexDescriptor-">getNativeDrillTable</a></span>(<a href="../../../../../../org/apache/drill/exec/planner/index/IndexDescriptor.html" title="interface in org.apache.drill.exec.planner.index">IndexDescriptor</a>&nbsp;idxDesc)</code>
<div class="block">When it is native index(index provided by native storage plugin),
the actual IndexDiscover should provide the implementation to get the DrillTable object of index,
Otherwise, we call IndexDiscoverable interface exposed from external storage plugin's SchemaFactory
to get the desired DrillTable.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/drill/exec/physical/base/AbstractDbGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractDbGroupScan</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverBase.html#getOriginalScan--">getOriginalScan</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>org.apache.calcite.rel.RelNode</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverBase.html#getOriginalScanRel--">getOriginalScanRel</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/drill/exec/planner/index/IndexCollection.html" title="interface in org.apache.drill.exec.planner.index">IndexCollection</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverBase.html#getTableIndex-java.lang.String-java.lang.String-java.util.Collection-">getTableIndex</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;storageName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/drill/exec/planner/index/DrillIndexDefinition.html" title="class in org.apache.drill.exec.planner.index">DrillIndexDefinition</a>&gt;&nbsp;indexDefs)</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverBase.html#materializeIndex-java.lang.String-org.apache.drill.exec.planner.index.DrillIndexDescriptor-">materializeIndex</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;storageName,
<a href="../../../../../../org/apache/drill/exec/planner/index/DrillIndexDescriptor.html" title="class in org.apache.drill.exec.planner.index">DrillIndexDescriptor</a>&nbsp;index)</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.drill.exec.planner.index.IndexDiscover">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.drill.exec.planner.index.<a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscover.html" title="interface in org.apache.drill.exec.planner.index">IndexDiscover</a></h3>
<code><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscover.html#getTableIndex-java.lang.String-">getTableIndex</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="IndexDiscoverBase-org.apache.drill.exec.physical.base.AbstractDbGroupScan-org.apache.drill.exec.planner.common.DrillScanRelBase-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>IndexDiscoverBase</h4>
<pre>public&nbsp;IndexDiscoverBase(<a href="../../../../../../org/apache/drill/exec/physical/base/AbstractDbGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractDbGroupScan</a>&nbsp;inScan,
<a href="../../../../../../org/apache/drill/exec/planner/common/DrillScanRelBase.html" title="class in org.apache.drill.exec.planner.common">DrillScanRelBase</a>&nbsp;inScanPrel)</pre>
</li>
</ul>
<a name="IndexDiscoverBase-org.apache.drill.exec.physical.base.AbstractDbGroupScan-org.apache.drill.exec.planner.physical.ScanPrel-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>IndexDiscoverBase</h4>
<pre>public&nbsp;IndexDiscoverBase(<a href="../../../../../../org/apache/drill/exec/physical/base/AbstractDbGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractDbGroupScan</a>&nbsp;inScan,
<a href="../../../../../../org/apache/drill/exec/planner/physical/ScanPrel.html" title="class in org.apache.drill.exec.planner.physical">ScanPrel</a>&nbsp;inScanPrel)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getOriginalScan--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOriginalScan</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/drill/exec/physical/base/AbstractDbGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractDbGroupScan</a>&nbsp;getOriginalScan()</pre>
</li>
</ul>
<a name="getOriginalScanRel--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOriginalScanRel</h4>
<pre>public&nbsp;org.apache.calcite.rel.RelNode&nbsp;getOriginalScanRel()</pre>
</li>
</ul>
<a name="getTableIndex-java.lang.String-java.lang.String-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTableIndex</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/drill/exec/planner/index/IndexCollection.html" title="interface in org.apache.drill.exec.planner.index">IndexCollection</a>&nbsp;getTableIndex(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;storageName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/apache/drill/exec/planner/index/DrillIndexDefinition.html" title="class in org.apache.drill.exec.planner.index">DrillIndexDefinition</a>&gt;&nbsp;indexDefs)</pre>
</li>
</ul>
<a name="materializeIndex-java.lang.String-org.apache.drill.exec.planner.index.DrillIndexDescriptor-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>materializeIndex</h4>
<pre>public&nbsp;void&nbsp;materializeIndex(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;storageName,
<a href="../../../../../../org/apache/drill/exec/planner/index/DrillIndexDescriptor.html" title="class in org.apache.drill.exec.planner.index">DrillIndexDescriptor</a>&nbsp;index)</pre>
</li>
</ul>
<a name="getExternalDrillTable-org.apache.drill.exec.planner.index.IndexDescriptor-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getExternalDrillTable</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/drill/exec/planner/logical/DrillTable.html" title="class in org.apache.drill.exec.planner.logical">DrillTable</a>&nbsp;getExternalDrillTable(<a href="../../../../../../org/apache/drill/exec/planner/index/IndexDescriptor.html" title="interface in org.apache.drill.exec.planner.index">IndexDescriptor</a>&nbsp;idxDesc)</pre>
<div class="block">When there is storageName in IndexDescriptor, get a DrillTable instance based on the
StorageName and other informaiton in idxDesc that helps identifying the table.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>idxDesc</code> - </dd>
<dt><span class="returnLabel">Returns:</span></dt>
</dl>
</li>
</ul>
<a name="buildDrillTable-org.apache.drill.exec.planner.index.IndexDescriptor-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildDrillTable</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/drill/exec/planner/logical/DrillTable.html" title="class in org.apache.drill.exec.planner.logical">DrillTable</a>&nbsp;buildDrillTable(<a href="../../../../../../org/apache/drill/exec/planner/index/IndexDescriptor.html" title="interface in org.apache.drill.exec.planner.index">IndexDescriptor</a>&nbsp;idxDesc)</pre>
<div class="block">Abstract function getDrillTable will be implemented the IndexDiscover within storage plugin(e.g. HBase, MaprDB)
since the implementations of AbstractStoragePlugin, IndexDescriptor and DrillTable in that storage plugin may have
the implement details.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>idxDesc</code> - </dd>
<dt><span class="returnLabel">Returns:</span></dt>
</dl>
</li>
</ul>
<a name="getNativeDrillTable-org.apache.drill.exec.planner.index.IndexDescriptor-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getNativeDrillTable</h4>
<pre>public abstract&nbsp;<a href="../../../../../../org/apache/drill/exec/planner/logical/DrillTable.html" title="class in org.apache.drill.exec.planner.logical">DrillTable</a>&nbsp;getNativeDrillTable(<a href="../../../../../../org/apache/drill/exec/planner/index/IndexDescriptor.html" title="interface in org.apache.drill.exec.planner.index">IndexDescriptor</a>&nbsp;idxDesc)</pre>
<div class="block">When it is native index(index provided by native storage plugin),
the actual IndexDiscover should provide the implementation to get the DrillTable object of index,
Otherwise, we call IndexDiscoverable interface exposed from external storage plugin's SchemaFactory
to get the desired DrillTable.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>idxDesc</code> - </dd>
<dt><span class="returnLabel">Returns:</span></dt>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/IndexDiscoverBase.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">
<li><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverable.html" title="interface in org.apache.drill.exec.planner.index"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/drill/exec/planner/index/IndexDiscoverFactory.html" title="class in org.apache.drill.exec.planner.index"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/drill/exec/planner/index/IndexDiscoverBase.html" target="_top">Frames</a></li>
<li><a href="IndexDiscoverBase.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.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>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&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>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 1970 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>