<!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_265) on Tue Aug 25 19:30:51 UTC 2020 -->
<title>Harvester (MetaCat API)</title>
<meta name="date" content="2020-08-25">
<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="Harvester (MetaCat API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":9,"i7":9,"i8":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static 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/Harvester.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="../../../../../edu/ucsb/nceas/metacat/harvesterClient/HarvestDocument.html" title="class in edu.ucsb.nceas.metacat.harvesterClient"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/HarvesterRegistration.html" title="class in edu.ucsb.nceas.metacat.harvesterClient"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?edu/ucsb/nceas/metacat/harvesterClient/Harvester.html" target="_top">Frames</a></li>
<li><a href="Harvester.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><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">edu.ucsb.nceas.metacat.harvesterClient</div>
<h2 title="Class Harvester" class="title">Class Harvester</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>edu.ucsb.nceas.metacat.harvesterClient.Harvester</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">Harvester</span>
extends java.lang.Object</pre>
<div class="block">Harvester is the main class for the Harvester application. The main
 method creates a single Harvester object which drives the application.</div>
<dl>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>costa</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== 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>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/Harvester.html#filler">filler</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/Harvester.html#marker">marker</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="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/Harvester.html#Harvester--">Harvester</a></span>()</code>
<div class="block">Constructor.</div>
</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="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></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>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/Harvester.html#closeConnection--">closeConnection</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/Harvester.html#dequoteText-java.lang.String-">dequoteText</a></span>(java.lang.String&nbsp;text)</code>
<div class="block">Normalizes text prior to insertion into the HARVEST_LOG or
 HARVEST_DETAIL_LOG tables.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.sql.Connection</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/Harvester.html#getConnection--">getConnection</a></span>()</code>
<div class="block">Returns a connection to the database.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/Harvester.html#getDetailLogID--">getDetailLogID</a></span>()</code>
<div class="block">Gets the current value of the detailLogID for storage as a primary key in
 the DETAIL_LOG_ID field of the HARVEST_DETAIL_LOG table.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/Harvester.html#getHarvestLogID--">getHarvestLogID</a></span>()</code>
<div class="block">Gets the current value of the harvestLogID for storage as a primary key in
 the HARVEST_LOG_ID field of the HARVEST_LOG table.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/Harvester.html#initLogIDs--">initLogIDs</a></span>()</code>
<div class="block">Initializes the detailLogID and harvestLogID values to their current
 maximums + 1.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/Harvester.html#loadProperties-java.lang.String-">loadProperties</a></span>(java.lang.String&nbsp;metacatContextDir)</code>
<div class="block">Loads Harvester options from a configuration file.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/Harvester.html#main-java.lang.String:A-">main</a></span>(java.lang.String[]&nbsp;args)</code>
<div class="block">Harvester main method.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/Harvester.html#setHarvestStartTime-java.util.Date-">setHarvestStartTime</a></span>(java.util.Date&nbsp;date)</code>
<div class="block">Sets the harvest start time for this harvest run.</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.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</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="filler">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>filler</h4>
<pre>public static final&nbsp;java.lang.String filler</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#edu.ucsb.nceas.metacat.harvesterClient.Harvester.filler">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="marker">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>marker</h4>
<pre>public static final&nbsp;java.lang.String marker</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#edu.ucsb.nceas.metacat.harvesterClient.Harvester.marker">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="Harvester--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Harvester</h4>
<pre>public&nbsp;Harvester()</pre>
<div class="block">Constructor. Creates a new instance of Harvester.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="loadProperties-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>loadProperties</h4>
<pre>public static&nbsp;void&nbsp;loadProperties(java.lang.String&nbsp;metacatContextDir)</pre>
<div class="block">Loads Harvester options from a configuration file.</div>
</li>
</ul>
<a name="main-java.lang.String:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>main</h4>
<pre>public static&nbsp;void&nbsp;main(java.lang.String[]&nbsp;args)</pre>
<div class="block">Harvester main method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>args</code> - the command line arguments
 
   args[0] if "false", then this is not command-line mode,
           Command-line mode is true by default.
           
   args[1] if present, represents the path to the harvest list schema file.
           Specifying it overrides the default path to the schema file.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>SAXException</code></dd>
<dd><code>java.io.IOException</code></dd>
<dd><code>ParserConfigurationException</code></dd>
</dl>
</li>
</ul>
<a name="closeConnection--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>closeConnection</h4>
<pre>public&nbsp;void&nbsp;closeConnection()</pre>
</li>
</ul>
<a name="dequoteText-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dequoteText</h4>
<pre>public&nbsp;java.lang.String&nbsp;dequoteText(java.lang.String&nbsp;text)</pre>
<div class="block">Normalizes text prior to insertion into the HARVEST_LOG or
 HARVEST_DETAIL_LOG tables. In particular, replaces the single quote
 character with the double quote character. This prevents SQL errors
 involving words that contain single quotes. Also removes \n and \r
 characters from the text.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>text</code> - the original string</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a string containing the normalized text</dd>
</dl>
</li>
</ul>
<a name="getConnection--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConnection</h4>
<pre>public&nbsp;java.sql.Connection&nbsp;getConnection()</pre>
<div class="block">Returns a connection to the database. Opens the connection if a connection
 has not already been made previously.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>conn  the database Connection object</dd>
</dl>
</li>
</ul>
<a name="getDetailLogID--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDetailLogID</h4>
<pre>public&nbsp;int&nbsp;getDetailLogID()</pre>
<div class="block">Gets the current value of the detailLogID for storage as a primary key in
 the DETAIL_LOG_ID field of the HARVEST_DETAIL_LOG table.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the current value of the detailLogID</dd>
</dl>
</li>
</ul>
<a name="getHarvestLogID--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHarvestLogID</h4>
<pre>public&nbsp;int&nbsp;getHarvestLogID()</pre>
<div class="block">Gets the current value of the harvestLogID for storage as a primary key in
 the HARVEST_LOG_ID field of the HARVEST_LOG table.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the current value of the detailLogID</dd>
</dl>
</li>
</ul>
<a name="initLogIDs--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initLogIDs</h4>
<pre>public&nbsp;void&nbsp;initLogIDs()</pre>
<div class="block">Initializes the detailLogID and harvestLogID values to their current
 maximums + 1.</div>
</li>
</ul>
<a name="setHarvestStartTime-java.util.Date-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>setHarvestStartTime</h4>
<pre>public&nbsp;void&nbsp;setHarvestStartTime(java.util.Date&nbsp;date)</pre>
<div class="block">Sets the harvest start time for this harvest run.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>date</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/Harvester.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="../../../../../edu/ucsb/nceas/metacat/harvesterClient/HarvestDocument.html" title="class in edu.ucsb.nceas.metacat.harvesterClient"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../edu/ucsb/nceas/metacat/harvesterClient/HarvesterRegistration.html" title="class in edu.ucsb.nceas.metacat.harvesterClient"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?edu/ucsb/nceas/metacat/harvesterClient/Harvester.html" target="_top">Frames</a></li>
<li><a href="Harvester.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><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><i>Copyright © 2020 Regents of the University of California. All Rights Reserved.</i></small></p>
</body>
</html>