<!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>InStream (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="InStream (ORC Core 1.9.0 API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":6,"i1":6,"i2":9,"i3":9,"i4":9,"i5":9,"i6":10,"i7":10,"i8":6,"i9":6,"i10":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/InStream.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/HadoopShimsFactory.html" title="class in org.apache.orc.impl"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/orc/impl/InStream.CompressedStream.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/InStream.html" target="_top">Frames</a></li>
<li><a href="InStream.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 InStream" class="title">Class InStream</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><a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">java.io.InputStream</a></li>
<li>
<ul class="inheritance">
<li>org.apache.orc.impl.InStream</li>
</ul>
</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></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../org/apache/orc/impl/InStream.CompressedStream.html" title="class in org.apache.orc.impl">InStream.CompressedStream</a>, <a href="../../../../org/apache/orc/impl/InStream.UncompressedStream.html" title="class in org.apache.orc.impl">InStream.UncompressedStream</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">InStream</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</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/InStream.CompressedStream.html" title="class in org.apache.orc.impl">InStream.CompressedStream</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.EncryptedStream.html" title="class in org.apache.orc.impl">InStream.EncryptedStream</a></span></code>
<div class="block">Implements a stream over an encrypted, but uncompressed stream.</div>
</td>
</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/InStream.StreamOptions.html" title="class in org.apache.orc.impl">InStream.StreamOptions</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.UncompressedStream.html" title="class in org.apache.orc.impl">InStream.UncompressedStream</a></span></code>
<div class="block">Implements a stream over an uncompressed stream.</div>
</td>
</tr>
</table>
</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 <a href="https://orc.apache.org/api/hive-storage-api/org/apache/hadoop/hive/common/io/DiskRangeList.html?is-external=true" title="class or interface in org.apache.hadoop.hive.common.io">DiskRangeList</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#bytes">bytes</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#length">length</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/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#name">name</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#offset">offset</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#position">position</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/InStream.html#PROTOBUF_MESSAGE_MAX_LIMIT">PROTOBUF_MESSAGE_MAX_LIMIT</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/InStream.html#InStream-java.lang.Object-long-long-">InStream</a></span>(<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>&nbsp;name,
        long&nbsp;offset,
        long&nbsp;length)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="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="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#changeIv-java.util.function.Consumer-">changeIv</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function">Consumer</a>&lt;byte[]&gt;&nbsp;modifier)</code>&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#close--">close</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/orc/impl/InStream.html" title="class in org.apache.orc.impl">InStream</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#create-java.lang.Object-org.apache.hadoop.hive.common.io.DiskRangeList-long-long-">create</a></span>(<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>&nbsp;name,
      <a href="https://orc.apache.org/api/hive-storage-api/org/apache/hadoop/hive/common/io/DiskRangeList.html?is-external=true" title="class or interface in org.apache.hadoop.hive.common.io">DiskRangeList</a>&nbsp;input,
      long&nbsp;offset,
      long&nbsp;length)</code>
<div class="block">Create an input stream from a list of disk ranges with data.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/orc/impl/InStream.html" title="class in org.apache.orc.impl">InStream</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#create-java.lang.Object-org.apache.hadoop.hive.common.io.DiskRangeList-long-long-org.apache.orc.impl.InStream.StreamOptions-">create</a></span>(<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>&nbsp;name,
      <a href="https://orc.apache.org/api/hive-storage-api/org/apache/hadoop/hive/common/io/DiskRangeList.html?is-external=true" title="class or interface in org.apache.hadoop.hive.common.io">DiskRangeList</a>&nbsp;input,
      long&nbsp;offset,
      long&nbsp;length,
      <a href="../../../../org/apache/orc/impl/InStream.StreamOptions.html" title="class in org.apache.orc.impl">InStream.StreamOptions</a>&nbsp;options)</code>
<div class="block">Create an input stream from a list of disk ranges with data.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>static com.google.protobuf.CodedInputStream</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#createCodedInputStream-org.apache.orc.impl.InStream-">createCodedInputStream</a></span>(<a href="../../../../org/apache/orc/impl/InStream.html" title="class in org.apache.orc.impl">InStream</a>&nbsp;inStream)</code>
<div class="block">Creates coded input stream (used for protobuf message parsing) with higher
 message size limit.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/orc/impl/InStream.StreamOptions.html" title="class in org.apache.orc.impl">InStream.StreamOptions</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#options--">options</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#reset-org.apache.hadoop.hive.common.io.DiskRangeList-">reset</a></span>(<a href="https://orc.apache.org/api/hive-storage-api/org/apache/hadoop/hive/common/io/DiskRangeList.html?is-external=true" title="class or interface in org.apache.hadoop.hive.common.io">DiskRangeList</a>&nbsp;input)</code>
