<!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>ReaderImpl (ORC Core 1.9.0 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="ReaderImpl (ORC Core 1.9.0 API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":9,"i1":10,"i2":10,"i3":41,"i4":9,"i5":41,"i6":41,"i7":10,"i8":9,"i9":10,"i10":9,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":9,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":9,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":9,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated 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/ReaderImpl.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/orc/impl/PositionRecorder.html" title="interface in org.apache.orc.impl"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/orc/impl/ReaderImpl.StripeInformationImpl.html" title="class in org.apache.orc.impl"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/orc/impl/ReaderImpl.html" target="_top">Frames</a></li>
<li><a href="ReaderImpl.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><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 name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.orc.impl</div>
<h2 title="Class ReaderImpl" class="title">Class ReaderImpl</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.orc.impl.ReaderImpl</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a>, <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>, <a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">ReaderImpl</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/orc/Reader.html" title="interface in org.apache.orc">Reader</a></pre>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.StripeInformationImpl.html" title="class in org.apache.orc.impl">ReaderImpl.StripeInformationImpl</a></span></code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.orc.Reader">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.orc.<a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></h3>
<code><a href="../../../../org/apache/orc/Reader.Options.html" title="class in org.apache.orc">Reader.Options</a></code></li>
</ul>
</li>
</ul>
<!-- =========== 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>protected int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#bufferSize">bufferSize</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/apache/orc/CompressionKind.html" title="enum in org.apache.orc">CompressionKind</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#compressionKind">compressionKind</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/conf/Configuration.html?is-external=true" title="class or interface in org.apache.hadoop.conf">Configuration</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#conf">conf</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#DEFAULT_COMPRESSION_BLOCK_SIZE">DEFAULT_COMPRESSION_BLOCK_SIZE</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/FSDataInputStream.html?is-external=true" title="class or interface in org.apache.hadoop.fs">FSDataInputStream</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#file">file</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/apache/orc/OrcFile.ReaderOptions.html" title="class in org.apache.orc">OrcFile.ReaderOptions</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#options">options</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/Path.html?is-external=true" title="class or interface in org.apache.hadoop.fs">Path</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#path">path</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#rowIndexStride">rowIndexStride</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.StripeStatistics.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.StripeStatistics</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#stripeStatistics">stripeStatistics</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/apache/orc/impl/OrcTail.html" title="class in org.apache.orc.impl">OrcTail</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#tail">tail</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.Type.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.Type</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#types">types</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#useUTCTimestamp">useUTCTimestamp</a></span></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ======== 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/orc/impl/ReaderImpl.html#ReaderImpl-org.apache.hadoop.fs.Path-org.apache.orc.OrcFile.ReaderOptions-">ReaderImpl</a></span>(<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/Path.html?is-external=true" title="class or interface in org.apache.hadoop.fs">Path</a>&nbsp;path,
          <a href="../../../../org/apache/orc/OrcFile.ReaderOptions.html" title="class in org.apache.orc">OrcFile.ReaderOptions</a>&nbsp;options)</code>
<div class="block">Constructor that let's the user specify additional options.</div>
</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="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><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated 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>protected static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#checkOrcVersion-org.apache.hadoop.fs.Path-org.apache.orc.OrcProto.PostScript-">checkOrcVersion</a></span>(<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/Path.html?is-external=true" title="class or interface in org.apache.hadoop.fs">Path</a>&nbsp;path,
               <a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.PostScript.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.PostScript</a>&nbsp;postscript)</code>
<div class="block">Check to see if this ORC file is from a future version and if so,
 warn the user that we may not be able to read all of the column encodings.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#close--">close</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/ColumnStatistics.html" title="interface in org.apache.orc">ColumnStatistics</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#deserializeStats-org.apache.orc.TypeDescription-java.util.List-">deserializeStats</a></span>(<a href="../../../../org/apache/orc/TypeDescription.html" title="class in org.apache.orc">TypeDescription</a>&nbsp;schema,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.ColumnStatistics.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.ColumnStatistics</a>&gt;&nbsp;fileStats)</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#ensureOrcFooter-java.nio.ByteBuffer-int-">ensureOrcFooter</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;buffer,
               int&nbsp;psLen)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">Use <a href="../../../../org/apache/orc/impl/ReaderImpl.html#ensureOrcFooter-org.apache.hadoop.fs.FSDataInputStream-org.apache.hadoop.fs.Path-int-java.nio.ByteBuffer-"><code>ensureOrcFooter(FSDataInputStream, Path, int, ByteBuffer)</code></a> instead.</span></div>
</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#ensureOrcFooter-org.apache.hadoop.fs.FSDataInputStream-org.apache.hadoop.fs.Path-int-java.nio.ByteBuffer-">ensureOrcFooter</a></span>(<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/FSDataInputStream.html?is-external=true" title="class or interface in org.apache.hadoop.fs">FSDataInputStream</a>&nbsp;in,
               <a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/Path.html?is-external=true" title="class or interface in org.apache.hadoop.fs">Path</a>&nbsp;path,
               int&nbsp;psLen,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;buffer)</code>
