<!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>org.apache.hadoop.hbase.master.cleaner (Apache HBase 3.0.0-alpha-2-SNAPSHOT Test API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<h1 class="bar"><a href="../../../../../../org/apache/hadoop/hbase/master/cleaner/package-summary.html" target="classFrame">org.apache.hadoop.hbase.master.cleaner</a></h1>
<div class="indexContainer">
<h2 title="Classes">Classes</h2>
<ul title="Classes">
<li><a href="TestCleanerChore.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestCleanerChore</a></li>
<li><a href="TestCleanerChore.AllValidPaths.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestCleanerChore.AllValidPaths</a></li>
<li><a href="TestCleanerChore.AlwaysDelete.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestCleanerChore.AlwaysDelete</a></li>
<li><a href="TestCleanerChore.NeverDelete.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestCleanerChore.NeverDelete</a></li>
<li><a href="TestHFileCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestHFileCleaner</a></li>
<li><a href="TestHFileCleaner.DummyServer.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestHFileCleaner.DummyServer</a></li>
<li><a href="TestHFileLinkCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestHFileLinkCleaner</a></li>
<li><a href="TestHFileLinkCleaner.DummyServer.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestHFileLinkCleaner.DummyServer</a></li>
<li><a href="TestLogsCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestLogsCleaner</a></li>
<li><a href="TestLogsCleaner.DummyServer.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestLogsCleaner.DummyServer</a></li>
<li><a href="TestLogsCleaner.FaultyZooKeeperWatcher.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestLogsCleaner.FaultyZooKeeperWatcher</a></li>
<li><a href="TestReplicationBarrierCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestReplicationBarrierCleaner</a></li>
<li><a href="TestReplicationBarrierCleaner.WarnOnlyStoppable.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestReplicationBarrierCleaner.WarnOnlyStoppable</a></li>
<li><a href="TestReplicationHFileCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestReplicationHFileCleaner</a></li>
<li><a href="TestReplicationHFileCleaner.DummyServer.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestReplicationHFileCleaner.DummyServer</a></li>
<li><a href="TestReplicationHFileCleaner.FaultyZooKeeperWatcher.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestReplicationHFileCleaner.FaultyZooKeeperWatcher</a></li>
<li><a href="TestSnapshotCleanerChore.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestSnapshotCleanerChore</a></li>
<li><a href="TestSnapshotCleanerChore.StoppableImplementation.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestSnapshotCleanerChore.StoppableImplementation</a></li>
<li><a href="TestSnapshotFromMaster.html" title="class in org.apache.hadoop.hbase.master.cleaner" target="classFrame">TestSnapshotFromMaster</a></li>
</ul>
</div>
</body>
</html>
