blob: 8f528f9d6f5ede7525e465e4e9b32726b386cb3b [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 (1.8.0_40) on Thu Jul 20 13:15:17 PDT 2017 -->
<title>Watermark (gobblin-api 0.11.0 API)</title>
<meta name="date" content="2017-07-20">
<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="Watermark (gobblin-api 0.11.0 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract 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="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="../../../gobblin/source/extractor/StreamingExtractor.html" title="interface in gobblin.source.extractor"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../gobblin/source/extractor/WatermarkInterval.html" title="class in gobblin.source.extractor"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?gobblin/source/extractor/Watermark.html" target="_top">Frames</a></li>
<li><a href="Watermark.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>Constr&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>Constr&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">gobblin.source.extractor</div>
<h2 title="Interface Watermark" class="title">Interface Watermark</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Known Subinterfaces:</dt>
<dd><a href="../../../gobblin/source/extractor/CheckpointableWatermark.html" title="interface in gobblin.source.extractor">CheckpointableWatermark</a>, <a href="../../../gobblin/source/extractor/ComparableWatermark.html" title="interface in gobblin.source.extractor">ComparableWatermark</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">Watermark</span></pre>
<div class="block">A <a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor"><code>Watermark</code></a> represents a checkpoint in data processing, and indicates that all data up to specific point has
been pulled from some source. Implementations of this interface are responsible for defining data structures in order
to track this state.
<p>
A <a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor"><code>Watermark</code></a> will be serialized in <a href="../../../gobblin/source/workunit/WorkUnit.html" title="class in gobblin.source.workunit"><code>WorkUnit</code></a>s and
<a href="../../../gobblin/configuration/WorkUnitState.html" title="class in gobblin.configuration"><code>WorkUnitState</code></a>s. The <a href="../../../gobblin/source/extractor/Watermark.html#toJson--"><code>toJson()</code></a> method will be used to serialize the
<a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor"><code>Watermark</code></a> into a <code>JsonElement</code>.
</p></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== 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="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract 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>short</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../gobblin/source/extractor/Watermark.html#calculatePercentCompletion-gobblin.source.extractor.Watermark-gobblin.source.extractor.Watermark-">calculatePercentCompletion</a></span>(<a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor">Watermark</a>&nbsp;lowWatermark,
<a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor">Watermark</a>&nbsp;highWatermark)</code>
<div class="block">This method must return a value from [0, 100].</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>com.google.gson.JsonElement</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../gobblin/source/extractor/Watermark.html#toJson--">toJson</a></span>()</code>
<div class="block">Convert this <a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor"><code>Watermark</code></a> into a <code>JsonElement</code>.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="toJson--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toJson</h4>
<pre>com.google.gson.JsonElement&nbsp;toJson()</pre>
<div class="block">Convert this <a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor"><code>Watermark</code></a> into a <code>JsonElement</code>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>JsonElement</code> representing this <a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor"><code>Watermark</code></a>.</dd>
</dl>
</li>
</ul>
<a name="calculatePercentCompletion-gobblin.source.extractor.Watermark-gobblin.source.extractor.Watermark-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>calculatePercentCompletion</h4>
<pre>short&nbsp;calculatePercentCompletion(<a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor">Watermark</a>&nbsp;lowWatermark,
<a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor">Watermark</a>&nbsp;highWatermark)</pre>
<div class="block">This method must return a value from [0, 100]. The value should correspond to a percent completion. Given two
<a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor"><code>Watermark</code></a> values, where the lowWatermark is the starting point, and the highWatermark is the goal, what
is the percent completion of this <a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor"><code>Watermark</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lowWatermark</code> - is the starting <a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor"><code>Watermark</code></a> for the percent completion calculation. So if this.equals(lowWatermark) is true, this method should return 0.</dd>
<dd><code>highWatermark</code> - is the end value <a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor"><code>Watermark</code></a> for the percent completion calculation. So if this.equals(highWatermark) is true, this method should return 100.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a value from [0, 100] representing the percentage completion of this <a href="../../../gobblin/source/extractor/Watermark.html" title="interface in gobblin.source.extractor"><code>Watermark</code></a>.</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="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="../../../gobblin/source/extractor/StreamingExtractor.html" title="interface in gobblin.source.extractor"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../gobblin/source/extractor/WatermarkInterval.html" title="class in gobblin.source.extractor"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?gobblin/source/extractor/Watermark.html" target="_top">Frames</a></li>
<li><a href="Watermark.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>Constr&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>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>