<div class="block">Ensure this is an ORC file to prevent users from trying to read text
 files or RC files as ORC files.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/orc/impl/OrcTail.html" title="class in org.apache.orc.impl">OrcTail</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#extractFileTail-java.nio.ByteBuffer-">extractFileTail</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;buffer)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">Use <a href="../../../../org/apache/orc/impl/ReaderImpl.html#extractFileTail-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-long-"><code>extractFileTail(FileSystem, Path, long)</code></a> instead.
 This is for backward compatibility.</span></div>
</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/orc/impl/OrcTail.html" title="class in org.apache.orc.impl">OrcTail</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#extractFileTail-java.nio.ByteBuffer-long-long-">extractFileTail</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;buffer,
               long&nbsp;fileLen,
               long&nbsp;modificationTime)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">Use <a href="../../../../org/apache/orc/impl/ReaderImpl.html#extractFileTail-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-long-"><code>extractFileTail(FileSystem, Path, long)</code></a> instead.
 This is for backward compatibility.</span></div>
</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/apache/orc/impl/OrcTail.html" title="class in org.apache.orc.impl">OrcTail</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#extractFileTail-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-long-">extractFileTail</a></span>(<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/FileSystem.html?is-external=true" title="class or interface in org.apache.hadoop.fs">FileSystem</a>&nbsp;fs,
               <a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/Path.html?is-external=true" title="class or interface in org.apache.hadoop.fs">Path</a>&nbsp;path,
               long&nbsp;maxFileLength)</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>static <a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.Metadata.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.Metadata</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#extractMetadata-java.nio.ByteBuffer-int-int-org.apache.orc.impl.InStream.StreamOptions-">extractMetadata</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;bb,
               int&nbsp;metadataAbsPos,
               int&nbsp;metadataSize,
               <a href="../../../../org/apache/orc/impl/InStream.StreamOptions.html" title="class in org.apache.orc.impl">InStream.StreamOptions</a>&nbsp;options)</code>&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/EncryptionKey.html" title="interface in org.apache.orc">EncryptionKey</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getColumnEncryptionKeys--">getColumnEncryptionKeys</a></span>()</code>
<div class="block">Get the list of encryption keys for column encryption.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getCompressionBlockSize-org.apache.orc.OrcProto.PostScript-">getCompressionBlockSize</a></span>(<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.PostScript.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.PostScript</a>&nbsp;postScript)</code>
<div class="block">Read compression block size from the postscript if it is set; otherwise,
 use the same 256k default the C++ implementation uses.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/CompressionKind.html" title="enum in org.apache.orc">CompressionKind</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getCompressionKind--">getCompressionKind</a></span>()</code>