<div class="block">Reset the input to a new set of data.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#reset-org.apache.hadoop.hive.common.io.DiskRangeList-long-">reset</a></span>(<a href="https://orc.apache.org/api/hive-storage-api/org/apache/hadoop/hive/common/io/DiskRangeList.html?is-external=true" title="class or interface in org.apache.hadoop.hive.common.io">DiskRangeList</a>&nbsp;input,
     long&nbsp;length)</code>
<div class="block">Reset the input to a new set of data with a different length.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#seek-org.apache.orc.impl.PositionProvider-">seek</a></span>(<a href="../../../../org/apache/orc/impl/PositionProvider.html" title="interface in org.apache.orc.impl">PositionProvider</a>&nbsp;index)</code>&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/orc/impl/InStream.html#setCurrent-org.apache.hadoop.hive.common.io.DiskRangeList-boolean-">setCurrent</a></span>(<a href="https://orc.apache.org/api/hive-storage-api/org/apache/hadoop/hive/common/io/DiskRangeList.html?is-external=true" title="class or interface in org.apache.hadoop.hive.common.io">DiskRangeList</a>&nbsp;newRange,
          boolean&nbsp;isJump)</code>
<div class="block">Set the current range</div>
</td>
</tr>
<tr id="i10" 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/InStream.html#toString--">toString</a></span>()</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.io.InputStream">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true#available--" title="class or interface in java.io">available</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true#mark-int-" title="class or interface in java.io">mark</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true#markSupported--" title="class or interface in java.io">markSupported</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true#read--" title="class or interface in java.io">read</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true#read-byte:A-" title="class or interface in java.io">read</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true#read-byte:A-int-int-" title="class or interface in java.io">read</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true#reset--" title="class or interface in java.io">reset</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true#skip-long-" title="class or interface in java.io">skip</a></code></li>
</ul>
<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="PROTOBUF_MESSAGE_MAX_LIMIT">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PROTOBUF_MESSAGE_MAX_LIMIT</h4>
<pre>public static final&nbsp;int PROTOBUF_MESSAGE_MAX_LIMIT</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.orc.impl.InStream.PROTOBUF_MESSAGE_MAX_LIMIT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="name">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>name</h4>
<pre>protected final&nbsp;<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> name</pre>
</li>
</ul>
<a name="offset">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>offset</h4>
<pre>protected final&nbsp;long offset</pre>
</li>
</ul>
<a name="length">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>length</h4>
<pre>protected&nbsp;long length</pre>
</li>
</ul>
<a name="bytes">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>bytes</h4>
<pre>protected&nbsp;<a href="https://orc.apache.org/api/hive-storage-api/org/apache/hadoop/hive/common/io/DiskRangeList.html?is-external=true" title="class or interface in org.apache.hadoop.hive.common.io">DiskRangeList</a> bytes</pre>
</li>
</ul>
<a name="position">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>position</h4>
<pre>protected&nbsp;long position</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="InStream-java.lang.Object-long-long-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>InStream</h4>
<pre>public&nbsp;InStream(<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>&nbsp;name,
                long&nbsp;offset,
                long&nbsp;length)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<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 abstract&nbsp;void&nbsp;close()</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="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true#close--" title="class or interface in java.io">close</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a></code></dd>
</dl>
</li>
</ul>
<a name="setCurrent-org.apache.hadoop.hive.common.io.DiskRangeList-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCurrent</h4>
<pre>protected abstract&nbsp;void&nbsp;setCurrent(<a href="https://orc.apache.org/api/hive-storage-api/org/apache/hadoop/hive/common/io/DiskRangeList.html?is-external=true" title="class or interface in org.apache.hadoop.hive.common.io">DiskRangeList</a>&nbsp;newRange,
                                   boolean&nbsp;isJump)</pre>
<div class="block">Set the current range</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>newRange</code> - the block that is current</dd>
<dd><code>isJump</code> - if this was a seek instead of a natural read</dd>
</dl>
</li>
</ul>
<a name="reset-org.apache.hadoop.hive.common.io.DiskRangeList-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reset</h4>
<pre>protected&nbsp;void&nbsp;reset(<a href="https://orc.apache.org/api/hive-storage-api/org/apache/hadoop/hive/common/io/DiskRangeList.html?is-external=true" title="class or interface in org.apache.hadoop.hive.common.io">DiskRangeList</a>&nbsp;input)</pre>
<div class="block">Reset the input to a new set of data.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>input</code> - the input data</dd>
</dl>
</li>
</ul>
<a name="reset-org.apache.hadoop.hive.common.io.DiskRangeList-long-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reset</h4>
<pre>protected&nbsp;void&nbsp;reset(<a href="https://orc.apache.org/api/hive-storage-api/org/apache/hadoop/hive/common/io/DiskRangeList.html?is-external=true" title="class or interface in org.apache.hadoop.hive.common.io">DiskRangeList</a>&nbsp;input,
                     long&nbsp;length)</pre>
