blob: be4d71c9cfa80a2dc36f4e6461557245021364e4 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>DistributedLogManagerImpl (Apache DistributedLog for Java, version 0.5.0)</title>
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="DistributedLogManagerImpl (Apache DistributedLog for Java, version 0.5.0)";
}
}
catch(err) {
}
//-->
var methods = {"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,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":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>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/DistributedLogManagerImpl.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/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/distributedlog/DistributedLogManagerImpl.html" target="_top">Frames</a></li>
<li><a href="DistributedLogManagerImpl.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&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>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.distributedlog</div>
<h2 title="Class DistributedLogManagerImpl" class="title">Class DistributedLogManagerImpl</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.distributedlog.DistributedLogManagerImpl</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="http://download.oracle.com/javase/6/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>, <a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">DistributedLogManagerImpl</span>
extends <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></pre>
<div class="block">The wrapper of <a href="../../../org/apache/distributedlog/api/DistributedLogManager.html" title="interface in org.apache.distributedlog.api"><code>DistributedLogManager</code></a>.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#DistributedLogManagerImpl-org.apache.distributedlog.api.DistributedLogManager-">DistributedLogManagerImpl</a></span>(<a href="../../../org/apache/distributedlog/api/DistributedLogManager.html" title="interface in org.apache.distributedlog.api">DistributedLogManager</a>&nbsp;impl)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#asyncClose--">asyncClose</a></span>()</code>
<div class="block">Closes this source and releases any system resources associated
with it.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#close--">close</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#delete--">delete</a></span>()</code>
<div class="block">Delete the log.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/distributedlog/AppendOnlyStreamReader.html" title="class in org.apache.distributedlog">AppendOnlyStreamReader</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getAppendOnlyStreamReader--">getAppendOnlyStreamReader</a></span>()</code>
<div class="block">Get a reader to read a log stream as a sequence of bytes.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/distributedlog/AppendOnlyStreamWriter.html" title="class in org.apache.distributedlog">AppendOnlyStreamWriter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getAppendOnlyStreamWriter--">getAppendOnlyStreamWriter</a></span>()</code>
<div class="block">Begin appending to the end of the log stream which is being treated as a sequence of bytes.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getAsyncLogReader-org.apache.distributedlog.DLSN-">getAsyncLogReader</a></span>(<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;fromDLSN)</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getAsyncLogReader-long-">getAsyncLogReader</a></span>(long&nbsp;fromTxnId)</code>&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getAsyncLogReaderWithLock-org.apache.distributedlog.DLSN-">getAsyncLogReaderWithLock</a></span>(<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;fromDLSN)</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getAsyncLogReaderWithLock-org.apache.distributedlog.DLSN-java.lang.String-">getAsyncLogReaderWithLock</a></span>(<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;fromDLSN,
<a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;subscriberId)</code>
<div class="block">Get a log reader with lock starting from <i>fromDLSN</i> and using <i>subscriberId</i>.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getAsyncLogReaderWithLock-java.lang.String-">getAsyncLogReaderWithLock</a></span>(<a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;subscriberId)</code>
<div class="block">Get a log reader using <i>subscriberId</i> with lock.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getDLSNNotLessThanTxId-long-">getDLSNNotLessThanTxId</a></span>(long&nbsp;transactionId)</code>
<div class="block">Get the <a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog"><code>DLSN</code></a> of first log record whose transaction id is not less than <code>transactionId</code>.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getFirstDLSNAsync--">getFirstDLSNAsync</a></span>()</code>
<div class="block">Get first DLSN in the log.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getFirstTxId--">getFirstTxId</a></span>()</code>
<div class="block">Get the earliest Transaction Id available in the log.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/distributedlog/LogReader.html" title="interface in org.apache.distributedlog">LogReader</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getInputStream-org.apache.distributedlog.DLSN-">getInputStream</a></span>(<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;fromDLSN)</code>&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/distributedlog/LogReader.html" title="interface in org.apache.distributedlog">LogReader</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getInputStream-long-">getInputStream</a></span>(long&nbsp;fromTxnId)</code>
<div class="block">Get the input stream starting with fromTxnId for the specified log.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getLastDLSN--">getLastDLSN</a></span>()</code>
<div class="block">Get Latest DLSN in the log.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getLastDLSNAsync--">getLastDLSNAsync</a></span>()</code>
<div class="block">Get Latest DLSN in the log - async.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/distributedlog/LogRecordWithDLSN.html" title="class in org.apache.distributedlog">LogRecordWithDLSN</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getLastLogRecord--">getLastLogRecord</a></span>()</code>
<div class="block">Get the last log record in the stream.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/LogRecordWithDLSN.html" title="class in org.apache.distributedlog">LogRecordWithDLSN</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getLastLogRecordAsync--">getLastLogRecordAsync</a></span>()</code>
<div class="block">Get Latest log record with DLSN in the log - async.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getLastTxId--">getLastTxId</a></span>()</code>
<div class="block">Get Latest Transaction Id in the log.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getLastTxIdAsync--">getLastTxIdAsync</a></span>()</code>
<div class="block">Get Latest Transaction Id in the log - async.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getLogRecordCount--">getLogRecordCount</a></span>()</code>
<div class="block">Get the number of log records in the active portion of the log.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getLogRecordCountAsync-org.apache.distributedlog.DLSN-">getLogRecordCountAsync</a></span>(<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;beginDLSN)</code>
<div class="block">Get the number of log records in the active portion of the log - async.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../org/apache/distributedlog/LogSegmentMetadata.html" title="class in org.apache.distributedlog">LogSegmentMetadata</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getLogSegments--">getLogSegments</a></span>()</code>
<div class="block">Get log segments.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/distributedlog/namespace/NamespaceDriver.html" title="interface in org.apache.distributedlog.namespace">NamespaceDriver</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getNamespaceDriver--">getNamespaceDriver</a></span>()</code>
<div class="block">Get the namespace driver used by this manager.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getStreamName--">getStreamName</a></span>()</code>
<div class="block">Get the name of the stream managed by this log manager.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/distributedlog/subscription/SubscriptionsStore.html" title="interface in org.apache.distributedlog.subscription">SubscriptionsStore</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#getSubscriptionsStore--">getSubscriptionsStore</a></span>()</code>
<div class="block">Get the subscriptions store provided by the distributedlog manager.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#isEndOfStreamMarked--">isEndOfStreamMarked</a></span>()</code>
<div class="block">Check if an end of stream marker was added to the stream
A stream with an end of stream marker cannot be appended to.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#openAsyncLogReader-org.apache.distributedlog.DLSN-">openAsyncLogReader</a></span>(<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;fromDLSN)</code>
<div class="block">Open an async log reader to read records from a log starting from <code>fromDLSN</code>.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#openAsyncLogReader-long-">openAsyncLogReader</a></span>(long&nbsp;fromTxnId)</code>
<div class="block">Open an async log reader to read records from a log starting from <code>fromTxnId</code>.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/AsyncLogWriter.html" title="interface in org.apache.distributedlog">AsyncLogWriter</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#openAsyncLogWriter--">openAsyncLogWriter</a></span>()</code>
<div class="block">Open async log writer to write records to the log stream.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#purgeLogsOlderThan-long-">purgeLogsOlderThan</a></span>(long&nbsp;minTxIdToKeep)</code>
<div class="block">The DistributedLogManager may archive/purge any logs for transactionId
less than or equal to minImageTxId.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#recover--">recover</a></span>()</code>
<div class="block">Run recovery on the log.</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#registerListener-org.apache.distributedlog.callback.LogSegmentListener-">registerListener</a></span>(<a href="../../../org/apache/distributedlog/callback/LogSegmentListener.html" title="interface in org.apache.distributedlog.callback">LogSegmentListener</a>&nbsp;listener)</code>
<div class="block">Register <i>listener</i> on log segment updates of this stream.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/distributedlog/AsyncLogWriter.html" title="interface in org.apache.distributedlog">AsyncLogWriter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#startAsyncLogSegmentNonPartitioned--">startAsyncLogSegmentNonPartitioned</a></span>()</code>
<div class="block">Begin writing to the log stream identified by the name.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/distributedlog/LogWriter.html" title="interface in org.apache.distributedlog">LogWriter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#startLogSegmentNonPartitioned--">startLogSegmentNonPartitioned</a></span>()</code>
<div class="block">Begin writing to the log stream identified by the name.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/distributedlog/DistributedLogManagerImpl.html#unregisterListener-org.apache.distributedlog.callback.LogSegmentListener-">unregisterListener</a></span>(<a href="../../../org/apache/distributedlog/callback/LogSegmentListener.html" title="interface in org.apache.distributedlog.callback">LogSegmentListener</a>&nbsp;listener)</code>
<div class="block">Unregister <i>listener</i> on log segment updates from this stream.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="DistributedLogManagerImpl-org.apache.distributedlog.api.DistributedLogManager-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DistributedLogManagerImpl</h4>
<pre>public&nbsp;DistributedLogManagerImpl(<a href="../../../org/apache/distributedlog/api/DistributedLogManager.html" title="interface in org.apache.distributedlog.api">DistributedLogManager</a>&nbsp;impl)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getStreamName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStreamName</h4>
<pre>public&nbsp;<a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getStreamName()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getStreamName--">DistributedLogManager</a></code></span></div>
<div class="block">Get the name of the stream managed by this log manager.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getStreamName--">getStreamName</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>streamName</dd>
</dl>
</li>
</ul>
<a name="getNamespaceDriver--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNamespaceDriver</h4>
<pre>public&nbsp;<a href="../../../org/apache/distributedlog/namespace/NamespaceDriver.html" title="interface in org.apache.distributedlog.namespace">NamespaceDriver</a>&nbsp;getNamespaceDriver()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getNamespaceDriver--">DistributedLogManager</a></code></span></div>
<div class="block">Get the namespace driver used by this manager.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getNamespaceDriver--">getNamespaceDriver</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the namespace driver</dd>
</dl>
</li>
</ul>
<a name="getLogSegments--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLogSegments</h4>
<pre>public&nbsp;<a href="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../org/apache/distributedlog/LogSegmentMetadata.html" title="class in org.apache.distributedlog">LogSegmentMetadata</a>&gt;&nbsp;getLogSegments()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLogSegments--">DistributedLogManager</a></code></span></div>
<div class="block">Get log segments.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLogSegments--">getLogSegments</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>log segments</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="registerListener-org.apache.distributedlog.callback.LogSegmentListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>registerListener</h4>
<pre>public&nbsp;void&nbsp;registerListener(<a href="../../../org/apache/distributedlog/callback/LogSegmentListener.html" title="interface in org.apache.distributedlog.callback">LogSegmentListener</a>&nbsp;listener)
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#registerListener-org.apache.distributedlog.callback.LogSegmentListener-">DistributedLogManager</a></code></span></div>
<div class="block">Register <i>listener</i> on log segment updates of this stream.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#registerListener-org.apache.distributedlog.callback.LogSegmentListener-">registerListener</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - listener to receive update log segment list.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="unregisterListener-org.apache.distributedlog.callback.LogSegmentListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unregisterListener</h4>
<pre>public&nbsp;void&nbsp;unregisterListener(<a href="../../../org/apache/distributedlog/callback/LogSegmentListener.html" title="interface in org.apache.distributedlog.callback">LogSegmentListener</a>&nbsp;listener)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#unregisterListener-org.apache.distributedlog.callback.LogSegmentListener-">DistributedLogManager</a></code></span></div>
<div class="block">Unregister <i>listener</i> on log segment updates from this stream.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#unregisterListener-org.apache.distributedlog.callback.LogSegmentListener-">unregisterListener</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - listener to receive update log segment list.</dd>
</dl>
</li>
</ul>
<a name="openAsyncLogWriter--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>openAsyncLogWriter</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/AsyncLogWriter.html" title="interface in org.apache.distributedlog">AsyncLogWriter</a>&gt;&nbsp;openAsyncLogWriter()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#openAsyncLogWriter--">DistributedLogManager</a></code></span></div>
<div class="block">Open async log writer to write records to the log stream.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#openAsyncLogWriter--">openAsyncLogWriter</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>result represents the open result</dd>
</dl>
</li>
</ul>
<a name="startLogSegmentNonPartitioned--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>startLogSegmentNonPartitioned</h4>
<pre>public&nbsp;<a href="../../../org/apache/distributedlog/LogWriter.html" title="interface in org.apache.distributedlog">LogWriter</a>&nbsp;startLogSegmentNonPartitioned()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#startLogSegmentNonPartitioned--">DistributedLogManager</a></code></span></div>
<div class="block">Begin writing to the log stream identified by the name.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#startLogSegmentNonPartitioned--">startLogSegmentNonPartitioned</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the writer interface to generate log records</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="startAsyncLogSegmentNonPartitioned--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>startAsyncLogSegmentNonPartitioned</h4>
<pre>public&nbsp;<a href="../../../org/apache/distributedlog/AsyncLogWriter.html" title="interface in org.apache.distributedlog">AsyncLogWriter</a>&nbsp;startAsyncLogSegmentNonPartitioned()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#startAsyncLogSegmentNonPartitioned--">DistributedLogManager</a></code></span></div>
<div class="block">Begin writing to the log stream identified by the name.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#startAsyncLogSegmentNonPartitioned--">startAsyncLogSegmentNonPartitioned</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the writer interface to generate log records</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getAppendOnlyStreamWriter--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAppendOnlyStreamWriter</h4>
<pre>public&nbsp;<a href="../../../org/apache/distributedlog/AppendOnlyStreamWriter.html" title="class in org.apache.distributedlog">AppendOnlyStreamWriter</a>&nbsp;getAppendOnlyStreamWriter()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getAppendOnlyStreamWriter--">DistributedLogManager</a></code></span></div>
<div class="block">Begin appending to the end of the log stream which is being treated as a sequence of bytes.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getAppendOnlyStreamWriter--">getAppendOnlyStreamWriter</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the writer interface to generate log records</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getAppendOnlyStreamReader--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAppendOnlyStreamReader</h4>
<pre>public&nbsp;<a href="../../../org/apache/distributedlog/AppendOnlyStreamReader.html" title="class in org.apache.distributedlog">AppendOnlyStreamReader</a>&nbsp;getAppendOnlyStreamReader()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getAppendOnlyStreamReader--">DistributedLogManager</a></code></span></div>
<div class="block">Get a reader to read a log stream as a sequence of bytes.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getAppendOnlyStreamReader--">getAppendOnlyStreamReader</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the writer interface to generate log records</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getInputStream-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInputStream</h4>
<pre>public&nbsp;<a href="../../../org/apache/distributedlog/LogReader.html" title="interface in org.apache.distributedlog">LogReader</a>&nbsp;getInputStream(long&nbsp;fromTxnId)
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getInputStream-long-">DistributedLogManager</a></code></span></div>
<div class="block">Get the input stream starting with fromTxnId for the specified log.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getInputStream-long-">getInputStream</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fromTxnId</code> - - the first transaction id we want to read</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the stream starting with transaction fromTxnId</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if a stream cannot be found.</dd>
</dl>
</li>
</ul>
<a name="getInputStream-org.apache.distributedlog.DLSN-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInputStream</h4>
<pre>public&nbsp;<a href="../../../org/apache/distributedlog/LogReader.html" title="interface in org.apache.distributedlog">LogReader</a>&nbsp;getInputStream(<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;fromDLSN)
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getInputStream-org.apache.distributedlog.DLSN-">getInputStream</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="openAsyncLogReader-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>openAsyncLogReader</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a>&gt;&nbsp;openAsyncLogReader(long&nbsp;fromTxnId)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#openAsyncLogReader-long-">DistributedLogManager</a></code></span></div>
<div class="block">Open an async log reader to read records from a log starting from <code>fromTxnId</code>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#openAsyncLogReader-long-">openAsyncLogReader</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fromTxnId</code> - transaction id to start reading from</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>async log reader</dd>
</dl>
</li>
</ul>
<a name="openAsyncLogReader-org.apache.distributedlog.DLSN-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>openAsyncLogReader</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a>&gt;&nbsp;openAsyncLogReader(<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;fromDLSN)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#openAsyncLogReader-org.apache.distributedlog.DLSN-">DistributedLogManager</a></code></span></div>
<div class="block">Open an async log reader to read records from a log starting from <code>fromDLSN</code>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#openAsyncLogReader-org.apache.distributedlog.DLSN-">openAsyncLogReader</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fromDLSN</code> - dlsn to start reading from</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>async log reader</dd>
</dl>
</li>
</ul>
<a name="getAsyncLogReader-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAsyncLogReader</h4>
<pre>public&nbsp;<a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a>&nbsp;getAsyncLogReader(long&nbsp;fromTxnId)
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getAsyncLogReader-long-">getAsyncLogReader</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getAsyncLogReader-org.apache.distributedlog.DLSN-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAsyncLogReader</h4>
<pre>public&nbsp;<a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a>&nbsp;getAsyncLogReader(<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;fromDLSN)
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getAsyncLogReader-org.apache.distributedlog.DLSN-">getAsyncLogReader</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getAsyncLogReaderWithLock-org.apache.distributedlog.DLSN-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAsyncLogReaderWithLock</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a>&gt;&nbsp;getAsyncLogReaderWithLock(<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;fromDLSN)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getAsyncLogReaderWithLock-org.apache.distributedlog.DLSN-">getAsyncLogReaderWithLock</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
</dl>
</li>
</ul>
<a name="getAsyncLogReaderWithLock-org.apache.distributedlog.DLSN-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAsyncLogReaderWithLock</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a>&gt;&nbsp;getAsyncLogReaderWithLock(<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;fromDLSN,
<a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;subscriberId)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getAsyncLogReaderWithLock-org.apache.distributedlog.DLSN-java.lang.String-">DistributedLogManager</a></code></span></div>
<div class="block">Get a log reader with lock starting from <i>fromDLSN</i> and using <i>subscriberId</i>.
If two readers tried to open using same subscriberId, one would succeed, while the other
will be blocked until it gets the lock.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getAsyncLogReaderWithLock-org.apache.distributedlog.DLSN-java.lang.String-">getAsyncLogReaderWithLock</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fromDLSN</code> - start dlsn</dd>
<dd><code>subscriberId</code> - subscriber id</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>async log reader</dd>
</dl>
</li>
</ul>
<a name="getAsyncLogReaderWithLock-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAsyncLogReaderWithLock</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/AsyncLogReader.html" title="interface in org.apache.distributedlog">AsyncLogReader</a>&gt;&nbsp;getAsyncLogReaderWithLock(<a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;subscriberId)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getAsyncLogReaderWithLock-java.lang.String-">DistributedLogManager</a></code></span></div>
<div class="block">Get a log reader using <i>subscriberId</i> with lock. The reader will start reading from
its last commit position recorded in subscription store. If no last commit position found
in subscription store, it would start reading from head of the stream.
<p>If the two readers tried to open using same subscriberId, one would succeed, while the other
will be blocked until it gets the lock.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getAsyncLogReaderWithLock-java.lang.String-">getAsyncLogReaderWithLock</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subscriberId</code> - subscriber id</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>async log reader</dd>
</dl>
</li>
</ul>
<a name="getDLSNNotLessThanTxId-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDLSNNotLessThanTxId</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&gt;&nbsp;getDLSNNotLessThanTxId(long&nbsp;transactionId)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getDLSNNotLessThanTxId-long-">DistributedLogManager</a></code></span></div>
<div class="block">Get the <a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog"><code>DLSN</code></a> of first log record whose transaction id is not less than <code>transactionId</code>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getDLSNNotLessThanTxId-long-">getDLSNNotLessThanTxId</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>transactionId</code> - transaction id</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>dlsn of first log record whose transaction id is not less than transactionId.</dd>
</dl>
</li>
</ul>
<a name="getLastLogRecord--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLastLogRecord</h4>
<pre>public&nbsp;<a href="../../../org/apache/distributedlog/LogRecordWithDLSN.html" title="class in org.apache.distributedlog">LogRecordWithDLSN</a>&nbsp;getLastLogRecord()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLastLogRecord--">DistributedLogManager</a></code></span></div>
<div class="block">Get the last log record in the stream.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLastLogRecord--">getLastLogRecord</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the last log record in the stream</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if a stream cannot be found.</dd>
</dl>
</li>
</ul>
<a name="getFirstTxId--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFirstTxId</h4>
<pre>public&nbsp;long&nbsp;getFirstTxId()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getFirstTxId--">DistributedLogManager</a></code></span></div>
<div class="block">Get the earliest Transaction Id available in the log.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getFirstTxId--">getFirstTxId</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>earliest transaction id</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getLastTxId--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLastTxId</h4>
<pre>public&nbsp;long&nbsp;getLastTxId()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLastTxId--">DistributedLogManager</a></code></span></div>
<div class="block">Get Latest Transaction Id in the log.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLastTxId--">getLastTxId</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>latest transaction id</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getLastDLSN--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLastDLSN</h4>
<pre>public&nbsp;<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;getLastDLSN()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLastDLSN--">DistributedLogManager</a></code></span></div>
<div class="block">Get Latest DLSN in the log.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLastDLSN--">getLastDLSN</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>last dlsn</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getLastLogRecordAsync--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLastLogRecordAsync</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/LogRecordWithDLSN.html" title="class in org.apache.distributedlog">LogRecordWithDLSN</a>&gt;&nbsp;getLastLogRecordAsync()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLastLogRecordAsync--">DistributedLogManager</a></code></span></div>
<div class="block">Get Latest log record with DLSN in the log - async.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLastLogRecordAsync--">getLastLogRecordAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>latest log record with DLSN</dd>
</dl>
</li>
</ul>
<a name="getLastTxIdAsync--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLastTxIdAsync</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;getLastTxIdAsync()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLastTxIdAsync--">DistributedLogManager</a></code></span></div>
<div class="block">Get Latest Transaction Id in the log - async.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLastTxIdAsync--">getLastTxIdAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>latest transaction id</dd>
</dl>
</li>
</ul>
<a name="getFirstDLSNAsync--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFirstDLSNAsync</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&gt;&nbsp;getFirstDLSNAsync()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getFirstDLSNAsync--">DistributedLogManager</a></code></span></div>
<div class="block">Get first DLSN in the log.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getFirstDLSNAsync--">getFirstDLSNAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>first dlsn in the stream</dd>
</dl>
</li>
</ul>
<a name="getLastDLSNAsync--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLastDLSNAsync</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&gt;&nbsp;getLastDLSNAsync()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLastDLSNAsync--">DistributedLogManager</a></code></span></div>
<div class="block">Get Latest DLSN in the log - async.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLastDLSNAsync--">getLastDLSNAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>latest transaction id</dd>
</dl>
</li>
</ul>
<a name="getLogRecordCount--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLogRecordCount</h4>
<pre>public&nbsp;long&nbsp;getLogRecordCount()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLogRecordCount--">DistributedLogManager</a></code></span></div>
<div class="block">Get the number of log records in the active portion of the log.
<p>Any log segments that have already been truncated will not be included.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLogRecordCount--">getLogRecordCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>number of log records</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getLogRecordCountAsync-org.apache.distributedlog.DLSN-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLogRecordCountAsync</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;getLogRecordCountAsync(<a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog">DLSN</a>&nbsp;beginDLSN)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLogRecordCountAsync-org.apache.distributedlog.DLSN-">DistributedLogManager</a></code></span></div>
<div class="block">Get the number of log records in the active portion of the log - async.
<p>Any log segments that have already been truncated will not be included</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getLogRecordCountAsync-org.apache.distributedlog.DLSN-">getLogRecordCountAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>future number of log records</dd>
</dl>
</li>
</ul>
<a name="recover--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>recover</h4>
<pre>public&nbsp;void&nbsp;recover()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#recover--">DistributedLogManager</a></code></span></div>
<div class="block">Run recovery on the log.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#recover--">recover</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="isEndOfStreamMarked--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isEndOfStreamMarked</h4>
<pre>public&nbsp;boolean&nbsp;isEndOfStreamMarked()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#isEndOfStreamMarked--">DistributedLogManager</a></code></span></div>
<div class="block">Check if an end of stream marker was added to the stream
A stream with an end of stream marker cannot be appended to.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#isEndOfStreamMarked--">isEndOfStreamMarked</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the marker was added to the stream, false otherwise</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="delete--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>delete</h4>
<pre>public&nbsp;void&nbsp;delete()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#delete--">DistributedLogManager</a></code></span></div>
<div class="block">Delete the log.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#delete--">delete</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if the deletion fails</dd>
</dl>
</li>
</ul>
<a name="purgeLogsOlderThan-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>purgeLogsOlderThan</h4>
<pre>public&nbsp;void&nbsp;purgeLogsOlderThan(long&nbsp;minTxIdToKeep)
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#purgeLogsOlderThan-long-">DistributedLogManager</a></code></span></div>
<div class="block">The DistributedLogManager may archive/purge any logs for transactionId
less than or equal to minImageTxId.
This is to be used only when the client explicitly manages deletion. If
the cleanup policy is based on sliding time window, then this method need
not be called.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#purgeLogsOlderThan-long-">purgeLogsOlderThan</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>minTxIdToKeep</code> - the earliest txid that must be retained</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if purging fails</dd>
</dl>
</li>
</ul>
<a name="getSubscriptionsStore--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSubscriptionsStore</h4>
<pre>public&nbsp;<a href="../../../org/apache/distributedlog/subscription/SubscriptionsStore.html" title="interface in org.apache.distributedlog.subscription">SubscriptionsStore</a>&nbsp;getSubscriptionsStore()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getSubscriptionsStore--">DistributedLogManager</a></code></span></div>
<div class="block">Get the subscriptions store provided by the distributedlog manager.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#getSubscriptionsStore--">getSubscriptionsStore</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>subscriptions store manages subscriptions for current stream.</dd>
</dl>
</li>
</ul>
<a name="close--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre>public&nbsp;void&nbsp;close()
throws <a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/Closeable.html?is-external=true#close--" title="class or interface in java.io">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://download.oracle.com/javase/6/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a></code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="asyncClose--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>asyncClose</h4>
<pre>public&nbsp;com.twitter.util.Future&lt;<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;asyncClose()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#asyncClose--">DistributedLogManager</a></code></span></div>
<div class="block">Closes this source and releases any system resources associated
with it. If the source is already closed then invoking this
method has no effect.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/distributedlog/DistributedLogManager.html#asyncClose--">asyncClose</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog">DistributedLogManager</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>future representing the close result.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/DistributedLogManagerImpl.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/distributedlog/DistributedLogManager.html" title="interface in org.apache.distributedlog"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../org/apache/distributedlog/DLSN.html" title="class in org.apache.distributedlog"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/distributedlog/DistributedLogManagerImpl.html" target="_top">Frames</a></li>
<li><a href="DistributedLogManagerImpl.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&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>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2016-2018 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.</small></p>
</body>
</html>