<div class="block">Get the compression kind.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getCompressionSize--">getCompressionSize</a></span>()</code>
<div class="block">Get the buffer size for the compression.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getContentLength--">getContentLength</a></span>()</code>
<div class="block">Get the length of the file.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getConvertToProlepticGregorian--">getConvertToProlepticGregorian</a></span>()</code>
<div class="block">Should the returned values use the proleptic Gregorian calendar?</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/DataMaskDescription.html" title="interface in org.apache.orc">DataMaskDescription</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getDataMasks--">getDataMasks</a></span>()</code>
<div class="block">Get the data masks for the unencrypted variant of the data.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/impl/reader/ReaderEncryption.html" title="class in org.apache.orc.impl.reader">ReaderEncryption</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getEncryption--">getEncryption</a></span>()</code>
<div class="block">Internal access to our view of the encryption.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/impl/reader/ReaderEncryptionVariant.html" title="class in org.apache.orc.impl.reader">ReaderEncryptionVariant</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getEncryptionVariants--">getEncryptionVariants</a></span>()</code>
<div class="block">Get the list of encryption variants for the data.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>protected <a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/FileSystem.html?is-external=true" title="class or interface in org.apache.hadoop.fs">FileSystem</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getFileSystem--">getFileSystem</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html?is-external=true" title="class or interface in java.util.function">Supplier</a>&lt;<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/FileSystem.html?is-external=true" title="class or interface in org.apache.hadoop.fs">FileSystem</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getFileSystemSupplier--">getFileSystemSupplier</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code><a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.FileTail.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.FileTail</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getFileTail--">getFileTail</a></span>()</code>
<div class="block">Get the file tail (footer + postscript)</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/OrcFile.Version.html" title="enum in org.apache.orc">OrcFile.Version</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getFileVersion--">getFileVersion</a></span>()</code>
<div class="block">Get the file format version.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/orc/OrcFile.Version.html" title="enum in org.apache.orc">OrcFile.Version</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getFileVersion-java.util.List-">getFileVersion</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;versionList)</code>&nbsp;</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</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>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getMetadataKeys--">getMetadataKeys</a></span>()</code>
<div class="block">Get the user metadata keys.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getMetadataSize--">getMetadataSize</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getMetadataValue-java.lang.String-">getMetadataValue</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;key)</code>
<div class="block">Get a user metadata value.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getNumberOfRows--">getNumberOfRows</a></span>()</code>
<div class="block">Get the number of rows in the file.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.ColumnStatistics.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.ColumnStatistics</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getOrcProtoFileStatistics--">getOrcProtoFileStatistics</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.StripeStatistics.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.StripeStatistics</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getOrcProtoStripeStatistics--">getOrcProtoStripeStatistics</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getRawDataSize--">getRawDataSize</a></span>()</code>
<div class="block">Get the deserialized data size of the file</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getRawDataSizeFromColIndices-java.util.List-">getRawDataSizeFromColIndices</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;colIndices)</code>
<div class="block">Get the deserialized data size of the specified columns ids</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>static long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getRawDataSizeFromColIndices-java.util.List-java.util.List-java.util.List-">getRawDataSizeFromColIndices</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;colIndices,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.Type.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.Type</a>&gt;&nbsp;types,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.ColumnStatistics.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.ColumnStatistics</a>&gt;&nbsp;stats)</code>&nbsp;</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getRawDataSizeOfColumns-java.util.List-">getRawDataSizeOfColumns</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</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>&gt;&nbsp;colNames)</code>
<div class="block">Get the deserialized data size of the specified columns</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getRowIndexStride--">getRowIndexStride</a></span>()</code>
<div class="block">Get the number of rows per a entry in the row index.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/TypeDescription.html" title="class in org.apache.orc">TypeDescription</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getSchema--">getSchema</a></span>()</code>
<div class="block">Get the type of rows in this ORC file.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getSerializedFileFooter--">getSerializedFileFooter</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code><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></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getSoftwareVersion--">getSoftwareVersion</a></span>()</code>
<div class="block">Get the implementation and version of the software that wrote the file.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/ColumnStatistics.html" title="interface in org.apache.orc">ColumnStatistics</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getStatistics--">getStatistics</a></span>()</code>
<div class="block">Get the statistics about the columns in the file.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/orc/StripeInformation.html" title="interface in org.apache.orc">StripeInformation</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getStripes--">getStripes</a></span>()</code>
<div class="block">Get the list of stripes.</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/orc/StripeStatistics.html" title="class in org.apache.orc">StripeStatistics</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getStripeStatistics--">getStripeStatistics</a></span>()</code>
<div class="block">Get the stripe statistics for all of the columns.</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/orc/StripeStatistics.html" title="class in org.apache.orc">StripeStatistics</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getStripeStatistics-boolean:A-">getStripeStatistics</a></span>(boolean[]&nbsp;included)</code>
<div class="block">Get the stripe statistics from the file.</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.Type.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.Type</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getTypes--">getTypes</a></span>()</code>
<div class="block">Get the list of types contained in the file.</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/orc/StripeStatistics.html" title="class in org.apache.orc">StripeStatistics</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getVariantStripeStatistics-org.apache.orc.EncryptionVariant-">getVariantStripeStatistics</a></span>(<a href="../../../../org/apache/orc/EncryptionVariant.html" title="interface in org.apache.orc">EncryptionVariant</a>&nbsp;variant)</code>
<div class="block">Get the stripe statistics for a given variant.</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getVersionList--">getVersionList</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/OrcFile.WriterVersion.html" title="enum in org.apache.orc">OrcFile.WriterVersion</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getWriterVersion--">getWriterVersion</a></span>()</code>
<div class="block">Get the version of the writer of this file.</div>
</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/orc/OrcFile.WriterVersion.html" title="enum in org.apache.orc">OrcFile.WriterVersion</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#getWriterVersion-int-">getWriterVersion</a></span>(int&nbsp;writerVersion)</code>
<div class="block">Get the WriterVersion based on the ORC file postscript.</div>
</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#hasMetadataValue-java.lang.String-">hasMetadataValue</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;key)</code>
<div class="block">Did the user set the given metadata value.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/Reader.Options.html" title="class in org.apache.orc">Reader.Options</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#options--">options</a></span>()</code>
<div class="block">Create a default options object that can be customized for creating
 a RecordReader.</div>
