blob: c5e7c5e9070b366c79725861f1ce03b57e3d3952 [file] [log] [blame]
<!DOCTYPE html >
<html>
<head>
<title>api - io.gearpump.streaming.transaction.api</title>
<meta name="description" content="api - io.gearpump.streaming.transaction.api" />
<meta name="keywords" content="api io.gearpump.streaming.transaction.api" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<link href="../../../../../lib/template.css" media="screen" type="text/css" rel="stylesheet" />
<link href="../../../../../lib/diagrams.css" media="screen" type="text/css" rel="stylesheet" id="diagrams-css" />
<script type="text/javascript" src="../../../../../lib/jquery.js" id="jquery-js"></script>
<script type="text/javascript" src="../../../../../lib/jquery-ui.js"></script>
<script type="text/javascript" src="../../../../../lib/template.js"></script>
<script type="text/javascript" src="../../../../../lib/tools.tooltip.js"></script>
<script type="text/javascript">
if(top === self) {
var url = '../../../../../index.html';
var hash = 'io.gearpump.streaming.transaction.api.package';
var anchor = window.location.hash;
var anchor_opt = '';
if (anchor.length >= 1)
anchor_opt = '@' + anchor.substring(1);
window.location.href = url + '#' + hash + anchor_opt;
}
</script>
</head>
<body class="value">
<div id="definition">
<img alt="Package" src="../../../../../lib/package_big.png" />
<p id="owner"><a href="../../../../package.html" class="extype" name="io">io</a>.<a href="../../../package.html" class="extype" name="io.gearpump">gearpump</a>.<a href="../../package.html" class="extype" name="io.gearpump.streaming">streaming</a>.<a href="../package.html" class="extype" name="io.gearpump.streaming.transaction">transaction</a></p>
<h1>api</h1><span class="permalink">
<a href="../../../../../index.html#io.gearpump.streaming.transaction.api.package" title="Permalink" target="_top">
<img src="../../../../../lib/permalink.png" alt="Permalink" />
</a>
</span>
</div>
<h4 id="signature" class="signature">
<span class="modifier_kind">
<span class="modifier"></span>
<span class="kind">package</span>
</span>
<span class="symbol">
<span class="name">api</span>
</span>
</h4>
<div id="comment" class="fullcommenttop"></div>
<div id="mbrsel">
<div id="textfilter"><span class="pre"></span><span class="input"><input id="mbrsel-input" type="text" accesskey="/" /></span><span class="post"></span></div>
<div id="visbl">
<span class="filtertype">Visibility</span>
<ol><li class="public in"><span>Public</span></li><li class="all out"><span>All</span></li></ol>
</div>
</div>
<div id="template">
<div id="allMembers">
<div id="types" class="types members">
<h3>Type Members</h3>
<ol><li name="io.gearpump.streaming.transaction.api.CheckpointStore" visbl="pub" data-isabs="true" fullComment="no" group="Ungrouped">
<a id="CheckpointStoreextendsAnyRef"></a>
<a id="CheckpointStore:CheckpointStore"></a>
<h4 class="signature">
<span class="modifier_kind">
<span class="modifier"></span>
<span class="kind">trait</span>
</span>
<span class="symbol">
<a href="CheckpointStore.html"><span class="name">CheckpointStore</span></a><span class="result"> extends <span class="extype" name="scala.AnyRef">AnyRef</span></span>
</span>
</h4><span class="permalink">
<a href="../../../../../index.html#io.gearpump.streaming.transaction.api.package@CheckpointStoreextendsAnyRef" title="Permalink" target="_top">
<img src="../../../../../lib/permalink.png" alt="Permalink" />
</a>
</span>
<p class="shortcomment cmt">CheckpointStore persistently stores mapping of timestamp to checkpoint
it's possible that two checkpoints have the same timestamp
CheckpointStore needs to handle this either during write or read
</p>
</li><li name="io.gearpump.streaming.transaction.api.CheckpointStoreFactory" visbl="pub" data-isabs="true" fullComment="no" group="Ungrouped">
<a id="CheckpointStoreFactoryextendsSerializable"></a>
<a id="CheckpointStoreFactory:CheckpointStoreFactory"></a>
<h4 class="signature">
<span class="modifier_kind">
<span class="modifier"></span>
<span class="kind">trait</span>
</span>
<span class="symbol">
<a href="CheckpointStoreFactory.html"><span class="name">CheckpointStoreFactory</span></a><span class="result"> extends <span class="extype" name="java.io.Serializable">Serializable</span></span>
</span>
</h4><span class="permalink">
<a href="../../../../../index.html#io.gearpump.streaming.transaction.api.package@CheckpointStoreFactoryextendsSerializable" title="Permalink" target="_top">
<img src="../../../../../lib/permalink.png" alt="Permalink" />
</a>
</span>
</li><li name="io.gearpump.streaming.transaction.api.MessageDecoder" visbl="pub" data-isabs="true" fullComment="no" group="Ungrouped">
<a id="MessageDecoderextendsSerializable"></a>
<a id="MessageDecoder:MessageDecoder"></a>
<h4 class="signature">
<span class="modifier_kind">
<span class="modifier"></span>
<span class="kind">trait</span>
</span>
<span class="symbol">
<a href="MessageDecoder.html"><span class="name">MessageDecoder</span></a><span class="result"> extends <span class="extype" name="java.io.Serializable">Serializable</span></span>
</span>
</h4><span class="permalink">
<a href="../../../../../index.html#io.gearpump.streaming.transaction.api.package@MessageDecoderextendsSerializable" title="Permalink" target="_top">
<img src="../../../../../lib/permalink.png" alt="Permalink" />
</a>
</span>
<p class="shortcomment cmt">MessageDecoder decodes raw bytes to Message
It is usually written by end user and
passed into TimeReplayableSource
</p>
</li><li name="io.gearpump.streaming.transaction.api.MessageFilter" visbl="pub" data-isabs="true" fullComment="no" group="Ungrouped">
<a id="MessageFilterextendsAnyRef"></a>
<a id="MessageFilter:MessageFilter"></a>
<h4 class="signature">
<span class="modifier_kind">
<span class="modifier"></span>
<span class="kind">trait</span>
</span>
<span class="symbol">
<a href="MessageFilter.html"><span class="name">MessageFilter</span></a><span class="result"> extends <span class="extype" name="scala.AnyRef">AnyRef</span></span>
</span>
</h4><span class="permalink">
<a href="../../../../../index.html#io.gearpump.streaming.transaction.api.package@MessageFilterextendsAnyRef" title="Permalink" target="_top">
<img src="../../../../../lib/permalink.png" alt="Permalink" />
</a>
</span>
<p class="shortcomment cmt">filter offsets and store the mapping from timestamp to offset
</p>
</li><li name="io.gearpump.streaming.transaction.api.OffsetManager" visbl="pub" data-isabs="true" fullComment="no" group="Ungrouped">
<a id="OffsetManagerextendsMessageFilterwithOffsetTimeStampResolver"></a>
<a id="OffsetManager:OffsetManager"></a>
<h4 class="signature">
<span class="modifier_kind">
<span class="modifier"></span>
<span class="kind">trait</span>
</span>
<span class="symbol">
<a href="OffsetManager.html"><span class="name">OffsetManager</span></a><span class="result"> extends <a href="MessageFilter.html" class="extype" name="io.gearpump.streaming.transaction.api.MessageFilter">MessageFilter</a> with <a href="OffsetTimeStampResolver.html" class="extype" name="io.gearpump.streaming.transaction.api.OffsetTimeStampResolver">OffsetTimeStampResolver</a></span>
</span>
</h4><span class="permalink">
<a href="../../../../../index.html#io.gearpump.streaming.transaction.api.package@OffsetManagerextendsMessageFilterwithOffsetTimeStampResolver" title="Permalink" target="_top">
<img src="../../../../../lib/permalink.png" alt="Permalink" />
</a>
</span>
<p class="shortcomment cmt">manages message's offset on TimeReplayableSource and timestamp
</p>
</li><li name="io.gearpump.streaming.transaction.api.OffsetStorage" visbl="pub" data-isabs="true" fullComment="no" group="Ungrouped">
<a id="OffsetStorageextendsAnyRef"></a>
<a id="OffsetStorage:OffsetStorage"></a>
<h4 class="signature">
<span class="modifier_kind">
<span class="modifier"></span>
<span class="kind">trait</span>
</span>
<span class="symbol">
<a href="OffsetStorage.html"><span class="name">OffsetStorage</span></a><span class="result"> extends <span class="extype" name="scala.AnyRef">AnyRef</span></span>
</span>
</h4><span class="permalink">
<a href="../../../../../index.html#io.gearpump.streaming.transaction.api.package@OffsetStorageextendsAnyRef" title="Permalink" target="_top">
<img src="../../../../../lib/permalink.png" alt="Permalink" />
</a>
</span>
<p class="shortcomment cmt">OffsetStorage stores the mapping from TimeStamp to Offset
</p>
</li><li name="io.gearpump.streaming.transaction.api.OffsetStorageFactory" visbl="pub" data-isabs="true" fullComment="no" group="Ungrouped">
<a id="OffsetStorageFactoryextendsSerializable"></a>
<a id="OffsetStorageFactory:OffsetStorageFactory"></a>
<h4 class="signature">
<span class="modifier_kind">
<span class="modifier"></span>
<span class="kind">trait</span>
</span>
<span class="symbol">
<a href="OffsetStorageFactory.html"><span class="name">OffsetStorageFactory</span></a><span class="result"> extends <span class="extype" name="java.io.Serializable">Serializable</span></span>
</span>
</h4><span class="permalink">
<a href="../../../../../index.html#io.gearpump.streaming.transaction.api.package@OffsetStorageFactoryextendsSerializable" title="Permalink" target="_top">
<img src="../../../../../lib/permalink.png" alt="Permalink" />
</a>
</span>
</li><li name="io.gearpump.streaming.transaction.api.OffsetTimeStampResolver" visbl="pub" data-isabs="true" fullComment="no" group="Ungrouped">
<a id="OffsetTimeStampResolverextendsAnyRef"></a>
<a id="OffsetTimeStampResolver:OffsetTimeStampResolver"></a>
<h4 class="signature">
<span class="modifier_kind">
<span class="modifier"></span>
<span class="kind">trait</span>
</span>
<span class="symbol">
<a href="OffsetTimeStampResolver.html"><span class="name">OffsetTimeStampResolver</span></a><span class="result"> extends <span class="extype" name="scala.AnyRef">AnyRef</span></span>
</span>
</h4><span class="permalink">
<a href="../../../../../index.html#io.gearpump.streaming.transaction.api.package@OffsetTimeStampResolverextendsAnyRef" title="Permalink" target="_top">
<img src="../../../../../lib/permalink.png" alt="Permalink" />
</a>
</span>
<p class="shortcomment cmt">resolve timestamp to offset by look up the underlying storage
</p>
</li><li name="io.gearpump.streaming.transaction.api.TimeReplayableSource" visbl="pub" data-isabs="true" fullComment="yes" group="Ungrouped">
<a id="TimeReplayableSourceextendsDataSource"></a>
<a id="TimeReplayableSource:TimeReplayableSource"></a>
<h4 class="signature">
<span class="modifier_kind">
<span class="modifier"></span>
<span class="kind">trait</span>
</span>
<span class="symbol">
<a href="TimeReplayableSource.html"><span class="name">TimeReplayableSource</span></a><span class="result"> extends <a href="../../source/DataSource.html" class="extype" name="io.gearpump.streaming.source.DataSource">DataSource</a></span>
</span>
</h4><span class="permalink">
<a href="../../../../../index.html#io.gearpump.streaming.transaction.api.package@TimeReplayableSourceextendsDataSource" title="Permalink" target="_top">
<img src="../../../../../lib/permalink.png" alt="Permalink" />
</a>
</span>
<p class="shortcomment cmt">AT-LEAST-ONCE API</p><div class="fullcomment"><div class="comment cmt"><p>AT-LEAST-ONCE API</p><p>subclass should be able to replay messages on recovery from the time
when an application crashed
</p></div></div>
</li><li name="io.gearpump.streaming.transaction.api.TimeStampFilter" visbl="pub" data-isabs="true" fullComment="no" group="Ungrouped">
<a id="TimeStampFilterextendsSerializable"></a>
<a id="TimeStampFilter:TimeStampFilter"></a>
<h4 class="signature">
<span class="modifier_kind">
<span class="modifier"></span>
<span class="kind">trait</span>
</span>
<span class="symbol">
<a href="TimeStampFilter.html"><span class="name">TimeStampFilter</span></a><span class="result"> extends <span class="extype" name="java.io.Serializable">Serializable</span></span>
</span>
</h4><span class="permalink">
<a href="../../../../../index.html#io.gearpump.streaming.transaction.api.package@TimeStampFilterextendsSerializable" title="Permalink" target="_top">
<img src="../../../../../lib/permalink.png" alt="Permalink" />
</a>
</span>
<p class="shortcomment cmt">TimeStampFilter filters message comparing its TimeStamp with the predicate.</p>
</li></ol>
</div>
<div id="values" class="values members">
<h3>Value Members</h3>
<ol><li name="io.gearpump.streaming.transaction.api.OffsetStorage" visbl="pub" data-isabs="false" fullComment="no" group="Ungrouped">
<a id="OffsetStorage"></a>
<a id="OffsetStorage:OffsetStorage"></a>
<h4 class="signature">
<span class="modifier_kind">
<span class="modifier"></span>
<span class="kind">object</span>
</span>
<span class="symbol">
<a href="OffsetStorage$.html"><span class="name">OffsetStorage</span></a>
</span>
</h4><span class="permalink">
<a href="../../../../../index.html#io.gearpump.streaming.transaction.api.package@OffsetStorage" title="Permalink" target="_top">
<img src="../../../../../lib/permalink.png" alt="Permalink" />
</a>
</span>
</li></ol>
</div>
</div>
<div id="inheritedMembers">
</div>
<div id="groupedMembers">
<div class="group" name="Ungrouped">
<h3>Ungrouped</h3>
</div>
</div>
</div>
<div id="tooltip"></div>
<div id="footer"> </div>
</body>
</html>