<div class="block">Reset the input to a new set of data with a different length.

 in some cases, after resetting an UncompressedStream, its actual length is longer than its initial length.
 Prior to ORC-516, InStream.UncompressedStream class had the 'length' field and the length was modifiable in
 the reset() method. It was used in SettableUncompressedStream class in setBuffers() method.
 SettableUncompressedStream was passing 'diskRangeInfo.getTotalLength()' as the length to the reset() method.
 SettableUncompressedStream had been removed from ORC code base, but it is required for Apache Hive and
 Apache Hive manages its own copy of SettableUncompressedStream since upgrading its Apache ORC version to 1.6.7.
 ORC-516 was the root cause of the regression reported in HIVE-27128 - EOFException when reading DATA stream.
 This wrapper method allows to resolve HIVE-27128.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>input</code> - the input data</dd>
<dd><code>length</code> - new length of the stream</dd>
</dl>
</li>
</ul>
<a name="changeIv-java.util.function.Consumer-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>changeIv</h4>
<pre>public abstract&nbsp;void&nbsp;changeIv(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function">Consumer</a>&lt;byte[]&gt;&nbsp;modifier)</pre>
</li>
</ul>
<a name="seek-org.apache.orc.impl.PositionProvider-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seek</h4>
<pre>public abstract&nbsp;void&nbsp;seek(<a href="../../../../org/apache/orc/impl/PositionProvider.html" title="interface in org.apache.orc.impl">PositionProvider</a>&nbsp;index)
                   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="options--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>options</h4>
<pre>public static&nbsp;<a href="../../../../org/apache/orc/impl/InStream.StreamOptions.html" title="class in org.apache.orc.impl">InStream.StreamOptions</a>&nbsp;options()</pre>
</li>
</ul>
<a name="create-java.lang.Object-org.apache.hadoop.hive.common.io.DiskRangeList-long-long-org.apache.orc.impl.InStream.StreamOptions-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>create</h4>
<pre>public static&nbsp;<a href="../../../../org/apache/orc/impl/InStream.html" title="class in org.apache.orc.impl">InStream</a>&nbsp;create(<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>&nbsp;name,
                              <a href="https://orc.apache.org/api/hive-storage-api/org/apache/hadoop/hive/common/io/DiskRangeList.html?is-external=true" title="class or interface in org.apache.hadoop.hive.common.io">DiskRangeList</a>&nbsp;input,
                              long&nbsp;offset,
                              long&nbsp;length,
                              <a href="../../../../org/apache/orc/impl/InStream.StreamOptions.html" title="class in org.apache.orc.impl">InStream.StreamOptions</a>&nbsp;options)</pre>
<div class="block">Create an input stream from a list of disk ranges with data.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the stream</dd>
<dd><code>input</code> - the list of ranges of bytes for the stream; from disk or cache</dd>
<dd><code>offset</code> - the first byte offset of the stream</dd>
<dd><code>length</code> - the length in bytes of the stream</dd>
<dd><code>options</code> - the options to read with</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an input stream</dd>
</dl>
</li>
</ul>
<a name="create-java.lang.Object-org.apache.hadoop.hive.common.io.DiskRangeList-long-long-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>create</h4>
<pre>public static&nbsp;<a href="../../../../org/apache/orc/impl/InStream.html" title="class in org.apache.orc.impl">InStream</a>&nbsp;create(<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>&nbsp;name,
                              <a href="https://orc.apache.org/api/hive-storage-api/org/apache/hadoop/hive/common/io/DiskRangeList.html?is-external=true" title="class or interface in org.apache.hadoop.hive.common.io">DiskRangeList</a>&nbsp;input,
                              long&nbsp;offset,
                              long&nbsp;length)</pre>
<div class="block">Create an input stream from a list of disk ranges with data.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the stream</dd>
<dd><code>input</code> - the list of ranges of bytes for the stream; from disk or cache</dd>
<dd><code>length</code> - the length in bytes of the stream</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an input stream</dd>
</dl>
</li>
</ul>
<a name="createCodedInputStream-org.apache.orc.impl.InStream-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>createCodedInputStream</h4>
<pre>public static&nbsp;com.google.protobuf.CodedInputStream&nbsp;createCodedInputStream(<a href="../../../../org/apache/orc/impl/InStream.html" title="class in org.apache.orc.impl">InStream</a>&nbsp;inStream)</pre>
<div class="block">Creates coded input stream (used for protobuf message parsing) with higher
 message size limit.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>inStream</code> - the stream to wrap.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>coded input stream</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/InStream.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/HadoopShimsFactory.html" title="class in org.apache.orc.impl"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/orc/impl/InStream.CompressedStream.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/InStream.html" target="_top">Frames</a></li>
<li><a href="InStream.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>