</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/RecordReader.html" title="interface in org.apache.orc">RecordReader</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#rows--">rows</a></span>()</code>
<div class="block">Create a RecordReader that reads everything with the default options.</div>
</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/orc/RecordReader.html" title="interface in org.apache.orc">RecordReader</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#rows-org.apache.orc.Reader.Options-">rows</a></span>(<a href="../../../../org/apache/orc/Reader.Options.html" title="class in org.apache.orc">Reader.Options</a>&nbsp;options)</code>
<div class="block">Create a RecordReader that uses the options given.</div>
</td>
</tr>
<tr id="i50" class="altColor">
<td class="colFirst"><code><a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/FSDataInputStream.html?is-external=true" title="class or interface in org.apache.hadoop.fs">FSDataInputStream</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#takeFile--">takeFile</a></span>()</code>
<div class="block">Take the file from the reader.</div>
</td>
</tr>
<tr id="i51" class="rowColor">
<td class="colFirst"><code><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></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#toString--">toString</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i52" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/ReaderImpl.html#writerUsedProlepticGregorian--">writerUsedProlepticGregorian</a></span>()</code>
<div class="block">Was the file written using the proleptic Gregorian calendar.</div>
</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#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>
</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="DEFAULT_COMPRESSION_BLOCK_SIZE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DEFAULT_COMPRESSION_BLOCK_SIZE</h4>
<pre>public static final&nbsp;int DEFAULT_COMPRESSION_BLOCK_SIZE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.orc.impl.ReaderImpl.DEFAULT_COMPRESSION_BLOCK_SIZE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="path">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>path</h4>
<pre>protected final&nbsp;<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/Path.html?is-external=true" title="class or interface in org.apache.hadoop.fs">Path</a> path</pre>
</li>
</ul>
<a name="options">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>options</h4>
<pre>protected final&nbsp;<a href="../../../../org/apache/orc/OrcFile.ReaderOptions.html" title="class in org.apache.orc">OrcFile.ReaderOptions</a> options</pre>
</li>
</ul>
<a name="compressionKind">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>compressionKind</h4>
<pre>protected final&nbsp;<a href="../../../../org/apache/orc/CompressionKind.html" title="enum in org.apache.orc">CompressionKind</a> compressionKind</pre>
</li>
</ul>
<a name="file">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>file</h4>
<pre>protected&nbsp;<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/FSDataInputStream.html?is-external=true" title="class or interface in org.apache.hadoop.fs">FSDataInputStream</a> file</pre>
</li>
</ul>
<a name="bufferSize">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>bufferSize</h4>
<pre>protected&nbsp;int bufferSize</pre>
</li>
</ul>
<a name="stripeStatistics">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stripeStatistics</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.StripeStatistics.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.StripeStatistics</a>&gt; stripeStatistics</pre>
</li>
</ul>
<a name="types">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>types</h4>
<pre>protected final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.Type.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.Type</a>&gt; types</pre>
</li>
</ul>
<a name="rowIndexStride">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rowIndexStride</h4>
<pre>protected final&nbsp;int rowIndexStride</pre>
</li>
</ul>
<a name="conf">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>conf</h4>
<pre>protected final&nbsp;<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/conf/Configuration.html?is-external=true" title="class or interface in org.apache.hadoop.conf">Configuration</a> conf</pre>
</li>
</ul>
<a name="useUTCTimestamp">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useUTCTimestamp</h4>
<pre>protected final&nbsp;boolean useUTCTimestamp</pre>
</li>
</ul>
<a name="tail">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>tail</h4>
<pre>protected final&nbsp;<a href="../../../../org/apache/orc/impl/OrcTail.html" title="class in org.apache.orc.impl">OrcTail</a> tail</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="ReaderImpl-org.apache.hadoop.fs.Path-org.apache.orc.OrcFile.ReaderOptions-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ReaderImpl</h4>
<pre>public&nbsp;ReaderImpl(<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/Path.html?is-external=true" title="class or interface in org.apache.hadoop.fs">Path</a>&nbsp;path,
                  <a href="../../../../org/apache/orc/OrcFile.ReaderOptions.html" title="class in org.apache.orc">OrcFile.ReaderOptions</a>&nbsp;options)
           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Constructor that let's the user specify additional options.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>path</code> - pathname for file</dd>
<dd><code>options</code> - options for reading</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></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="getNumberOfRows--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNumberOfRows</h4>
<pre>public&nbsp;long&nbsp;getNumberOfRows()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getNumberOfRows--">Reader</a></code></span></div>
<div class="block">Get the number of rows in the file.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getNumberOfRows--">getNumberOfRows</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of rows</dd>
</dl>
</li>
</ul>
<a name="getMetadataKeys--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMetadataKeys</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</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>&gt;&nbsp;getMetadataKeys()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getMetadataKeys--">Reader</a></code></span></div>
<div class="block">Get the user metadata keys.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getMetadataKeys--">getMetadataKeys</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the set of metadata keys</dd>
</dl>
</li>
</ul>
<a name="getMetadataValue-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMetadataValue</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;getMetadataValue(<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;key)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getMetadataValue-java.lang.String-">Reader</a></code></span></div>
<div class="block">Get a user metadata value.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getMetadataValue-java.lang.String-">getMetadataValue</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - a key given by the user</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the bytes associated with the given key</dd>
</dl>
</li>
</ul>
<a name="hasMetadataValue-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasMetadataValue</h4>
<pre>public&nbsp;boolean&nbsp;hasMetadataValue(<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;key)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#hasMetadataValue-java.lang.String-">Reader</a></code></span></div>
<div class="block">Did the user set the given metadata value.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#hasMetadataValue-java.lang.String-">hasMetadataValue</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - the key to check</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the metadata value was set</dd>
</dl>
</li>
</ul>
<a name="getCompressionKind--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCompressionKind</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/CompressionKind.html" title="enum in org.apache.orc">CompressionKind</a>&nbsp;getCompressionKind()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getCompressionKind--">Reader</a></code></span></div>
<div class="block">Get the compression kind.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getCompressionKind--">getCompressionKind</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the kind of compression in the file</dd>
</dl>
</li>
</ul>
<a name="getCompressionSize--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCompressionSize</h4>
<pre>public&nbsp;int&nbsp;getCompressionSize()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getCompressionSize--">Reader</a></code></span></div>
<div class="block">Get the buffer size for the compression.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getCompressionSize--">getCompressionSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>number of bytes to buffer for the compression codec.</dd>
</dl>
</li>
</ul>
<a name="getStripes--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStripes</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/orc/StripeInformation.html" title="interface in org.apache.orc">StripeInformation</a>&gt;&nbsp;getStripes()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getStripes--">Reader</a></code></span></div>
<div class="block">Get the list of stripes.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getStripes--">getStripes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the information about the stripes in order</dd>
</dl>
</li>
</ul>
<a name="getContentLength--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContentLength</h4>
<pre>public&nbsp;long&nbsp;getContentLength()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getContentLength--">Reader</a></code></span></div>
<div class="block">Get the length of the file.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getContentLength--">getContentLength</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of bytes in the file</dd>
</dl>
</li>
</ul>
<a name="getTypes--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTypes</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.Type.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.Type</a>&gt;&nbsp;getTypes()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getTypes--">Reader</a></code></span></div>
<div class="block">Get the list of types contained in the file. The root type is the first
 type in the list.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getTypes--">getTypes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the list of flattened types</dd>
