blob: fc1f6f4c4acea9373903119b89acbf5ac1106556 [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>RecordReader (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="RecordReader (Drill : 1.20.3 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract 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/RecordReader.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/store/RecordDataType.html" title="class in org.apache.drill.exec.store"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/drill/exec/store/RecordWriter.html" title="interface in org.apache.drill.exec.store"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/drill/exec/store/RecordReader.html" target="_top">Frames</a></li>
<li><a href="RecordReader.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><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&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>Constr&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.store</div>
<h2 title="Interface RecordReader" class="title">Interface RecordReader</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></dd>
</dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../../org/apache/drill/exec/store/pojo/AbstractPojoRecordReader.html" title="class in org.apache.drill.exec.store.pojo">AbstractPojoRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/AbstractRecordReader.html" title="class in org.apache.drill.exec.store">AbstractRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/CommonParquetRecordReader.html" title="class in org.apache.drill.exec.store">CommonParquetRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/parquet2/DrillParquetReader.html" title="class in org.apache.drill.exec.store.parquet2">DrillParquetReader</a>, <a href="../../../../../org/apache/drill/exec/store/druid/DruidRecordReader.html" title="class in org.apache.drill.exec.store.druid">DruidRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/pojo/DynamicPojoRecordReader.html" title="class in org.apache.drill.exec.store.pojo">DynamicPojoRecordReader</a>, <a href="../../../../../org/apache/drill/exec/planner/sql/handlers/FindLimit0Visitor.RelDataTypeReader.html" title="class in org.apache.drill.exec.planner.sql.handlers">FindLimit0Visitor.RelDataTypeReader</a>, <a href="../../../../../org/apache/drill/exec/store/hbase/HBaseRecordReader.html" title="class in org.apache.drill.exec.store.hbase">HBaseRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/hive/readers/HiveDefaultRecordReader.html" title="class in org.apache.drill.exec.store.hive.readers">HiveDefaultRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/hive/readers/HiveTextRecordReader.html" title="class in org.apache.drill.exec.store.hive.readers">HiveTextRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/easy/json/JSONRecordReader.html" title="class in org.apache.drill.exec.store.easy.json">JSONRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/kudu/KuduRecordReader.html" title="class in org.apache.drill.exec.store.kudu">KuduRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/ltsv/LTSVRecordReader.html" title="class in org.apache.drill.exec.store.ltsv">LTSVRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/mapr/db/json/MaprDBJsonRecordReader.html" title="class in org.apache.drill.exec.store.mapr.db.json">MaprDBJsonRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/mock/MockRecordReader.html" title="class in org.apache.drill.exec.store.mock">MockRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/mongo/MongoRecordReader.html" title="class in org.apache.drill.exec.store.mongo">MongoRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/openTSDB/OpenTSDBRecordReader.html" title="class in org.apache.drill.exec.store.openTSDB">OpenTSDBRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/parquet/columnreaders/ParquetRecordReader.html" title="class in org.apache.drill.exec.store.parquet.columnreaders">ParquetRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/pojo/PojoRecordReader.html" title="class in org.apache.drill.exec.store.pojo">PojoRecordReader</a>, <a href="../../../../../org/apache/drill/exec/store/mapr/db/json/RestrictedJsonRecordReader.html" title="class in org.apache.drill.exec.store.mapr.db.json">RestrictedJsonRecordReader</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">RecordReader</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></pre>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/RecordReader.html#ALLOCATOR_INITIAL_RESERVATION">ALLOCATOR_INITIAL_RESERVATION</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/RecordReader.html#ALLOCATOR_MAX_RESERVATION">ALLOCATOR_MAX_RESERVATION</a></span></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></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>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/RecordReader.html#allocate-java.util.Map-">allocate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<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>,<a href="../../../../../org/apache/drill/exec/vector/ValueVector.html" title="interface in org.apache.drill.exec.vector">ValueVector</a>&gt;&nbsp;vectorMap)</code>&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/RecordReader.html#hasNext--">hasNext</a></span>()</code>
<div class="block">Check if the reader may have potentially more data to be read in subsequent iterations.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/RecordReader.html#next--">next</a></span>()</code>
<div class="block">Increments this record reader forward, writing via the provided output
mutator into the output batch.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/RecordReader.html#setup-org.apache.drill.exec.ops.OperatorContext-org.apache.drill.exec.physical.impl.OutputMutator-">setup</a></span>(<a href="../../../../../org/apache/drill/exec/ops/OperatorContext.html" title="interface in org.apache.drill.exec.ops">OperatorContext</a>&nbsp;context,
<a href="../../../../../org/apache/drill/exec/physical/impl/OutputMutator.html" title="interface in org.apache.drill.exec.physical.impl">OutputMutator</a>&nbsp;output)</code>
<div class="block">Configure the RecordReader with the provided schema and the record batch that should be written to.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.AutoCloseable">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="ALLOCATOR_INITIAL_RESERVATION">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ALLOCATOR_INITIAL_RESERVATION</h4>
<pre>static final&nbsp;long ALLOCATOR_INITIAL_RESERVATION</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.apache.drill.exec.store.RecordReader.ALLOCATOR_INITIAL_RESERVATION">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ALLOCATOR_MAX_RESERVATION">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ALLOCATOR_MAX_RESERVATION</h4>
<pre>static final&nbsp;long ALLOCATOR_MAX_RESERVATION</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.apache.drill.exec.store.RecordReader.ALLOCATOR_MAX_RESERVATION">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="setup-org.apache.drill.exec.ops.OperatorContext-org.apache.drill.exec.physical.impl.OutputMutator-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setup</h4>
<pre>void&nbsp;setup(<a href="../../../../../org/apache/drill/exec/ops/OperatorContext.html" title="interface in org.apache.drill.exec.ops">OperatorContext</a>&nbsp;context,
<a href="../../../../../org/apache/drill/exec/physical/impl/OutputMutator.html" title="interface in org.apache.drill.exec.physical.impl">OutputMutator</a>&nbsp;output)
throws <a href="../../../../../org/apache/drill/common/exceptions/ExecutionSetupException.html" title="class in org.apache.drill.common.exceptions">ExecutionSetupException</a></pre>
<div class="block">Configure the RecordReader with the provided schema and the record batch that should be written to.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>context</code> - operator context for the reader</dd>
<dd><code>output</code> - The place where output for a particular scan should be written. The record reader is responsible for
mutating the set of schema values for that particular record.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/drill/common/exceptions/ExecutionSetupException.html" title="class in org.apache.drill.common.exceptions">ExecutionSetupException</a></code></dd>
</dl>
</li>
</ul>
<a name="allocate-java.util.Map-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allocate</h4>
<pre>void&nbsp;allocate(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<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>,<a href="../../../../../org/apache/drill/exec/vector/ValueVector.html" title="interface in org.apache.drill.exec.vector">ValueVector</a>&gt;&nbsp;vectorMap)
throws <a href="../../../../../org/apache/drill/exec/exception/OutOfMemoryException.html" title="class in org.apache.drill.exec.exception">OutOfMemoryException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/drill/exec/exception/OutOfMemoryException.html" title="class in org.apache.drill.exec.exception">OutOfMemoryException</a></code></dd>
</dl>
</li>
</ul>
<a name="hasNext--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasNext</h4>
<pre>boolean&nbsp;hasNext()</pre>
<div class="block">Check if the reader may have potentially more data to be read in subsequent iterations. Certain types of readers
such as repeatable readers can be invoked multiple times, so this method will allow ScanBatch to check with
the reader before closing it.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>return true if there could potentially be more reads, false otherwise</dd>
</dl>
</li>
</ul>
<a name="next--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>next</h4>
<pre>int&nbsp;next()</pre>
<div class="block">Increments this record reader forward, writing via the provided output
mutator into the output batch.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The number of additional records added to the output.</dd>
</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/RecordReader.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/store/RecordDataType.html" title="class in org.apache.drill.exec.store"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/drill/exec/store/RecordWriter.html" title="interface in org.apache.drill.exec.store"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/drill/exec/store/RecordReader.html" target="_top">Frames</a></li>
<li><a href="RecordReader.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><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&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>Constr&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>