cassandra-server
Version:
A thin Javascript wrapper around Apache Cassandra to provide out of the box server support
853 lines (851 loc) • 33.5 kB
HTML
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (version 1.7.0_67) on Sun Sep 07 15:29:33 CEST 2014 -->
<title>SequentialWriter (apache-cassandra API)</title>
<meta name="date" content="2014-09-07">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="SequentialWriter (apache-cassandra API)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><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/SequentialWriter.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/cassandra/io/util/SegmentedFile.Builder.html" title="class in org.apache.cassandra.io.util"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.BufferedFileWriterMark.html" title="class in org.apache.cassandra.io.util"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/cassandra/io/util/SequentialWriter.html" target="_top">Frames</a></li>
<li><a href="SequentialWriter.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All 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: </li>
<li><a href="#nested_class_summary">Nested</a> | </li>
<li><a href="#field_summary">Field</a> | </li>
<li><a href="#constructor_summary">Constr</a> | </li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail: </li>
<li><a href="#field_detail">Field</a> | </li>
<li><a href="#constructor_detail">Constr</a> | </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.cassandra.io.util</div>
<h2 title="Class SequentialWriter" class="title">Class SequentialWriter</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>java.io.OutputStream</li>
<li>
<ul class="inheritance">
<li>org.apache.cassandra.io.util.SequentialWriter</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>java.io.Closeable, java.io.Flushable, java.lang.AutoCloseable, java.nio.channels.Channel, java.nio.channels.WritableByteChannel</dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../org/apache/cassandra/io/util/ChecksummedSequentialWriter.html" title="class in org.apache.cassandra.io.util">ChecksummedSequentialWriter</a>, <a href="../../../../../org/apache/cassandra/io/compress/CompressedSequentialWriter.html" title="class in org.apache.cassandra.io.compress">CompressedSequentialWriter</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">SequentialWriter</span>
extends java.io.OutputStream
implements java.nio.channels.WritableByteChannel</pre>
<div class="block">Adds buffering, mark, and fsyncing to OutputStream. We always fsync on close; we may also
fsync incrementally if Config.trickle_fsync is enabled.</div>
</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="overviewSummary" 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"> </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>protected static class </code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.BufferedFileWriterMark.html" title="class in org.apache.cassandra.io.util">SequentialWriter.BufferedFileWriterMark</a></strong></code>
<div class="block">Class to hold a mark to the position of the file</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="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd"> </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 byte[]</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#buffer">buffer</a></strong></code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#bufferOffset">bufferOffset</a></strong></code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#current">current</a></strong></code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#isDirty">isDirty</a></strong></code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#lastFlushOffset">lastFlushOffset</a></strong></code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected java.io.RandomAccessFile</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#out">out</a></strong></code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/cassandra/io/util/DataOutputPlus.html" title="interface in org.apache.cassandra.io.util">DataOutputPlus</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#stream">stream</a></strong></code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#syncNeeded">syncNeeded</a></strong></code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#validBufferBytes">validBufferBytes</a></strong></code> </td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd"> </span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#SequentialWriter(java.io.File,%20int)">SequentialWriter</a></strong>(java.io.File file,
int bufferSize)</code> </td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd"> </span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#close()">close</a></strong>()</code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#flush()">flush</a></strong>()</code>
<div class="block">If buffer is dirty, flush it's contents to the operating system.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#flushData()">flushData</a></strong>()</code>
<div class="block">Override this method instead of overriding flush()</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#flushInternal()">flushInternal</a></strong>()</code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#getFilePointer()">getFilePointer</a></strong>()</code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#getLastFlushOffset()">getLastFlushOffset</a></strong>()</code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#getOnDiskFilePointer()">getOnDiskFilePointer</a></strong>()</code>
<div class="block">Return the current file pointer of the underlying on-disk file.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#getPath()">getPath</a></strong>()</code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#isOpen()">isOpen</a></strong>()</code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#length()">length</a></strong>()</code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/cassandra/io/util/FileMark.html" title="interface in org.apache.cassandra.io.util">FileMark</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#mark()">mark</a></strong>()</code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html" title="class in org.apache.cassandra.io.util">SequentialWriter</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#open(java.io.File)">open</a></strong>(java.io.File file)</code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../../../org/apache/cassandra/io/util/ChecksummedSequentialWriter.html" title="class in org.apache.cassandra.io.util">ChecksummedSequentialWriter</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#open(java.io.File,%20java.io.File)">open</a></strong>(java.io.File file,
java.io.File crcPath)</code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html" title="class in org.apache.cassandra.io.util">SequentialWriter</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#open(java.io.File,%20int)">open</a></strong>(java.io.File file,
int bufferSize)</code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../../../org/apache/cassandra/io/compress/CompressedSequentialWriter.html" title="class in org.apache.cassandra.io.compress">CompressedSequentialWriter</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#open(java.lang.String,%20java.lang.String,%20org.apache.cassandra.io.compress.CompressionParameters,%20org.apache.cassandra.io.sstable.metadata.MetadataCollector)">open</a></strong>(java.lang.String dataFilePath,
java.lang.String offsetsPath,
<a href="../../../../../org/apache/cassandra/io/compress/CompressionParameters.html" title="class in org.apache.cassandra.io.compress">CompressionParameters</a> parameters,
<a href="../../../../../org/apache/cassandra/io/sstable/metadata/MetadataCollector.html" title="class in org.apache.cassandra.io.sstable.metadata">MetadataCollector</a> sstableMetadataCollector)</code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#reBuffer()">reBuffer</a></strong>()</code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#resetAndTruncate(org.apache.cassandra.io.util.FileMark)">resetAndTruncate</a></strong>(<a href="../../../../../org/apache/cassandra/io/util/FileMark.html" title="interface in org.apache.cassandra.io.util">FileMark</a> mark)</code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#resetBuffer()">resetBuffer</a></strong>()</code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#sync()">sync</a></strong>()</code>
<div class="block">Synchronize file contents with disk.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#syncDataOnlyInternal()">syncDataOnlyInternal</a></strong>()</code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#syncInternal()">syncInternal</a></strong>()</code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#truncate(long)">truncate</a></strong>(long toSize)</code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#write(byte[])">write</a></strong>(byte[] buffer)</code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#write(byte[],%20int,%20int)">write</a></strong>(byte[] data,
int offset,
int length)</code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#write(java.nio.ByteBuffer)">write</a></strong>(java.nio.ByteBuffer src)</code> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#write(int)">write</a></strong>(int value)</code> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html#writeFullChecksum(org.apache.cassandra.io.sstable.Descriptor)">writeFullChecksum</a></strong>(<a href="../../../../../org/apache/cassandra/io/sstable/Descriptor.html" title="class in org.apache.cassandra.io.sstable">Descriptor</a> descriptor)</code> </td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</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="isDirty">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDirty</h4>
<pre>protected boolean isDirty</pre>
</li>
</ul>
<a name="syncNeeded">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>syncNeeded</h4>
<pre>protected boolean syncNeeded</pre>
</li>
</ul>
<a name="buffer">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buffer</h4>
<pre>protected byte[] buffer</pre>
</li>
</ul>
<a name="current">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>current</h4>
<pre>protected long current</pre>
</li>
</ul>
<a name="bufferOffset">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>bufferOffset</h4>
<pre>protected long bufferOffset</pre>
</li>
</ul>
<a name="validBufferBytes">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validBufferBytes</h4>
<pre>protected int validBufferBytes</pre>
</li>
</ul>
<a name="out">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>out</h4>
<pre>protected final java.io.RandomAccessFile out</pre>
</li>
</ul>
<a name="stream">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stream</h4>
<pre>public final <a href="../../../../../org/apache/cassandra/io/util/DataOutputPlus.html" title="interface in org.apache.cassandra.io.util">DataOutputPlus</a> stream</pre>
</li>
</ul>
<a name="lastFlushOffset">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>lastFlushOffset</h4>
<pre>protected long lastFlushOffset</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="SequentialWriter(java.io.File, int)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>SequentialWriter</h4>
<pre>public SequentialWriter(java.io.File file,
int bufferSize)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="open(java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>open</h4>
<pre>public static <a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html" title="class in org.apache.cassandra.io.util">SequentialWriter</a> open(java.io.File file)</pre>
</li>
</ul>
<a name="open(java.io.File, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>open</h4>
<pre>public static <a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.html" title="class in org.apache.cassandra.io.util">SequentialWriter</a> open(java.io.File file,
int bufferSize)</pre>
</li>
</ul>
<a name="open(java.io.File, java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>open</h4>
<pre>public static <a href="../../../../../org/apache/cassandra/io/util/ChecksummedSequentialWriter.html" title="class in org.apache.cassandra.io.util">ChecksummedSequentialWriter</a> open(java.io.File file,
java.io.File crcPath)</pre>
</li>
</ul>
<a name="open(java.lang.String, java.lang.String, org.apache.cassandra.io.compress.CompressionParameters, org.apache.cassandra.io.sstable.metadata.MetadataCollector)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>open</h4>
<pre>public static <a href="../../../../../org/apache/cassandra/io/compress/CompressedSequentialWriter.html" title="class in org.apache.cassandra.io.compress">CompressedSequentialWriter</a> open(java.lang.String dataFilePath,
java.lang.String offsetsPath,
<a href="../../../../../org/apache/cassandra/io/compress/CompressionParameters.html" title="class in org.apache.cassandra.io.compress">CompressionParameters</a> parameters,
<a href="../../../../../org/apache/cassandra/io/sstable/metadata/MetadataCollector.html" title="class in org.apache.cassandra.io.sstable.metadata">MetadataCollector</a> sstableMetadataCollector)</pre>
</li>
</ul>
<a name="write(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>write</h4>
<pre>public void write(int value)
throws java.nio.channels.ClosedChannelException</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code>write</code> in class <code>java.io.OutputStream</code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.nio.channels.ClosedChannelException</code></dd></dl>
</li>
</ul>
<a name="write(byte[])">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>write</h4>
<pre>public void write(byte[] buffer)
throws java.nio.channels.ClosedChannelException</pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code>write</code> in class <code>java.io.OutputStream</code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.nio.channels.ClosedChannelException</code></dd></dl>
</li>
</ul>
<a name="write(byte[], int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>write</h4>
<pre>public void write(byte[] data,
int offset,
int length)
throws java.nio.channels.ClosedChannelException</pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code>write</code> in class <code>java.io.OutputStream</code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.nio.channels.ClosedChannelException</code></dd></dl>
</li>
</ul>
<a name="write(java.nio.ByteBuffer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>write</h4>
<pre>public int write(java.nio.ByteBuffer src)
throws java.io.IOException</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code>write</code> in interface <code>java.nio.channels.WritableByteChannel</code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code></dd></dl>
</li>
</ul>
<a name="sync()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sync</h4>
<pre>public void sync()</pre>
<div class="block">Synchronize file contents with disk.</div>
</li>
</ul>
<a name="syncDataOnlyInternal()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>syncDataOnlyInternal</h4>
<pre>protected void syncDataOnlyInternal()</pre>
</li>
</ul>
<a name="syncInternal()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>syncInternal</h4>
<pre>protected void syncInternal()</pre>
</li>
</ul>
<a name="flush()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>flush</h4>
<pre>public void flush()</pre>
<div class="block">If buffer is dirty, flush it's contents to the operating system. Does not imply fsync().
Currently, for implementation reasons, this also invalidates the buffer.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code>flush</code> in interface <code>java.io.Flushable</code></dd>
<dt><strong>Overrides:</strong></dt>
<dd><code>flush</code> in class <code>java.io.OutputStream</code></dd>
</dl>
</li>
</ul>
<a name="flushInternal()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>flushInternal</h4>
<pre>protected void flushInternal()</pre>
</li>
</ul>
<a name="flushData()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>flushData</h4>
<pre>protected void flushData()</pre>
<div class="block">Override this method instead of overriding flush()</div>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/cassandra/io/FSWriteError.html" title="class in org.apache.cassandra.io">FSWriteError</a></code> - on any I/O error.</dd></dl>
</li>
</ul>
<a name="getFilePointer()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFilePointer</h4>
<pre>public long getFilePointer()</pre>
</li>
</ul>
<a name="getOnDiskFilePointer()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOnDiskFilePointer</h4>
<pre>public long getOnDiskFilePointer()</pre>
<div class="block">Return the current file pointer of the underlying on-disk file.
Note that since write works by buffering data, the value of this will increase by buffer
size and not every write to the writer will modify this value.
Furthermore, for compressed files, this value refers to compressed data, while the
writer getFilePointer() refers to uncompressedFile</div>
</li>
</ul>
<a name="length()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>length</h4>
<pre>public long length()</pre>
</li>
</ul>
<a name="getPath()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPath</h4>
<pre>public java.lang.String getPath()</pre>
</li>
</ul>
<a name="reBuffer()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reBuffer</h4>
<pre>protected void reBuffer()</pre>
</li>
</ul>
<a name="resetBuffer()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>resetBuffer</h4>
<pre>protected void resetBuffer()</pre>
</li>
</ul>
<a name="mark()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mark</h4>
<pre>public <a href="../../../../../org/apache/cassandra/io/util/FileMark.html" title="interface in org.apache.cassandra.io.util">FileMark</a> mark()</pre>
</li>
</ul>
<a name="resetAndTruncate(org.apache.cassandra.io.util.FileMark)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>resetAndTruncate</h4>
<pre>public void resetAndTruncate(<a href="../../../../../org/apache/cassandra/io/util/FileMark.html" title="interface in org.apache.cassandra.io.util">FileMark</a> mark)</pre>
</li>
</ul>
<a name="getLastFlushOffset()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLastFlushOffset</h4>
<pre>public long getLastFlushOffset()</pre>
</li>
</ul>
<a name="truncate(long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>truncate</h4>
<pre>public void truncate(long toSize)</pre>
</li>
</ul>
<a name="isOpen()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isOpen</h4>
<pre>public boolean isOpen()</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code>isOpen</code> in interface <code>java.nio.channels.Channel</code></dd>
</dl>
</li>
</ul>
<a name="close()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre>public void close()</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code>close</code> in interface <code>java.io.Closeable</code></dd>
<dt><strong>Specified by:</strong></dt>
<dd><code>close</code> in interface <code>java.lang.AutoCloseable</code></dd>
<dt><strong>Specified by:</strong></dt>
<dd><code>close</code> in interface <code>java.nio.channels.Channel</code></dd>
<dt><strong>Overrides:</strong></dt>
<dd><code>close</code> in class <code>java.io.OutputStream</code></dd>
</dl>
</li>
</ul>
<a name="writeFullChecksum(org.apache.cassandra.io.sstable.Descriptor)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>writeFullChecksum</h4>
<pre>public void writeFullChecksum(<a href="../../../../../org/apache/cassandra/io/sstable/Descriptor.html" title="class in org.apache.cassandra.io.sstable">Descriptor</a> descriptor)</pre>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><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/SequentialWriter.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/cassandra/io/util/SegmentedFile.Builder.html" title="class in org.apache.cassandra.io.util"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/cassandra/io/util/SequentialWriter.BufferedFileWriterMark.html" title="class in org.apache.cassandra.io.util"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/cassandra/io/util/SequentialWriter.html" target="_top">Frames</a></li>
<li><a href="SequentialWriter.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All 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: </li>
<li><a href="#nested_class_summary">Nested</a> | </li>
<li><a href="#field_summary">Field</a> | </li>
<li><a href="#constructor_summary">Constr</a> | </li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail: </li>
<li><a href="#field_detail">Field</a> | </li>
<li><a href="#constructor_detail">Constr</a> | </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 © 2014 The Apache Software Foundation</small></p>
</body>
</html>