</dl>
</li>
</ul>
<a name="getFileVersion-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFileVersion</h4>
<pre>public static&nbsp;<a href="../../../../org/apache/orc/OrcFile.Version.html" title="enum in org.apache.orc">OrcFile.Version</a>&nbsp;getFileVersion(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;versionList)</pre>
</li>
</ul>
<a name="getFileVersion--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFileVersion</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/OrcFile.Version.html" title="enum in org.apache.orc">OrcFile.Version</a>&nbsp;getFileVersion()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getFileVersion--">Reader</a></code></span></div>
<div class="block">Get the file format version.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getFileVersion--">getFileVersion</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
</dl>
</li>
</ul>
<a name="getWriterVersion--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getWriterVersion</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/OrcFile.WriterVersion.html" title="enum in org.apache.orc">OrcFile.WriterVersion</a>&nbsp;getWriterVersion()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getWriterVersion--">Reader</a></code></span></div>
<div class="block">Get the version of the writer of this file.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getWriterVersion--">getWriterVersion</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
</dl>
</li>
</ul>
<a name="getSoftwareVersion--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSoftwareVersion</h4>
<pre>public&nbsp;<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;getSoftwareVersion()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getSoftwareVersion--">Reader</a></code></span></div>
<div class="block">Get the implementation and version of the software that wrote the file.
 It defaults to "ORC Java" for old files. For current files, we include the
 version also.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getSoftwareVersion--">getSoftwareVersion</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>returns the writer implementation and hopefully the version of the
   software</dd>
</dl>
</li>
</ul>
<a name="getFileTail--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFileTail</h4>
<pre>public&nbsp;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.FileTail.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.FileTail</a>&nbsp;getFileTail()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getFileTail--">Reader</a></code></span></div>
<div class="block">Get the file tail (footer + postscript)</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getFileTail--">getFileTail</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>- file tail</dd>
</dl>
</li>
</ul>
<a name="getColumnEncryptionKeys--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getColumnEncryptionKeys</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/EncryptionKey.html" title="interface in org.apache.orc">EncryptionKey</a>[]&nbsp;getColumnEncryptionKeys()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getColumnEncryptionKeys--">Reader</a></code></span></div>
<div class="block">Get the list of encryption keys for column encryption.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getColumnEncryptionKeys--">getColumnEncryptionKeys</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the set of encryption keys</dd>
</dl>
</li>
</ul>
<a name="getDataMasks--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDataMasks</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/DataMaskDescription.html" title="interface in org.apache.orc">DataMaskDescription</a>[]&nbsp;getDataMasks()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getDataMasks--">Reader</a></code></span></div>
<div class="block">Get the data masks for the unencrypted variant of the data.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getDataMasks--">getDataMasks</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the lists of data masks</dd>
</dl>
</li>
</ul>
<a name="getEncryptionVariants--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEncryptionVariants</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/impl/reader/ReaderEncryptionVariant.html" title="class in org.apache.orc.impl.reader">ReaderEncryptionVariant</a>[]&nbsp;getEncryptionVariants()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getEncryptionVariants--">Reader</a></code></span></div>
<div class="block">Get the list of encryption variants for the data.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getEncryptionVariants--">getEncryptionVariants</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
</dl>
</li>
</ul>
<a name="getVariantStripeStatistics-org.apache.orc.EncryptionVariant-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVariantStripeStatistics</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/orc/StripeStatistics.html" title="class in org.apache.orc">StripeStatistics</a>&gt;&nbsp;getVariantStripeStatistics(<a href="../../../../org/apache/orc/EncryptionVariant.html" title="interface in org.apache.orc">EncryptionVariant</a>&nbsp;variant)
                                                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getVariantStripeStatistics-org.apache.orc.EncryptionVariant-">Reader</a></code></span></div>
<div class="block">Get the stripe statistics for a given variant. The StripeStatistics will
 have 1 entry for each column in the variant. This enables the user to
 get the stripe statistics for each variant regardless of which keys are
 available.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getVariantStripeStatistics-org.apache.orc.EncryptionVariant-">getVariantStripeStatistics</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>variant</code> - the encryption variant or null for unencrypted</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a list of stripe statistics (one per a stripe)</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if the required key is not available</dd>
</dl>
</li>
</ul>
<a name="getEncryption--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEncryption</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/impl/reader/ReaderEncryption.html" title="class in org.apache.orc.impl.reader">ReaderEncryption</a>&nbsp;getEncryption()</pre>
<div class="block">Internal access to our view of the encryption.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the encryption information for this reader.</dd>
</dl>
</li>
</ul>
<a name="getRowIndexStride--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRowIndexStride</h4>
<pre>public&nbsp;int&nbsp;getRowIndexStride()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getRowIndexStride--">Reader</a></code></span></div>
<div class="block">Get the number of rows per a entry in the row index.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getRowIndexStride--">getRowIndexStride</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of rows per an entry in the row index or 0 if there
 is no row index.</dd>
