blob: 5f7fad2dd5e0531f6cd304845e0296acabf718d0 [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>ScheduledChore (Apache HBase 3.0.0-SNAPSHOT API)</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="ScheduledChore (Apache HBase 3.0.0-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":6,"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};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract 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/ScheduledChore.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/hadoop/hbase/RetryImmediatelyException.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.ChoreServicer.html" title="interface in org.apache.hadoop.hbase"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/hadoop/hbase/ScheduledChore.html" target="_top">Frames</a></li>
<li><a href="ScheduledChore.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><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.hadoop.hbase</div>
<h2 title="Class ScheduledChore" class="title">Class ScheduledChore</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/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.hadoop.hbase.ScheduledChore</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../org/apache/hadoop/hbase/master/balancer/BalancerChore.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerChore</a>, <a href="../../../../org/apache/hadoop/hbase/master/janitor/CatalogJanitor.html" title="class in org.apache.hadoop.hbase.master.janitor">CatalogJanitor</a>, <a href="../../../../org/apache/hadoop/hbase/master/cleaner/CleanerChore.html" title="class in org.apache.hadoop.hbase.master.cleaner">CleanerChore</a>, <a href="../../../../org/apache/hadoop/hbase/master/balancer/ClusterStatusChore.html" title="class in org.apache.hadoop.hbase.master.balancer">ClusterStatusChore</a>, <a href="../../../../org/apache/hadoop/hbase/master/ClusterStatusPublisher.html" title="class in org.apache.hadoop.hbase.master">ClusterStatusPublisher</a>, <a href="../../../../org/apache/hadoop/hbase/regionserver/CompactedHFilesDischarger.html" title="class in org.apache.hadoop.hbase.regionserver">CompactedHFilesDischarger</a>, <a href="../../../../org/apache/hadoop/hbase/ExecutorStatusChore.html" title="class in org.apache.hadoop.hbase">ExecutorStatusChore</a>, <a href="../../../../org/apache/hadoop/hbase/quotas/FileSystemUtilizationChore.html" title="class in org.apache.hadoop.hbase.quotas">FileSystemUtilizationChore</a>, <a href="../../../../org/apache/hadoop/hbase/master/HbckChore.html" title="class in org.apache.hadoop.hbase.master">HbckChore</a>, <a href="../../../../org/apache/hadoop/hbase/HealthCheckChore.html" title="class in org.apache.hadoop.hbase">HealthCheckChore</a>, <a href="../../../../org/apache/hadoop/hbase/regionserver/HeapMemoryManager.HeapMemoryTunerChore.html" title="class in org.apache.hadoop.hbase.regionserver">HeapMemoryManager.HeapMemoryTunerChore</a>, <a href="../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.CompactionChecker.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer.CompactionChecker</a>, <a href="../../../../org/apache/hadoop/hbase/regionserver/HRegionServer.PeriodicMemStoreFlusher.html" title="class in org.apache.hadoop.hbase.regionserver">HRegionServer.PeriodicMemStoreFlusher</a>, <a href="../../../../org/apache/hadoop/hbase/mob/MobFileCleanerChore.html" title="class in org.apache.hadoop.hbase.mob">MobFileCleanerChore</a>, <a href="../../../../org/apache/hadoop/hbase/mob/MobFileCompactionChore.html" title="class in org.apache.hadoop.hbase.mob">MobFileCompactionChore</a>, <a href="../../../../org/apache/hadoop/hbase/quotas/QuotaCache.QuotaRefresherChore.html" title="class in org.apache.hadoop.hbase.quotas">QuotaCache.QuotaRefresherChore</a>, <a href="../../../../org/apache/hadoop/hbase/quotas/QuotaObserverChore.html" title="class in org.apache.hadoop.hbase.quotas">QuotaObserverChore</a>, <a href="../../../../org/apache/hadoop/hbase/master/normalizer/RegionNormalizerChore.html" title="class in org.apache.hadoop.hbase.master.normalizer">RegionNormalizerChore</a>, <a href="../../../../org/apache/hadoop/hbase/quotas/RegionSizeReportingChore.html" title="class in org.apache.hadoop.hbase.quotas">RegionSizeReportingChore</a>, <a href="../../../../org/apache/hadoop/hbase/master/RegionsRecoveryChore.html" title="class in org.apache.hadoop.hbase.master">RegionsRecoveryChore</a>, <a href="../../../../org/apache/hadoop/hbase/replication/regionserver/Replication.ReplicationStatisticsChore.html" title="class in org.apache.hadoop.hbase.replication.regionserver">Replication.ReplicationStatisticsChore</a>, <a href="../../../../org/apache/hadoop/hbase/master/cleaner/ReplicationBarrierCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner">ReplicationBarrierCleaner</a>, <a href="../../../../org/apache/hadoop/hbase/replication/ReplicationSinkServiceImpl.ReplicationStatisticsChore.html" title="class in org.apache.hadoop.hbase.replication">ReplicationSinkServiceImpl.ReplicationStatisticsChore</a>, <a href="../../../../org/apache/hadoop/hbase/master/ServerManager.FlushedSequenceIdFlusher.html" title="class in org.apache.hadoop.hbase.master">ServerManager.FlushedSequenceIdFlusher</a>, <a href="../../../../org/apache/hadoop/hbase/namequeues/SlowLogTableOpsChore.html" title="class in org.apache.hadoop.hbase.namequeues">SlowLogTableOpsChore</a>, <a href="../../../../org/apache/hadoop/hbase/master/cleaner/SnapshotCleanerChore.html" title="class in org.apache.hadoop.hbase.master.cleaner">SnapshotCleanerChore</a>, <a href="../../../../org/apache/hadoop/hbase/quotas/SnapshotQuotaObserverChore.html" title="class in org.apache.hadoop.hbase.quotas">SnapshotQuotaObserverChore</a>, <a href="../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaRefresherChore.html" title="class in org.apache.hadoop.hbase.quotas">SpaceQuotaRefresherChore</a>, <a href="../../../../org/apache/hadoop/hbase/master/SplitLogManager.TimeoutMonitor.html" title="class in org.apache.hadoop.hbase.master">SplitLogManager.TimeoutMonitor</a>, <a href="../../../../org/apache/hadoop/hbase/regionserver/StorefileRefresherChore.html" title="class in org.apache.hadoop.hbase.regionserver">StorefileRefresherChore</a></dd>
</dl>
<hr>
<br>
<pre>@InterfaceAudience.Public
public abstract class <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.43">ScheduledChore</a>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a></pre>
<div class="block">ScheduledChore is a task performed on a period in hbase. ScheduledChores become active once
scheduled with a <a href="../../../../org/apache/hadoop/hbase/ChoreService.html" title="class in org.apache.hadoop.hbase"><code>ChoreService</code></a> via <a href="../../../../org/apache/hadoop/hbase/ChoreService.html#scheduleChore-org.apache.hadoop.hbase.ScheduledChore-"><code>ChoreService.scheduleChore(ScheduledChore)</code></a>. The
chore is run in a <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ScheduledThreadPoolExecutor.html?is-external=true" title="class or interface in java.util.concurrent"><code>ScheduledThreadPoolExecutor</code></a> and competes with other ScheduledChores for
access to the threads in the core thread pool. If an unhandled exception occurs, the chore
cancellation is logged. Implementers should consider whether or not the Chore will be able to
execute within the defined period. It is bad practice to define a ScheduledChore whose execution
time exceeds its period since it will try to hog one of the threads in the <a href="../../../../org/apache/hadoop/hbase/ChoreService.html" title="class in org.apache.hadoop.hbase"><code>ChoreService</code></a>'s
thread pool.
<p>
Don't subclass ScheduledChore if the task relies on being woken up for something to do, such as
an entry being added to a queue, etc.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) static interface&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.ChoreServicer.html" title="interface in org.apache.hadoop.hbase">ScheduledChore.ChoreServicer</a></span></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../../org/apache/hadoop/hbase/ScheduledChore.ChoreServicer.html" title="interface in org.apache.hadoop.hbase">ScheduledChore.ChoreServicer</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#choreServicer">choreServicer</a></span></code>
<div class="block">Interface to the ChoreService that this ScheduledChore is scheduled with.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#DEFAULT_INITIAL_DELAY">DEFAULT_INITIAL_DELAY</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#DEFAULT_TIME_UNIT">DEFAULT_TIME_UNIT</a></span></code>
<div class="block">Default values for scheduling parameters should they be excluded during construction</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#initialChoreComplete">initialChoreComplete</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#initialDelay">initialDelay</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static org.slf4j.Logger</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#LOG">LOG</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/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/hadoop/hbase/ScheduledChore.html#name">name</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#period">period</a></span></code>
<div class="block">Scheduling parameters.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../../org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#stopper">stopper</a></span></code>
<div class="block">A means by which a ScheduledChore can be stopped.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#timeOfLastRun">timeOfLastRun</a></span></code>
<div class="block">Variables that encapsulate the meaningful state information</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#timeOfThisRun">timeOfThisRun</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#timeUnit">timeUnit</a></span></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ======== 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="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#ScheduledChore--">ScheduledChore</a></span>()</code>
<div class="block">This constructor is for test only.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#ScheduledChore-java.lang.String-org.apache.hadoop.hbase.Stoppable-int-">ScheduledChore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
<a href="../../../../org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a>&nbsp;stopper,
int&nbsp;period)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#ScheduledChore-java.lang.String-org.apache.hadoop.hbase.Stoppable-int-long-">ScheduledChore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
<a href="../../../../org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a>&nbsp;stopper,
int&nbsp;period,
long&nbsp;initialDelay)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#ScheduledChore-java.lang.String-org.apache.hadoop.hbase.Stoppable-int-long-java.util.concurrent.TimeUnit-">ScheduledChore</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
<a href="../../../../org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a>&nbsp;stopper,
int&nbsp;period,
long&nbsp;initialDelay,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</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="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract 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>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#cancel--">cancel</a></span>()</code>&nbsp;</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/hadoop/hbase/ScheduledChore.html#cancel-boolean-">cancel</a></span>(boolean&nbsp;mayInterruptIfRunning)</code>&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#chore--">chore</a></span>()</code>
<div class="block">The task to execute on each scheduled execution of the Chore</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#choreForTesting--">choreForTesting</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#cleanup--">cleanup</a></span>()</code>
<div class="block">Override to run cleanup tasks when the Chore encounters an error and must stop running</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>(package private) <a href="../../../../org/apache/hadoop/hbase/ScheduledChore.ChoreServicer.html" title="interface in org.apache.hadoop.hbase">ScheduledChore.ChoreServicer</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#getChoreServicer--">getChoreServicer</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#getInitialDelay--">getInitialDelay</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>private double</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#getMaximumAllowedTimeBetweenRuns--">getMaximumAllowedTimeBetweenRuns</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/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/hadoop/hbase/ScheduledChore.html#getName--">getName</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#getPeriod--">getPeriod</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#getStopper--">getStopper</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>(package private) long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#getTimeBetweenRuns--">getTimeBetweenRuns</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>(package private) long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#getTimeOfLastRun--">getTimeOfLastRun</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>(package private) long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#getTimeOfThisRun--">getTimeOfThisRun</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#getTimeUnit--">getTimeUnit</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#initialChore--">initialChore</a></span>()</code>
<div class="block">Override to run a task before we start looping.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#isInitialChoreComplete--">isInitialChoreComplete</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#isScheduled--">isScheduled</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>private boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#isValidTime-long-">isValidTime</a></span>(long&nbsp;time)</code>&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>private boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#missedStartTime--">missedStartTime</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#onChoreMissedStartTime--">onChoreMissedStartTime</a></span>()</code>
<div class="block">Notify the ChoreService that this chore has missed its start time.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#run--">run</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>(package private) void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#setChoreServicer-org.apache.hadoop.hbase.ScheduledChore.ChoreServicer-">setChoreServicer</a></span>(<a href="../../../../org/apache/hadoop/hbase/ScheduledChore.ChoreServicer.html" title="interface in org.apache.hadoop.hbase">ScheduledChore.ChoreServicer</a>&nbsp;service)</code>&nbsp;</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/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/hadoop/hbase/ScheduledChore.html#toString--">toString</a></span>()</code>
<div class="block">A summation of this chore in human readable format.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#triggerNow--">triggerNow</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.html#updateTimeTrackingBeforeRun--">updateTimeTrackingBeforeRun</a></span>()</code>
<div class="block">Update our time tracking members.</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="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/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">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="LOG">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOG</h4>
<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.44">LOG</a></pre>
</li>
</ul>
<a name="name">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>name</h4>
<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.46">name</a></pre>
</li>
</ul>
<a name="DEFAULT_TIME_UNIT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DEFAULT_TIME_UNIT</h4>
<pre>private static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a> <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.51">DEFAULT_TIME_UNIT</a></pre>
<div class="block">Default values for scheduling parameters should they be excluded during construction</div>
</li>
</ul>
<a name="DEFAULT_INITIAL_DELAY">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DEFAULT_INITIAL_DELAY</h4>
<pre>private static final&nbsp;long <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.52">DEFAULT_INITIAL_DELAY</a></pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.hadoop.hbase.ScheduledChore.DEFAULT_INITIAL_DELAY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="period">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>period</h4>
<pre>private final&nbsp;int <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.57">period</a></pre>
<div class="block">Scheduling parameters. Used by ChoreService when scheduling the chore to run periodically</div>
</li>
</ul>
<a name="timeUnit">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>timeUnit</h4>
<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a> <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.58">timeUnit</a></pre>
</li>
</ul>
<a name="initialDelay">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialDelay</h4>
<pre>private final&nbsp;long <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.59">initialDelay</a></pre>
</li>
</ul>
<a name="choreServicer">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>choreServicer</h4>
<pre>private&nbsp;<a href="../../../../org/apache/hadoop/hbase/ScheduledChore.ChoreServicer.html" title="interface in org.apache.hadoop.hbase">ScheduledChore.ChoreServicer</a> <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.65">choreServicer</a></pre>
<div class="block">Interface to the ChoreService that this ScheduledChore is scheduled with. null if the chore is
not scheduled.</div>
</li>
</ul>
<a name="timeOfLastRun">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>timeOfLastRun</h4>
<pre>private&nbsp;long <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.70">timeOfLastRun</a></pre>
<div class="block">Variables that encapsulate the meaningful state information</div>
</li>
</ul>
<a name="timeOfThisRun">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>timeOfThisRun</h4>
<pre>private&nbsp;long <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.71">timeOfThisRun</a></pre>
</li>
</ul>
<a name="initialChoreComplete">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialChoreComplete</h4>
<pre>private&nbsp;boolean <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.72">initialChoreComplete</a></pre>
</li>
</ul>
<a name="stopper">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>stopper</h4>
<pre>private final&nbsp;<a href="../../../../org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a> <a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.80">stopper</a></pre>
<div class="block">A means by which a ScheduledChore can be stopped. Once a chore recognizes that it has been
stopped, it will cancel itself. This is particularly useful in the case where a single stopper
instance is given to multiple chores. In such a case, a single <a href="../../../../org/apache/hadoop/hbase/Stoppable.html#stop-java.lang.String-"><code>Stoppable.stop(String)</code></a>
command can cause many chores to stop together.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="ScheduledChore--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ScheduledChore</h4>
<pre>@InterfaceAudience.Private
protected&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.120">ScheduledChore</a>()</pre>
<div class="block">This constructor is for test only. It allows us to create an object and to call chore() on it.</div>
</li>
</ul>
<a name="ScheduledChore-java.lang.String-org.apache.hadoop.hbase.Stoppable-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ScheduledChore</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.129">ScheduledChore</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
<a href="../../../../org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a>&nbsp;stopper,
int&nbsp;period)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - Name assigned to Chore. Useful for identification amongst chores of the same type</dd>
<dd><code>stopper</code> - When <a href="../../../../org/apache/hadoop/hbase/Stoppable.html#isStopped--"><code>Stoppable.isStopped()</code></a> is true, this chore will cancel and cleanup</dd>
<dd><code>period</code> - Period in millis with which this Chore repeats execution when scheduled.</dd>
</dl>
</li>
</ul>
<a name="ScheduledChore-java.lang.String-org.apache.hadoop.hbase.Stoppable-int-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ScheduledChore</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.141">ScheduledChore</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
<a href="../../../../org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a>&nbsp;stopper,
int&nbsp;period,
long&nbsp;initialDelay)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - Name assigned to Chore. Useful for identification amongst chores of the same type</dd>
<dd><code>stopper</code> - When <a href="../../../../org/apache/hadoop/hbase/Stoppable.html#isStopped--"><code>Stoppable.isStopped()</code></a> is true, this chore will cancel and cleanup</dd>
<dd><code>period</code> - Period in millis with which this Chore repeats execution when scheduled.</dd>
<dd><code>initialDelay</code> - Delay before this Chore begins to execute once it has been scheduled. A
value of 0 means the chore will begin to execute immediately. Negative delays are
invalid and will be corrected to a value of 0.</dd>
</dl>
</li>
</ul>
<a name="ScheduledChore-java.lang.String-org.apache.hadoop.hbase.Stoppable-int-long-java.util.concurrent.TimeUnit-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ScheduledChore</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.155">ScheduledChore</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
<a href="../../../../org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a>&nbsp;stopper,
int&nbsp;period,
long&nbsp;initialDelay,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;unit)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - Name assigned to Chore. Useful for identification amongst chores of the same type</dd>
<dd><code>stopper</code> - When <a href="../../../../org/apache/hadoop/hbase/Stoppable.html#isStopped--"><code>Stoppable.isStopped()</code></a> is true, this chore will cancel and cleanup</dd>
<dd><code>period</code> - Period in Timeunit unit with which this Chore repeats execution when scheduled.</dd>
<dd><code>initialDelay</code> - Delay in Timeunit unit before this Chore begins to execute once it has been
scheduled. A value of 0 means the chore will begin to execute immediately. Negative
delays are invalid and will be corrected to a value of 0.</dd>
<dd><code>unit</code> - The unit that is used to measure period and initialDelay</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="run--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>run</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.168">run</a>()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true#run--" title="class or interface in java.lang">run</a></code>&nbsp;in interface&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true#run--" title="class or interface in java.lang"><code>Runnable.run()</code></a></dd>
</dl>
</li>
</ul>
<a name="updateTimeTrackingBeforeRun--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateTimeTrackingBeforeRun</h4>
<pre>private&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.209">updateTimeTrackingBeforeRun</a>()</pre>
<div class="block">Update our time tracking members. Called at the start of an execution of this chore's run()
method so that a correct decision can be made as to whether or not we missed the start time</div>
</li>
</ul>
<a name="onChoreMissedStartTime--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>onChoreMissedStartTime</h4>
<pre>private&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.219">onChoreMissedStartTime</a>()</pre>
<div class="block">Notify the ChoreService that this chore has missed its start time. Allows the ChoreService to
make the decision as to whether or not it would be worthwhile to increase the number of core
pool threads</div>
</li>
</ul>
<a name="getTimeBetweenRuns--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTimeBetweenRuns</h4>
<pre>long&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.227">getTimeBetweenRuns</a>()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>How long in millis has it been since this chore last run. Useful for checking if the
chore has missed its scheduled start time by too large of a margin</dd>
</dl>
</li>
</ul>
<a name="missedStartTime--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>missedStartTime</h4>
<pre>private&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.234">missedStartTime</a>()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true when the time between runs exceeds the acceptable threshold</dd>
</dl>
</li>
</ul>
<a name="getMaximumAllowedTimeBetweenRuns--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaximumAllowedTimeBetweenRuns</h4>
<pre>private&nbsp;double&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.242">getMaximumAllowedTimeBetweenRuns</a>()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>max allowed time in millis between runs.</dd>
</dl>
</li>
</ul>
<a name="isValidTime-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isValidTime</h4>
<pre>private&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.251">isValidTime</a>(long&nbsp;time)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>time</code> - in system millis</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if time is earlier or equal to current milli time</dd>
</dl>
</li>
</ul>
<a name="triggerNow--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>triggerNow</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.258">triggerNow</a>()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>false when the Chore is not currently scheduled with a ChoreService</dd>
</dl>
</li>
</ul>
<a name="setChoreServicer-org.apache.hadoop.hbase.ScheduledChore.ChoreServicer-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setChoreServicer</h4>
<pre>void&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.266">setChoreServicer</a>(<a href="../../../../org/apache/hadoop/hbase/ScheduledChore.ChoreServicer.html" title="interface in org.apache.hadoop.hbase">ScheduledChore.ChoreServicer</a>&nbsp;service)</pre>
</li>
</ul>
<a name="cancel--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cancel</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.276">cancel</a>()</pre>
</li>
</ul>
<a name="cancel-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cancel</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.280">cancel</a>(boolean&nbsp;mayInterruptIfRunning)</pre>
</li>
</ul>
<a name="getName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.286">getName</a>()</pre>
</li>
</ul>
<a name="getStopper--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStopper</h4>
<pre>public&nbsp;<a href="../../../../org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.290">getStopper</a>()</pre>
</li>
</ul>
<a name="getPeriod--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPeriod</h4>
<pre>public&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.297">getPeriod</a>()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>period to execute chore in getTimeUnit() units</dd>
</dl>
</li>
</ul>
<a name="getInitialDelay--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInitialDelay</h4>
<pre>public&nbsp;long&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.304">getInitialDelay</a>()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>initial delay before executing chore in getTimeUnit() units</dd>
</dl>
</li>
</ul>
<a name="getTimeUnit--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTimeUnit</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.308">getTimeUnit</a>()</pre>
</li>
</ul>
<a name="isInitialChoreComplete--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isInitialChoreComplete</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.312">isInitialChoreComplete</a>()</pre>
</li>
</ul>
<a name="getChoreServicer--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getChoreServicer</h4>
<pre><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.ChoreServicer.html" title="interface in org.apache.hadoop.hbase">ScheduledChore.ChoreServicer</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.317">getChoreServicer</a>()</pre>
</li>
</ul>
<a name="getTimeOfLastRun--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTimeOfLastRun</h4>
<pre>long&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.322">getTimeOfLastRun</a>()</pre>
</li>
</ul>
<a name="getTimeOfThisRun--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTimeOfThisRun</h4>
<pre>long&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.327">getTimeOfThisRun</a>()</pre>
</li>
</ul>
<a name="isScheduled--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isScheduled</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.334">isScheduled</a>()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true when this Chore is scheduled with a ChoreService</dd>
</dl>
</li>
</ul>
<a name="choreForTesting--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>choreForTesting</h4>
<pre>@InterfaceAudience.Private
public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.340">choreForTesting</a>()</pre>
</li>
</ul>
<a name="chore--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>chore</h4>
<pre>protected abstract&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.347">chore</a>()</pre>
<div class="block">The task to execute on each scheduled execution of the Chore</div>
</li>
</ul>
<a name="initialChore--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialChore</h4>
<pre>protected&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.353">initialChore</a>()</pre>
<div class="block">Override to run a task before we start looping.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if initial chore was successful</dd>
</dl>
</li>
</ul>
<a name="cleanup--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cleanup</h4>
<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.361">cleanup</a>()</pre>
<div class="block">Override to run cleanup tasks when the Chore encounters an error and must stop running</div>
</li>
</ul>
<a name="toString--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre>@InterfaceAudience.Private
public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/ScheduledChore.html#line.371">toString</a>()</pre>
<div class="block">A summation of this chore in human readable format. Downstream users should not presume
parsing of this string can relaibly be done between versions. Instead, they should rely
on the public accessor methods to get the information they desire.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></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/ScheduledChore.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/hadoop/hbase/RetryImmediatelyException.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/hadoop/hbase/ScheduledChore.ChoreServicer.html" title="interface in org.apache.hadoop.hbase"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/hadoop/hbase/ScheduledChore.html" target="_top">Frames</a></li>
<li><a href="ScheduledChore.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><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>