blob: 92b6655211b839b058cb7f6099100c3cf02c6d1d [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>ProtonCompositeBuffer (Qpid ProtonJ2 Parent 1.0.0-M9 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<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="ProtonCompositeBuffer (Qpid ProtonJ2 Parent 1.0.0-M9 API)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance 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>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ProtonCompositeBuffer.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="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.qpid.protonj2.buffer</a></div>
<h2 title="Class ProtonCompositeBuffer" class="title">Class ProtonCompositeBuffer</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="ProtonAbstractBuffer.html" title="class in org.apache.qpid.protonj2.buffer">org.apache.qpid.protonj2.buffer.ProtonAbstractBuffer</a></li>
<li>
<ul class="inheritance">
<li>org.apache.qpid.protonj2.buffer.ProtonCompositeBuffer</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Comparable</a>&lt;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&gt;</code>, <code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></dd>
</dl>
<hr>
<pre>public final class <span class="typeNameLabel">ProtonCompositeBuffer</span>
extends <a href="ProtonAbstractBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonAbstractBuffer</a></pre>
<div class="block">A composite of 1 or more ProtonBuffer instances used when aggregating buffer views.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#DEFAULT_MAXIMUM_CAPACITY">DEFAULT_MAXIMUM_CAPACITY</a></span></code></th>
<td class="colLast">
<div class="block">The default maximum capacity for a composite <a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a>.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.org.apache.qpid.protonj2.buffer.ProtonAbstractBuffer">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.qpid.protonj2.buffer.<a href="ProtonAbstractBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonAbstractBuffer</a></h3>
<code><a href="ProtonAbstractBuffer.html#markedReadIndex">markedReadIndex</a>, <a href="ProtonAbstractBuffer.html#markedWriteIndex">markedWriteIndex</a>, <a href="ProtonAbstractBuffer.html#readIndex">readIndex</a>, <a href="ProtonAbstractBuffer.html#writeIndex">writeIndex</a></code></li>
</ul>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">ProtonCompositeBuffer</a></span>()</code></th>
<td class="colLast">
<div class="block">Creates a Composite Buffer instance with max capacity of <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Integer.html?is-external=true#MAX_VALUE" title="class or interface in java.lang" class="externalLink"><code>Integer.MAX_VALUE</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int)">ProtonCompositeBuffer</a></span>&#8203;(int&nbsp;maximumCapacity)</code></th>
<td class="colLast">
<div class="block">Creates a Composite Buffer instance with the maximum capacity provided.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonCompositeBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#append(byte%5B%5D)">append</a></span>&#8203;(byte[]&nbsp;array)</code></th>
<td class="colLast">
<div class="block">Appends the given byte array to the end of the buffer segments that comprise this composite
<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> instance.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonCompositeBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#append(byte%5B%5D,int,int)">append</a></span>&#8203;(byte[]&nbsp;array,
int&nbsp;offset,
int&nbsp;length)</code></th>
<td class="colLast">
<div class="block">Appends the given byte array to the end of the buffer segments that comprise this composite
<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> instance.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonCompositeBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#append(org.apache.qpid.protonj2.buffer.ProtonBuffer)">append</a></span>&#8203;(<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;buffer)</code></th>
<td class="colLast">
<div class="block">Appends the given <a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> to the end of the buffer segments that comprise this composite
<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> instance.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#capacity()">capacity</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#capacity(int)">capacity</a></span>&#8203;(int&nbsp;newCapacity)</code></th>
<td class="colLast">
<div class="block">Adjusts the capacity of this buffer.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#copy(int,int)">copy</a></span>&#8203;(int&nbsp;index,
int&nbsp;length)</code></th>
<td class="colLast">
<div class="block">Returns a copy of this buffer's sub-region.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#duplicate()">duplicate</a></span>()</code></th>
<td class="colLast">
<div class="block">Create a duplicate of this ProtonBuffer instance that shares the same backing
data store and but maintains separate position index values.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonCompositeBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#foreachBuffer(java.util.function.Consumer)">foreachBuffer</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink">Consumer</a>&lt;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&gt;&nbsp;consumer)</code></th>
<td class="colLast">
<div class="block">For each of the buffers contained in this <a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer"><code>ProtonCompositeBuffer</code></a> instance the
given consumer will be invoked with a duplicate of the buffer that can be independently
modified and not affect the contents of this buffer.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonCompositeBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#foreachInternalBuffer(java.util.function.Consumer)">foreachInternalBuffer</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink">Consumer</a>&lt;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&gt;&nbsp;consumer)</code></th>
<td class="colLast">
<div class="block">For each of the buffers contained in this <a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer"><code>ProtonCompositeBuffer</code></a> instance the
given consumer will be invoked with the <a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> that backs this composite
instance.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>byte[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getArray()">getArray</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the backing array for this ProtonBuffer instance if there is such an array or
throws an exception if this ProtonBuffer implementation has no backing array.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getArrayOffset()">getArrayOffset</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>byte</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getByte(int)">getByte</a></span>&#8203;(int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Gets a byte from the specified index, this method will not modify the read or write
index.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBytes(int,byte%5B%5D,int,int)">getBytes</a></span>&#8203;(int&nbsp;index,
byte[]&nbsp;destination,
int&nbsp;offset,
int&nbsp;length)</code></th>
<td class="colLast">
<div class="block">Transfers this buffer's data to the specified destination starting at
the specified absolute <code>index</code>.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBytes(int,java.nio.ByteBuffer)">getBytes</a></span>&#8203;(int&nbsp;index,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio" class="externalLink">ByteBuffer</a>&nbsp;destination)</code></th>
<td class="colLast">
<div class="block">Transfers this buffer's data to the specified destination starting at
the specified absolute <code>index</code> until the destination's position
reaches its limit.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBytes(int,org.apache.qpid.protonj2.buffer.ProtonBuffer,int,int)">getBytes</a></span>&#8203;(int&nbsp;index,
<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;destination,
int&nbsp;destinationIndex,
int&nbsp;length)</code></th>
<td class="colLast">
<div class="block">Transfers this buffer's data to the specified destination starting at
the specified absolute <code>index</code>.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getInt(int)">getInt</a></span>&#8203;(int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Gets a int from the specified index, this method will not modify the read or write
index.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLong(int)">getLong</a></span>&#8203;(int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Gets a long from the specified index, this method will not modify the read or write
index.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>short</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getShort(int)">getShort</a></span>&#8203;(int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Gets a short from the specified index, this method will not modify the read or write
index.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasArray()">hasArray</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#numberOfBuffers()">numberOfBuffers</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code><a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonCompositeBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#reclaimRead()">reclaimRead</a></span>()</code></th>
<td class="colLast">
<div class="block">For any buffer that precedes the buffer pointed to by the current read index
remove that buffer from to composite and discard.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setByte(int,int)">setByte</a></span>&#8203;(int&nbsp;index,
int&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Sets the byte value at the given write index in this buffer's backing data store.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setBytes(int,byte%5B%5D,int,int)">setBytes</a></span>&#8203;(int&nbsp;index,
byte[]&nbsp;source,
int&nbsp;sourceIndex,
int&nbsp;length)</code></th>
<td class="colLast">
<div class="block">Transfers the specified source array's data to this buffer starting at
the specified absolute <code>index</code>.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setBytes(int,java.nio.ByteBuffer)">setBytes</a></span>&#8203;(int&nbsp;index,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio" class="externalLink">ByteBuffer</a>&nbsp;source)</code></th>
<td class="colLast">
<div class="block">Transfers the specified source buffer's data to this buffer starting at
the specified absolute <code>index</code> until the source buffer's position
reaches its limit.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setBytes(int,org.apache.qpid.protonj2.buffer.ProtonBuffer,int,int)">setBytes</a></span>&#8203;(int&nbsp;index,
<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;source,
int&nbsp;sourceIndex,
int&nbsp;length)</code></th>
<td class="colLast">
<div class="block">Transfers the specified source buffer's data to this buffer starting at
the specified absolute <code>index</code>.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setInt(int,int)">setInt</a></span>&#8203;(int&nbsp;index,
int&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Sets the int value at the given write index in this buffer's backing data store.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLong(int,long)">setLong</a></span>&#8203;(int&nbsp;index,
long&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Sets the long value at the given write index in this buffer's backing data store.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setShort(int,int)">setShort</a></span>&#8203;(int&nbsp;index,
int&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Sets the short value at the given write index in this buffer's backing data store.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio" class="externalLink">ByteBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toByteBuffer(int,int)">toByteBuffer</a></span>&#8203;(int&nbsp;index,
int&nbsp;length)</code></th>
<td class="colLast">
<div class="block">Returns a ByteBuffer that represents the given span of bytes from the readable portion
of this buffer.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.qpid.protonj2.buffer.ProtonAbstractBuffer">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.qpid.protonj2.buffer.<a href="ProtonAbstractBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonAbstractBuffer</a></h3>
<code><a href="ProtonAbstractBuffer.html#adjustIndexMarks(int)">adjustIndexMarks</a>, <a href="ProtonAbstractBuffer.html#checkDestinationIndex(int,int,int,int)">checkDestinationIndex</a>, <a href="ProtonAbstractBuffer.html#checkIndex(int,int)">checkIndex</a>, <a href="ProtonAbstractBuffer.html#checkNewCapacity(int)">checkNewCapacity</a>, <a href="ProtonAbstractBuffer.html#checkReadableBytes(int)">checkReadableBytes</a>, <a href="ProtonAbstractBuffer.html#checkSourceIndex(int,int,int,int)">checkSourceIndex</a>, <a href="ProtonAbstractBuffer.html#clear()">clear</a>, <a href="ProtonAbstractBuffer.html#compareTo(org.apache.qpid.protonj2.buffer.ProtonBuffer)">compareTo</a>, <a href="ProtonAbstractBuffer.html#copy()">copy</a>, <a href="ProtonAbstractBuffer.html#ensureWritable(int)">ensureWritable</a>, <a href="ProtonAbstractBuffer.html#equals(java.lang.Object)">equals</a>, <a href="ProtonAbstractBuffer.html#getBoolean(int)">getBoolean</a>, <a href="ProtonAbstractBuffer.html#getBytes(int,byte%5B%5D)">getBytes</a>, <a href="ProtonAbstractBuffer.html#getBytes(int,org.apache.qpid.protonj2.buffer.ProtonBuffer)">getBytes</a>, <a href="ProtonAbstractBuffer.html#getBytes(int,org.apache.qpid.protonj2.buffer.ProtonBuffer,int)">getBytes</a>, <a href="ProtonAbstractBuffer.html#getChar(int)">getChar</a>, <a href="ProtonAbstractBuffer.html#getDouble(int)">getDouble</a>, <a href="ProtonAbstractBuffer.html#getFloat(int)">getFloat</a>, <a href="ProtonAbstractBuffer.html#getMaxWritableBytes()">getMaxWritableBytes</a>, <a href="ProtonAbstractBuffer.html#getReadableBytes()">getReadableBytes</a>, <a href="ProtonAbstractBuffer.html#getReadIndex()">getReadIndex</a>, <a href="ProtonAbstractBuffer.html#getUnsignedByte(int)">getUnsignedByte</a>, <a href="ProtonAbstractBuffer.html#getUnsignedInt(int)">getUnsignedInt</a>, <a href="ProtonAbstractBuffer.html#getUnsignedShort(int)">getUnsignedShort</a>, <a href="ProtonAbstractBuffer.html#getWritableBytes()">getWritableBytes</a>, <a href="ProtonAbstractBuffer.html#getWriteIndex()">getWriteIndex</a>, <a href="ProtonAbstractBuffer.html#hashCode()">hashCode</a>, <a href="ProtonAbstractBuffer.html#isOutOfBounds(int,int,int)">isOutOfBounds</a>, <a href="ProtonAbstractBuffer.html#isReadable()">isReadable</a>, <a href="ProtonAbstractBuffer.html#isReadable(int)">isReadable</a>, <a href="ProtonAbstractBuffer.html#isWritable()">isWritable</a>, <a href="ProtonAbstractBuffer.html#isWritable(int)">isWritable</a>, <a href="ProtonAbstractBuffer.html#markReadIndex()">markReadIndex</a>, <a href="ProtonAbstractBuffer.html#markWriteIndex()">markWriteIndex</a>, <a href="ProtonAbstractBuffer.html#maxCapacity()">maxCapacity</a>, <a href="ProtonAbstractBuffer.html#readBoolean()">readBoolean</a>, <a href="ProtonAbstractBuffer.html#readByte()">readByte</a>, <a href="ProtonAbstractBuffer.html#readBytes(byte%5B%5D)">readBytes</a>, <a href="ProtonAbstractBuffer.html#readBytes(byte%5B%5D,int)">readBytes</a>, <a href="ProtonAbstractBuffer.html#readBytes(byte%5B%5D,int,int)">readBytes</a>, <a href="ProtonAbstractBuffer.html#readBytes(java.nio.ByteBuffer)">readBytes</a>, <a href="ProtonAbstractBuffer.html#readBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer)">readBytes</a>, <a href="ProtonAbstractBuffer.html#readBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer,int)">readBytes</a>, <a href="ProtonAbstractBuffer.html#readBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer,int,int)">readBytes</a>, <a href="ProtonAbstractBuffer.html#readDouble()">readDouble</a>, <a href="ProtonAbstractBuffer.html#readFloat()">readFloat</a>, <a href="ProtonAbstractBuffer.html#readInt()">readInt</a>, <a href="ProtonAbstractBuffer.html#readLong()">readLong</a>, <a href="ProtonAbstractBuffer.html#readShort()">readShort</a>, <a href="ProtonAbstractBuffer.html#resetReadIndex()">resetReadIndex</a>, <a href="ProtonAbstractBuffer.html#resetWriteIndex()">resetWriteIndex</a>, <a href="ProtonAbstractBuffer.html#setBoolean(int,boolean)">setBoolean</a>, <a href="ProtonAbstractBuffer.html#setBytes(int,byte%5B%5D)">setBytes</a>, <a href="ProtonAbstractBuffer.html#setBytes(int,org.apache.qpid.protonj2.buffer.ProtonBuffer)">setBytes</a>, <a href="ProtonAbstractBuffer.html#setBytes(int,org.apache.qpid.protonj2.buffer.ProtonBuffer,int)">setBytes</a>, <a href="ProtonAbstractBuffer.html#setChar(int,int)">setChar</a>, <a href="ProtonAbstractBuffer.html#setDouble(int,double)">setDouble</a>, <a href="ProtonAbstractBuffer.html#setFloat(int,float)">setFloat</a>, <a href="ProtonAbstractBuffer.html#setIndex(int,int)">setIndex</a>, <a href="ProtonAbstractBuffer.html#setReadIndex(int)">setReadIndex</a>, <a href="ProtonAbstractBuffer.html#setWriteIndex(int)">setWriteIndex</a>, <a href="ProtonAbstractBuffer.html#skipBytes(int)">skipBytes</a>, <a href="ProtonAbstractBuffer.html#slice()">slice</a>, <a href="ProtonAbstractBuffer.html#slice(int,int)">slice</a>, <a href="ProtonAbstractBuffer.html#toByteBuffer()">toByteBuffer</a>, <a href="ProtonAbstractBuffer.html#toString()">toString</a>, <a href="ProtonAbstractBuffer.html#toString(java.nio.charset.Charset)">toString</a>, <a href="ProtonAbstractBuffer.html#writeBoolean(boolean)">writeBoolean</a>, <a href="ProtonAbstractBuffer.html#writeByte(int)">writeByte</a>, <a href="ProtonAbstractBuffer.html#writeBytes(byte%5B%5D)">writeBytes</a>, <a href="ProtonAbstractBuffer.html#writeBytes(byte%5B%5D,int)">writeBytes</a>, <a href="ProtonAbstractBuffer.html#writeBytes(byte%5B%5D,int,int)">writeBytes</a>, <a href="ProtonAbstractBuffer.html#writeBytes(java.nio.ByteBuffer)">writeBytes</a>, <a href="ProtonAbstractBuffer.html#writeBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer)">writeBytes</a>, <a href="ProtonAbstractBuffer.html#writeBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer,int)">writeBytes</a>, <a href="ProtonAbstractBuffer.html#writeBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer,int,int)">writeBytes</a>, <a href="ProtonAbstractBuffer.html#writeDouble(double)">writeDouble</a>, <a href="ProtonAbstractBuffer.html#writeFloat(float)">writeFloat</a>, <a href="ProtonAbstractBuffer.html#writeInt(int)">writeInt</a>, <a href="ProtonAbstractBuffer.html#writeLong(long)">writeLong</a>, <a href="ProtonAbstractBuffer.html#writeShort(short)">writeShort</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.qpid.protonj2.buffer.ProtonBuffer">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.qpid.protonj2.buffer.<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></h3>
<code><a href="ProtonBuffer.html#unwrap()">unwrap</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a id="DEFAULT_MAXIMUM_CAPACITY">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DEFAULT_MAXIMUM_CAPACITY</h4>
<pre>public static final&nbsp;int DEFAULT_MAXIMUM_CAPACITY</pre>
<div class="block">The default maximum capacity for a composite <a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.apache.qpid.protonj2.buffer.ProtonCompositeBuffer.DEFAULT_MAXIMUM_CAPACITY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ProtonCompositeBuffer</h4>
<pre>public&nbsp;ProtonCompositeBuffer()</pre>
<div class="block">Creates a Composite Buffer instance with max capacity of <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Integer.html?is-external=true#MAX_VALUE" title="class or interface in java.lang" class="externalLink"><code>Integer.MAX_VALUE</code></a>.</div>
</li>
</ul>
<a id="&lt;init&gt;(int)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ProtonCompositeBuffer</h4>
<pre>public&nbsp;ProtonCompositeBuffer&#8203;(int&nbsp;maximumCapacity)</pre>
<div class="block">Creates a Composite Buffer instance with the maximum capacity provided.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>maximumCapacity</code> - The maximum capacity that this buffer can grow to.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="append(byte[])">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>append</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonCompositeBuffer</a>&nbsp;append&#8203;(byte[]&nbsp;array)</pre>
<div class="block">Appends the given byte array to the end of the buffer segments that comprise this composite
<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> instance.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>array</code> - The array to append.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer"><code>ProtonCompositeBuffer</code></a> instance.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IndexOutOfBoundsException</a></code> - if the appended buffer would result in max capacity being exceeded.</dd>
</dl>
</li>
</ul>
<a id="append(byte[],int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>append</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonCompositeBuffer</a>&nbsp;append&#8203;(byte[]&nbsp;array,
int&nbsp;offset,
int&nbsp;length)</pre>
<div class="block">Appends the given byte array to the end of the buffer segments that comprise this composite
<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> instance.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>array</code> - The array to append.</dd>
<dd><code>offset</code> - The offset into the given array to index read and write operations.</dd>
<dd><code>length</code> - The usable portion of the given array.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer"><code>ProtonCompositeBuffer</code></a> instance.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IndexOutOfBoundsException</a></code> - if the appended buffer would result in max capacity being exceeded.</dd>
</dl>
</li>
</ul>
<a id="append(org.apache.qpid.protonj2.buffer.ProtonBuffer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>append</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonCompositeBuffer</a>&nbsp;append&#8203;(<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;buffer)</pre>
<div class="block">Appends the given <a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> to the end of the buffer segments that comprise this composite
<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> instance.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>buffer</code> - The <a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> instance to append.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer"><code>ProtonCompositeBuffer</code></a> instance.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IndexOutOfBoundsException</a></code> - if the appended buffer would result in max capacity being exceeded.</dd>
</dl>
</li>
</ul>
<a id="numberOfBuffers()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>numberOfBuffers</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;numberOfBuffers()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the total number of <a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> segments in this composite buffer instance.</dd>
</dl>
</li>
</ul>
<a id="foreachBuffer(java.util.function.Consumer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>foreachBuffer</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonCompositeBuffer</a>&nbsp;foreachBuffer&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink">Consumer</a>&lt;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&gt;&nbsp;consumer)</pre>
<div class="block">For each of the buffers contained in this <a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer"><code>ProtonCompositeBuffer</code></a> instance the
given consumer will be invoked with a duplicate of the buffer that can be independently
modified and not affect the contents of this buffer.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>consumer</code> - The <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink"><code>Consumer</code></a> that will be called with each buffer instance.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer"><code>ProtonCompositeBuffer</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="foreachInternalBuffer(java.util.function.Consumer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>foreachInternalBuffer</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonCompositeBuffer</a>&nbsp;foreachInternalBuffer&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink">Consumer</a>&lt;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&gt;&nbsp;consumer)</pre>
<div class="block">For each of the buffers contained in this <a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer"><code>ProtonCompositeBuffer</code></a> instance the
given consumer will be invoked with the <a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> that backs this composite
instance. Modifying the <a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> passed to the consumer modified the buffer
backing this composite and as such leaves this composite in an unknown and invalid state.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>consumer</code> - The <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink"><code>Consumer</code></a> that will be called with each buffer instance.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer"><code>ProtonCompositeBuffer</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="reclaimRead()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reclaimRead</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonCompositeBuffer</a>&nbsp;reclaimRead()</pre>
<div class="block">For any buffer that precedes the buffer pointed to by the current read index
remove that buffer from to composite and discard.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="ProtonCompositeBuffer.html" title="class in org.apache.qpid.protonj2.buffer"><code>ProtonCompositeBuffer</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="hasArray()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasArray</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;hasArray()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if this buffer has a backing byte array that can be accessed.</dd>
</dl>
</li>
</ul>
<a id="getArray()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getArray</h4>
<pre class="methodSignature">public&nbsp;byte[]&nbsp;getArray()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#getArray()">ProtonBuffer</a></code></span></div>
<div class="block">Returns the backing array for this ProtonBuffer instance if there is such an array or
throws an exception if this ProtonBuffer implementation has no backing array.
<p>
Changes to the returned array are visible to other users of this ProtonBuffer.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the backing byte array for this ProtonBuffer.</dd>
</dl>
</li>
</ul>
<a id="getArrayOffset()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getArrayOffset</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getArrayOffset()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the offset of the first byte in the backing array belonging to this buffer.</dd>
</dl>
</li>
</ul>
<a id="capacity()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>capacity</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;capacity()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of bytes this buffer can currently contain.</dd>
</dl>
</li>
</ul>
<a id="capacity(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>capacity</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;capacity&#8203;(int&nbsp;newCapacity)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#capacity(int)">ProtonBuffer</a></code></span></div>
<div class="block">Adjusts the capacity of this buffer. If the new capacity is less than the current
capacity, the content of this buffer is truncated. If the new capacity is greater
than the current capacity, the buffer is appended with unspecified data whose length is
new capacity - current capacity.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>newCapacity</code> - the new maximum capacity value of this buffer.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this buffer for using in call chaining.</dd>
</dl>
</li>
</ul>
<a id="duplicate()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>duplicate</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;duplicate()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#duplicate()">ProtonBuffer</a></code></span></div>
<div class="block">Create a duplicate of this ProtonBuffer instance that shares the same backing
data store and but maintains separate position index values. Changes to one buffer
are visible in any of its duplicates. This method does not copy the read or write
markers to the new buffer instance.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ProtonBuffer.html#duplicate()">duplicate</a></code>&nbsp;in interface&nbsp;<code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="ProtonAbstractBuffer.html#duplicate()">duplicate</a></code>&nbsp;in class&nbsp;<code><a href="ProtonAbstractBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonAbstractBuffer</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new ProtonBuffer instance that shares the backing data as this one.</dd>
</dl>
</li>
</ul>
<a id="getByte(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getByte</h4>
<pre class="methodSignature">public&nbsp;byte&nbsp;getByte&#8203;(int&nbsp;index)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#getByte(int)">ProtonBuffer</a></code></span></div>
<div class="block">Gets a byte from the specified index, this method will not modify the read or write
index.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index into the buffer where the value should be read.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the value read from the given index.</dd>
</dl>
</li>
</ul>
<a id="getShort(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getShort</h4>
<pre class="methodSignature">public&nbsp;short&nbsp;getShort&#8203;(int&nbsp;index)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#getShort(int)">ProtonBuffer</a></code></span></div>
<div class="block">Gets a short from the specified index, this method will not modify the read or write
index.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index into the buffer where the value should be read.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the value read from the given index.</dd>
</dl>
</li>
</ul>
<a id="getInt(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInt</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getInt&#8203;(int&nbsp;index)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#getInt(int)">ProtonBuffer</a></code></span></div>
<div class="block">Gets a int from the specified index, this method will not modify the read or write
index.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index into the buffer where the value should be read.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the value read from the given index.</dd>
</dl>
</li>
</ul>
<a id="getLong(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLong</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getLong&#8203;(int&nbsp;index)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#getLong(int)">ProtonBuffer</a></code></span></div>
<div class="block">Gets a long from the specified index, this method will not modify the read or write
index.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index into the buffer where the value should be read.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the value read from the given index.</dd>
</dl>
</li>
</ul>
<a id="getBytes(int,org.apache.qpid.protonj2.buffer.ProtonBuffer,int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBytes</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;getBytes&#8203;(int&nbsp;index,
<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;destination,
int&nbsp;destinationIndex,
int&nbsp;length)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#getBytes(int,org.apache.qpid.protonj2.buffer.ProtonBuffer,int,int)">ProtonBuffer</a></code></span></div>
<div class="block">Transfers this buffer's data to the specified destination starting at
the specified absolute <code>index</code>.
This method does not modify <code>readIndex</code> or <code>writeIndex</code>
of both the source (i.e. <code>this</code>) and the destination.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index into the buffer where the value should be read.</dd>
<dd><code>destination</code> - The buffer where the bytes read will be written to</dd>
<dd><code>destinationIndex</code> - The offset into the destination where the write starts</dd>
<dd><code>length</code> - The number of bytes to transfer</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this buffer for chaining</dd>
</dl>
</li>
</ul>
<a id="getBytes(int,byte[],int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBytes</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;getBytes&#8203;(int&nbsp;index,
byte[]&nbsp;destination,
int&nbsp;offset,
int&nbsp;length)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#getBytes(int,byte%5B%5D,int,int)">ProtonBuffer</a></code></span></div>
<div class="block">Transfers this buffer's data to the specified destination starting at
the specified absolute <code>index</code>.
This method does not modify <code>#getReadIndex()</code> or <code>#getWriteIndex()</code>
of this buffer.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index into the buffer where the value should be read.</dd>
<dd><code>destination</code> - The buffer where the bytes read will be written to</dd>
<dd><code>offset</code> - the offset into the destination to begin writing the bytes.</dd>
<dd><code>length</code> - the number of bytes to transfer from this buffer to the target buffer.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this buffer for chaining</dd>
</dl>
</li>
</ul>
<a id="getBytes(int,java.nio.ByteBuffer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBytes</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;getBytes&#8203;(int&nbsp;index,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio" class="externalLink">ByteBuffer</a>&nbsp;destination)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#getBytes(int,java.nio.ByteBuffer)">ProtonBuffer</a></code></span></div>
<div class="block">Transfers this buffer's data to the specified destination starting at
the specified absolute <code>index</code> until the destination's position
reaches its limit.
This method does not modify <code>#getReadIndex()</code> or <code>#getWriteIndex()</code> of
this buffer while the destination's <code>position</code> will be increased.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index into the buffer where the value should be read.</dd>
<dd><code>destination</code> - The buffer where the bytes read will be written to</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this buffer for chaining</dd>
</dl>
</li>
</ul>
<a id="setByte(int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setByte</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;setByte&#8203;(int&nbsp;index,
int&nbsp;value)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#setByte(int,int)">ProtonBuffer</a></code></span></div>
<div class="block">Sets the byte value at the given write index in this buffer's backing data store.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index to start the write from.</dd>
<dd><code>value</code> - The value to write at the given index.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a reference to this ProtonBuffer for chaining.</dd>
</dl>
</li>
</ul>
<a id="setShort(int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShort</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;setShort&#8203;(int&nbsp;index,
int&nbsp;value)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#setShort(int,int)">ProtonBuffer</a></code></span></div>
<div class="block">Sets the short value at the given write index in this buffer's backing data store.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index to start the write from.</dd>
<dd><code>value</code> - The value to write at the given index.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a reference to this ProtonBuffer for chaining.</dd>
</dl>
</li>
</ul>
<a id="setInt(int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInt</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;setInt&#8203;(int&nbsp;index,
int&nbsp;value)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#setInt(int,int)">ProtonBuffer</a></code></span></div>
<div class="block">Sets the int value at the given write index in this buffer's backing data store.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index to start the write from.</dd>
<dd><code>value</code> - The value to write at the given index.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a reference to this ProtonBuffer for chaining.</dd>
</dl>
</li>
</ul>
<a id="setLong(int,long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLong</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;setLong&#8203;(int&nbsp;index,
long&nbsp;value)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#setLong(int,long)">ProtonBuffer</a></code></span></div>
<div class="block">Sets the long value at the given write index in this buffer's backing data store.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index to start the write from.</dd>
<dd><code>value</code> - The value to write at the given index.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a reference to this ProtonBuffer for chaining.</dd>
</dl>
</li>
</ul>
<a id="setBytes(int,org.apache.qpid.protonj2.buffer.ProtonBuffer,int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBytes</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;setBytes&#8203;(int&nbsp;index,
<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;source,
int&nbsp;sourceIndex,
int&nbsp;length)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#setBytes(int,org.apache.qpid.protonj2.buffer.ProtonBuffer,int,int)">ProtonBuffer</a></code></span></div>
<div class="block">Transfers the specified source buffer's data to this buffer starting at
the specified absolute <code>index</code>.
This method does not modify <code>readIndex</code> or <code>writeIndex</code>
of both the source (i.e. <code>this</code>) and the destination.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index in this buffer where the write operation starts.</dd>
<dd><code>source</code> - The source buffer from which the bytes are read.</dd>
<dd><code>sourceIndex</code> - The offset into the source where the set begins.</dd>
<dd><code>length</code> - The number of bytes to transfer</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this buffer for chaining</dd>
</dl>
</li>
</ul>
<a id="setBytes(int,byte[],int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBytes</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;setBytes&#8203;(int&nbsp;index,
byte[]&nbsp;source,
int&nbsp;sourceIndex,
int&nbsp;length)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#setBytes(int,byte%5B%5D,int,int)">ProtonBuffer</a></code></span></div>
<div class="block">Transfers the specified source array's data to this buffer starting at
the specified absolute <code>index</code>.
This method does not modify <code>readIndex</code> or <code>writeIndex</code> of
this buffer.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index in this buffer where the write operation starts.</dd>
<dd><code>source</code> - The source buffer from which the bytes are read.</dd>
<dd><code>sourceIndex</code> - The offset into the source where the set begins.</dd>
<dd><code>length</code> - The number of bytes to transfer</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this buffer for chaining</dd>
</dl>
</li>
</ul>
<a id="setBytes(int,java.nio.ByteBuffer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBytes</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;setBytes&#8203;(int&nbsp;index,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio" class="externalLink">ByteBuffer</a>&nbsp;source)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#setBytes(int,java.nio.ByteBuffer)">ProtonBuffer</a></code></span></div>
<div class="block">Transfers the specified source buffer's data to this buffer starting at
the specified absolute <code>index</code> until the source buffer's position
reaches its limit.
This method does not modify <code>readIndex</code> or <code>writeIndex</code> of
this buffer.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index in this buffer where the write operation starts.</dd>
<dd><code>source</code> - The source buffer from which the bytes are read.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this buffer for chaining</dd>
</dl>
</li>
</ul>
<a id="copy(int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copy</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;copy&#8203;(int&nbsp;index,
int&nbsp;length)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#copy(int,int)">ProtonBuffer</a></code></span></div>
<div class="block">Returns a copy of this buffer's sub-region. Modifying the content of
the returned buffer or this buffer does not affect each other at all.
This method does not modify the value returned from <a href="ProtonBuffer.html#getReadIndex()"><code>ProtonBuffer.getReadIndex()</code></a>
or <a href="ProtonBuffer.html#getWriteIndex()"><code>ProtonBuffer.getWriteIndex()</code></a> of this buffer.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ProtonBuffer.html#copy(int,int)">copy</a></code>&nbsp;in interface&nbsp;<code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ProtonAbstractBuffer.html#copy(int,int)">copy</a></code>&nbsp;in class&nbsp;<code><a href="ProtonAbstractBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonAbstractBuffer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index in this buffer where the copy should begin</dd>
<dd><code>length</code> - The number of bytes to copy to the new buffer from this one.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new ProtonBuffer instance containing the copied bytes.</dd>
</dl>
</li>
</ul>
<a id="toByteBuffer(int,int)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toByteBuffer</h4>
<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio" class="externalLink">ByteBuffer</a>&nbsp;toByteBuffer&#8203;(int&nbsp;index,
int&nbsp;length)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ProtonBuffer.html#toByteBuffer(int,int)">ProtonBuffer</a></code></span></div>
<div class="block">Returns a ByteBuffer that represents the given span of bytes from the readable portion
of this buffer.
<p>
This method should attempt to return a ByteBuffer that shares the backing data store
with this buffer however if that is not possible it is permitted that the returned
ByteBuffer contain a copy of the readable bytes of this ProtonBuffer.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ProtonBuffer.html#toByteBuffer(int,int)">toByteBuffer</a></code>&nbsp;in interface&nbsp;<code><a href="ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ProtonAbstractBuffer.html#toByteBuffer(int,int)">toByteBuffer</a></code>&nbsp;in class&nbsp;<code><a href="ProtonAbstractBuffer.html" title="class in org.apache.qpid.protonj2.buffer">ProtonAbstractBuffer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The starting index in this where the ByteBuffer view should begin.</dd>
<dd><code>length</code> - The number of bytes to include in the ByteBuffer view.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a ByteBuffer that represents the given view of this buffers readable bytes.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ProtonCompositeBuffer.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="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2022 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>