</dl>
</li>
</ul>
<a name="getStatistics--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStatistics</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/ColumnStatistics.html" title="interface in org.apache.orc">ColumnStatistics</a>[]&nbsp;getStatistics()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getStatistics--">Reader</a></code></span></div>
<div class="block">Get the statistics about the columns in the file.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getStatistics--">getStatistics</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the information about the column</dd>
</dl>
</li>
</ul>
<a name="deserializeStats-org.apache.orc.TypeDescription-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deserializeStats</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/ColumnStatistics.html" title="interface in org.apache.orc">ColumnStatistics</a>[]&nbsp;deserializeStats(<a href="../../../../org/apache/orc/TypeDescription.html" title="class in org.apache.orc">TypeDescription</a>&nbsp;schema,
                                           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.ColumnStatistics.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.ColumnStatistics</a>&gt;&nbsp;fileStats)</pre>
</li>
</ul>
<a name="getSchema--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSchema</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/TypeDescription.html" title="class in org.apache.orc">TypeDescription</a>&nbsp;getSchema()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getSchema--">Reader</a></code></span></div>
<div class="block">Get the type of rows in this ORC file.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getSchema--">getSchema</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
</dl>
</li>
</ul>
<a name="ensureOrcFooter-org.apache.hadoop.fs.FSDataInputStream-org.apache.hadoop.fs.Path-int-java.nio.ByteBuffer-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ensureOrcFooter</h4>
<pre>protected static&nbsp;void&nbsp;ensureOrcFooter(<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/FSDataInputStream.html?is-external=true" title="class or interface in org.apache.hadoop.fs">FSDataInputStream</a>&nbsp;in,
                                      <a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/Path.html?is-external=true" title="class or interface in org.apache.hadoop.fs">Path</a>&nbsp;path,
                                      int&nbsp;psLen,
                                      <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;buffer)
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Ensure this is an ORC file to prevent users from trying to read text
 files or RC files as ORC files.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>in</code> - the file being read</dd>
<dd><code>path</code> - the filename for error messages</dd>
<dd><code>psLen</code> - the postscript length</dd>
<dd><code>buffer</code> - the tail of the file</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="ensureOrcFooter-java.nio.ByteBuffer-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ensureOrcFooter</h4>
<pre>protected static&nbsp;void&nbsp;ensureOrcFooter(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;buffer,
                                      int&nbsp;psLen)
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Use <a href="../../../../org/apache/orc/impl/ReaderImpl.html#ensureOrcFooter-org.apache.hadoop.fs.FSDataInputStream-org.apache.hadoop.fs.Path-int-java.nio.ByteBuffer-"><code>ensureOrcFooter(FSDataInputStream, Path, int, ByteBuffer)</code></a> instead.</span></div>
<div class="block">Ensure this is an ORC file to prevent users from trying to read text
 files or RC files as ORC files.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>psLen</code> - the postscript length</dd>
<dd><code>buffer</code> - the tail of the file</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="checkOrcVersion-org.apache.hadoop.fs.Path-org.apache.orc.OrcProto.PostScript-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkOrcVersion</h4>
<pre>protected static&nbsp;void&nbsp;checkOrcVersion(<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/Path.html?is-external=true" title="class or interface in org.apache.hadoop.fs">Path</a>&nbsp;path,
                                      <a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.PostScript.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.PostScript</a>&nbsp;postscript)
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Check to see if this ORC file is from a future version and if so,
 warn the user that we may not be able to read all of the column encodings.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>path</code> - the data source path for error messages</dd>
<dd><code>postscript</code> - the parsed postscript</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getFileSystem--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFileSystem</h4>
<pre>protected&nbsp;<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/FileSystem.html?is-external=true" title="class or interface in org.apache.hadoop.fs">FileSystem</a>&nbsp;getFileSystem()
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getFileSystemSupplier--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFileSystemSupplier</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html?is-external=true" title="class or interface in java.util.function">Supplier</a>&lt;<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/FileSystem.html?is-external=true" title="class or interface in org.apache.hadoop.fs">FileSystem</a>&gt;&nbsp;getFileSystemSupplier()</pre>
</li>
</ul>
<a name="getWriterVersion-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getWriterVersion</h4>
<pre>public static&nbsp;<a href="../../../../org/apache/orc/OrcFile.WriterVersion.html" title="enum in org.apache.orc">OrcFile.WriterVersion</a>&nbsp;getWriterVersion(int&nbsp;writerVersion)</pre>
<div class="block">Get the WriterVersion based on the ORC file postscript.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>writerVersion</code> - the integer writer version</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the version of the software that produced the file</dd>
</dl>
</li>
</ul>
<a name="extractMetadata-java.nio.ByteBuffer-int-int-org.apache.orc.impl.InStream.StreamOptions-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>extractMetadata</h4>
<pre>public static&nbsp;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.Metadata.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.Metadata</a>&nbsp;extractMetadata(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;bb,
                                                int&nbsp;metadataAbsPos,
                                                int&nbsp;metadataSize,
                                                <a href="../../../../org/apache/orc/impl/InStream.StreamOptions.html" title="class in org.apache.orc.impl">InStream.StreamOptions</a>&nbsp;options)
                                         throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="extractFileTail-java.nio.ByteBuffer-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>extractFileTail</h4>
<pre>public static&nbsp;<a href="../../../../org/apache/orc/impl/OrcTail.html" title="class in org.apache.orc.impl">OrcTail</a>&nbsp;extractFileTail(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;buffer)
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Use <a href="../../../../org/apache/orc/impl/ReaderImpl.html#extractFileTail-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-long-"><code>extractFileTail(FileSystem, Path, long)</code></a> instead.
 This is for backward compatibility.</span></div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getCompressionBlockSize-org.apache.orc.OrcProto.PostScript-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCompressionBlockSize</h4>
<pre>public static&nbsp;int&nbsp;getCompressionBlockSize(<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.PostScript.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.PostScript</a>&nbsp;postScript)</pre>
<div class="block">Read compression block size from the postscript if it is set; otherwise,
 use the same 256k default the C++ implementation uses.</div>
</li>
</ul>
<a name="extractFileTail-java.nio.ByteBuffer-long-long-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>extractFileTail</h4>
<pre>public static&nbsp;<a href="../../../../org/apache/orc/impl/OrcTail.html" title="class in org.apache.orc.impl">OrcTail</a>&nbsp;extractFileTail(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;buffer,
                                      long&nbsp;fileLen,
                                      long&nbsp;modificationTime)
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Use <a href="../../../../org/apache/orc/impl/ReaderImpl.html#extractFileTail-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-long-"><code>extractFileTail(FileSystem, Path, long)</code></a> instead.
 This is for backward compatibility.</span></div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="extractFileTail-org.apache.hadoop.fs.FileSystem-org.apache.hadoop.fs.Path-long-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>extractFileTail</h4>
<pre>protected&nbsp;<a href="../../../../org/apache/orc/impl/OrcTail.html" title="class in org.apache.orc.impl">OrcTail</a>&nbsp;extractFileTail(<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/FileSystem.html?is-external=true" title="class or interface in org.apache.hadoop.fs">FileSystem</a>&nbsp;fs,
                                  <a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/Path.html?is-external=true" title="class or interface in org.apache.hadoop.fs">Path</a>&nbsp;path,
                                  long&nbsp;maxFileLength)
                           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getSerializedFileFooter--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSerializedFileFooter</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;getSerializedFileFooter()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getSerializedFileFooter--">getSerializedFileFooter</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Serialized file metadata read from disk for the purposes of caching, etc.</dd>
</dl>
</li>
</ul>
<a name="writerUsedProlepticGregorian--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>writerUsedProlepticGregorian</h4>
<pre>public&nbsp;boolean&nbsp;writerUsedProlepticGregorian()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#writerUsedProlepticGregorian--">Reader</a></code></span></div>
<div class="block">Was the file written using the proleptic Gregorian calendar.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#writerUsedProlepticGregorian--">writerUsedProlepticGregorian</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
</dl>
</li>
</ul>
<a name="getConvertToProlepticGregorian--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConvertToProlepticGregorian</h4>
<pre>public&nbsp;boolean&nbsp;getConvertToProlepticGregorian()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getConvertToProlepticGregorian--">Reader</a></code></span></div>
<div class="block">Should the returned values use the proleptic Gregorian calendar?</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getConvertToProlepticGregorian--">getConvertToProlepticGregorian</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
</dl>
</li>
</ul>
<a name="options--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>options</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/Reader.Options.html" title="class in org.apache.orc">Reader.Options</a>&nbsp;options()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#options--">Reader</a></code></span></div>
<div class="block">Create a default options object that can be customized for creating
 a RecordReader.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#options--">options</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new default Options object</dd>
</dl>
</li>
</ul>
<a name="rows--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rows</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/RecordReader.html" title="interface in org.apache.orc">RecordReader</a>&nbsp;rows()
                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#rows--">Reader</a></code></span></div>
<div class="block">Create a RecordReader that reads everything with the default options.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#rows--">rows</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new RecordReader</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="rows-org.apache.orc.Reader.Options-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rows</h4>
<pre>public&nbsp;<a href="../../../../org/apache/orc/RecordReader.html" title="interface in org.apache.orc">RecordReader</a>&nbsp;rows(<a href="../../../../org/apache/orc/Reader.Options.html" title="class in org.apache.orc">Reader.Options</a>&nbsp;options)
                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#rows-org.apache.orc.Reader.Options-">Reader</a></code></span></div>
<div class="block">Create a RecordReader that uses the options given.
 This method can't be named rows, because many callers used rows(null)
 before the rows() method was introduced.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#rows-org.apache.orc.Reader.Options-">rows</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>options</code> - the options to read with</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new RecordReader</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getRawDataSize--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRawDataSize</h4>
<pre>public&nbsp;long&nbsp;getRawDataSize()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getRawDataSize--">Reader</a></code></span></div>
<div class="block">Get the deserialized data size of the file</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getRawDataSize--">getRawDataSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>raw data size</dd>
</dl>
</li>
</ul>
<a name="getRawDataSizeFromColIndices-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRawDataSizeFromColIndices</h4>
<pre>public&nbsp;long&nbsp;getRawDataSizeFromColIndices(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;colIndices)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getRawDataSizeFromColIndices-java.util.List-">Reader</a></code></span></div>
<div class="block">Get the deserialized data size of the specified columns ids</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getRawDataSizeFromColIndices-java.util.List-">getRawDataSizeFromColIndices</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>colIndices</code> - - internal column id (check orcfiledump for column ids)</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>raw data size of columns</dd>
</dl>
</li>
</ul>
<a name="getRawDataSizeFromColIndices-java.util.List-java.util.List-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRawDataSizeFromColIndices</h4>
<pre>public static&nbsp;long&nbsp;getRawDataSizeFromColIndices(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;colIndices,
                                                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.Type.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.Type</a>&gt;&nbsp;types,
                                                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.ColumnStatistics.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.ColumnStatistics</a>&gt;&nbsp;stats)
                                         throws <a href="../../../../org/apache/orc/FileFormatException.html" title="class in org.apache.orc">FileFormatException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/orc/FileFormatException.html" title="class in org.apache.orc">FileFormatException</a></code></dd>
</dl>
</li>
</ul>
<a name="getRawDataSizeOfColumns-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRawDataSizeOfColumns</h4>
<pre>public&nbsp;long&nbsp;getRawDataSizeOfColumns(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</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>&gt;&nbsp;colNames)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getRawDataSizeOfColumns-java.util.List-">Reader</a></code></span></div>
<div class="block">Get the deserialized data size of the specified columns</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getRawDataSizeOfColumns-java.util.List-">getRawDataSizeOfColumns</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>colNames</code> - the list of column names</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>raw data size of columns</dd>
</dl>
</li>
</ul>
<a name="getOrcProtoStripeStatistics--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOrcProtoStripeStatistics</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.StripeStatistics.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.StripeStatistics</a>&gt;&nbsp;getOrcProtoStripeStatistics()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getOrcProtoStripeStatistics--">getOrcProtoStripeStatistics</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Stripe statistics, in original protobuf form.</dd>
</dl>
</li>
</ul>
<a name="getOrcProtoFileStatistics--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOrcProtoFileStatistics</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://orc.apache.org/api/orc-core/org/apache/orc/OrcProto.ColumnStatistics.html?is-external=true" title="class or interface in org.apache.orc">OrcProto.ColumnStatistics</a>&gt;&nbsp;getOrcProtoFileStatistics()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getOrcProtoFileStatistics--">getOrcProtoFileStatistics</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>File statistics, in original protobuf form.</dd>
</dl>
</li>
</ul>
<a name="getStripeStatistics--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStripeStatistics</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/orc/StripeStatistics.html" title="class in org.apache.orc">StripeStatistics</a>&gt;&nbsp;getStripeStatistics()
                                           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getStripeStatistics--">Reader</a></code></span></div>
<div class="block">Get the stripe statistics for all of the columns.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getStripeStatistics--">getStripeStatistics</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a list of the statistics for each stripe in the file</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getStripeStatistics-boolean:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStripeStatistics</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/orc/StripeStatistics.html" title="class in org.apache.orc">StripeStatistics</a>&gt;&nbsp;getStripeStatistics(boolean[]&nbsp;included)
                                           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/orc/Reader.html#getStripeStatistics-boolean:A-">Reader</a></code></span></div>
<div class="block">Get the stripe statistics from the file.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getStripeStatistics-boolean:A-">getStripeStatistics</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>included</code> - null for all columns or an array where the required columns
                are selected</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a list of the statistics for each stripe in the file</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getVersionList--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVersionList</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;getVersionList()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getVersionList--">getVersionList</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List of integers representing version of the file, in order from major to minor.</dd>
</dl>
</li>
</ul>
<a name="getMetadataSize--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMetadataSize</h4>
<pre>public&nbsp;int&nbsp;getMetadataSize()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/orc/Reader.html#getMetadataSize--">getMetadataSize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/orc/Reader.html" title="interface in org.apache.orc">Reader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Gets the size of metadata, in bytes.</dd>
</dl>
</li>
</ul>
<a name="toString--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<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;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><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></code>&nbsp;in class&nbsp;<code><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></code></dd>
</dl>
</li>
</ul>
<a name="close--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre>public&nbsp;void&nbsp;close()
           throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true#close--" title="class or interface in java.io">close</a></code>&nbsp;in interface&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a></code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><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>&nbsp;in interface&nbsp;<code><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></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="takeFile--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>takeFile</h4>
<pre>public&nbsp;<a href="https://hadoop.apache.org/docs/r2.7.3/api/org/apache/hadoop/fs/FSDataInputStream.html?is-external=true" title="class or interface in org.apache.hadoop.fs">FSDataInputStream</a>&nbsp;takeFile()</pre>
<div class="block">Take the file from the reader.
 This allows the first RecordReader to use the same file, but additional
 RecordReaders will open new handles.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a file handle, if one is available</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/ReaderImpl.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/orc/impl/PositionRecorder.html" title="interface in org.apache.orc.impl"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/orc/impl/ReaderImpl.StripeInformationImpl.html" title="class in org.apache.orc.impl"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/orc/impl/ReaderImpl.html" target="_top">Frames</a></li>
<li><a href="ReaderImpl.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><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 name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2013&#x2013;2023 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>
