antfarm
Version:
File automation framework for ants.
369 lines (364 loc) • 18.3 kB
HTML
<html class="default no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Antfarm 🐜</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="assets/css/main.css">
<link rel="stylesheet" href="assets/css/ant.css">
<script src="assets/js/modernizr.js"></script>
</head>
<body>
<header>
<div class="tsd-page-toolbar">
<div class="container">
<div class="table-wrap">
<div class="table-cell" id="tsd-search" data-index="assets/js/search.js" data-base=".">
<div class="field">
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
<input id="tsd-search-field" type="text" />
</div>
<ul class="results">
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="index.html" class="title">Antfarm 🐜</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
<div class="tsd-filter-group">
<div class="tsd-select" id="tsd-filter-visibility">
<span class="tsd-select-label">All</span>
<ul class="tsd-select-list">
<li data-value="public">Public</li>
<li data-value="protected">Public/Protected</li>
<li data-value="private" class="selected">All</li>
</ul>
</div>
<input type="checkbox" id="tsd-filter-inherited" checked />
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
<input type="checkbox" id="tsd-filter-externals" checked />
<label class="tsd-widget" for="tsd-filter-externals">Externals</label>
<input type="checkbox" id="tsd-filter-only-exported" />
<label class="tsd-widget" for="tsd-filter-only-exported">Only exported</label>
</div>
</div>
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
</div>
</div>
</div>
</div>
<div class="tsd-page-title">
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="globals.html">Globals</a>
</li>
</ul>
<h1> Antfarm 🐜</h1>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-8 col-content">
<div class="tsd-panel tsd-typography">
<h1 id="antfarm">antfarm</h1>
<p>Antfarm is a simple automation framework that aims to make file automation robust and scalable. 🐜</p>
<p><a href="https://travis-ci.org/dominickp/antfarm"><img src="https://travis-ci.org/dominickp/antfarm.svg?branch=master" alt="Build Status"></a>
<a href="https://coveralls.io/github/dominickp/antfarm?branch=master"><img src="https://coveralls.io/repos/github/dominickp/antfarm/badge.svg?branch=master" alt="Coverage Status"></a>
<a href="https://badge.fury.io/js/antfarm"><img src="https://badge.fury.io/js/antfarm.svg" alt="npm version"></a>
<a href="https://david-dm.org/dominickp/antfarm"><img src="https://david-dm.org/dominickp/antfarm.svg" alt="Dependancy Status"></a>
<a href="https://gitter.im/open-automation/Lobby"><img src="https://badges.gitter.im/dominickp/antfarm.svg" alt="Gitter"></a></p>
<h2 id="usage">Usage</h2>
<pre><code class="lang-sh">$ npm install antfarm
</code></pre>
<pre><code class="lang-js"><span class="hljs-keyword">const</span> Antfarm = <span class="hljs-built_in">require</span>(<span class="hljs-string">'antfarm'</span>),
af = <span class="hljs-keyword">new</span> Antfarm();
<span class="hljs-keyword">let</span> hotfolder_a = af.createFolderNest(<span class="hljs-string">"/var/hotfolders/a"</span>);
<span class="hljs-keyword">let</span> pdf_folder = af.createFolderNest(<span class="hljs-string">"/var/out/pdf"</span>);
<span class="hljs-keyword">let</span> other_folder = af.createFolderNest(<span class="hljs-string">"/var/out/others"</span>);
<span class="hljs-keyword">let</span> tunnel = af.createTunnel(<span class="hljs-string">"Simple pdf sorting workflow"</span>);
tunnel.watch(hotfolder_a);
tunnel.run(<span class="hljs-function">(<span class="hljs-params">job, nest</span>) =></span> {
<span class="hljs-keyword">if</span>(job.extension == <span class="hljs-string">"pdf"</span>){
job.move(pdf_folder);
} <span class="hljs-keyword">else</span> {
job.move(other_folder);
}
});
</code></pre>
<h2 id="documentation-warning">Documentation warning</h2>
<p>During late October, much of antfarm was refactored to use TypeScript's accessors. The documentation may be out of date. The documentation in the API reference should always be up to date.</p>
<pre><code class="lang-js"><span class="hljs-comment">// Old style</span>
job.setName(<span class="hljs-string">"myFile.pdf"</span>);
<span class="hljs-built_in">console</span>.log(job.getName());
<span class="hljs-comment">// New style, using TypeScript accessors</span>
job.name = <span class="hljs-string">"myFile.pdf"</span>;
<span class="hljs-built_in">console</span>.log(job.name);
</code></pre>
<h2 id="wiki">Wiki</h2>
<p><a href="https://github.com/dominickp/antfarm/wiki">https://github.com/dominickp/antfarm/wiki</a></p>
<h2 id="api-reference">API Reference</h2>
<p><a href="https://dominickp.github.io/antfarm">https://dominickp.github.io/antfarm</a></p>
</div>
</div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<nav class="tsd-navigation primary">
<ul>
<li class="globals ">
<a href="globals.html"><em>Globals</em></a>
</li>
</ul>
</nav>
<nav class="tsd-navigation secondary menu-sticky">
<ul class="before-current">
<li class=" tsd-kind-class">
<a href="classes/antfarm.html" class="tsd-kind-icon">Antfarm</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/autofoldernest.html" class="tsd-kind-icon">Auto<wbr>Folder<wbr>Nest</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/emailoptions.html" class="tsd-kind-icon">Email<wbr>Options</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/emailer.html" class="tsd-kind-icon">Emailer</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/environment.html" class="tsd-kind-icon">Environment</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/file.html" class="tsd-kind-icon">File</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/filejob.html" class="tsd-kind-icon">File<wbr>Job</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/folderjob.html" class="tsd-kind-icon">Folder<wbr>Job</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/foldernest.html" class="tsd-kind-icon">Folder<wbr>Nest</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/ftpfilejob.html" class="tsd-kind-icon">Ftp<wbr>File<wbr>Job</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/ftpnest.html" class="tsd-kind-icon">Ftp<wbr>Nest</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/interfacemanager.html" class="tsd-kind-icon">Interface<wbr>Manager</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/job.html" class="tsd-kind-icon">Job</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/jobproperty.html" class="tsd-kind-icon">Job<wbr>Property</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/lifeevent.html" class="tsd-kind-icon">Life<wbr>Event</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/logger.html" class="tsd-kind-icon">Logger</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/nest.html" class="tsd-kind-icon">Nest</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/packedjob.html" class="tsd-kind-icon">Packed<wbr>Job</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/s3filejob.html" class="tsd-kind-icon">S3<wbr>File<wbr>Job</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/s3nest.html" class="tsd-kind-icon">S3<wbr>Nest</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/server.html" class="tsd-kind-icon">Server</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/step.html" class="tsd-kind-icon">Step</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/tunnel.html" class="tsd-kind-icon">Tunnel</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/webhookinterface.html" class="tsd-kind-icon">Webhook<wbr>Interface</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/webhookjob.html" class="tsd-kind-icon">Webhook<wbr>Job</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/webhooknest.html" class="tsd-kind-icon">Webhook<wbr>Nest</a>
</li>
<li class=" tsd-kind-interface">
<a href="interfaces/antfarmoptions.html" class="tsd-kind-icon">Antfarm<wbr>Options</a>
</li>
<li class=" tsd-kind-interface">
<a href="interfaces/emailcredentials.html" class="tsd-kind-icon">Email<wbr>Credentials</a>
</li>
<li class=" tsd-kind-interface">
<a href="interfaces/fieldoptions.html" class="tsd-kind-icon">Field<wbr>Options</a>
</li>
<li class=" tsd-kind-interface">
<a href="interfaces/interfacemetadata.html" class="tsd-kind-icon">Interface<wbr>Metadata</a>
</li>
<li class=" tsd-kind-interface">
<a href="interfaces/interfaceproperty.html" class="tsd-kind-icon">Interface<wbr>Property</a>
</li>
<li class=" tsd-kind-interface">
<a href="interfaces/logqueryoptions.html" class="tsd-kind-icon">Log<wbr>Query<wbr>Options</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#aws" class="tsd-kind-icon">AWS</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#easyftp" class="tsd-kind-icon">Easy<wbr>Ftp</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#jszip" class="tsd-kind-icon">JSZip</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#reflect" class="tsd-kind-icon">Reflect</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#_" class="tsd-kind-icon">_</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#async" class="tsd-kind-icon">async</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#clone" class="tsd-kind-icon">clone</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#cors" class="tsd-kind-icon">cors</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#fileextension" class="tsd-kind-icon">file<wbr>Extension</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#filesize" class="tsd-kind-icon">filesize</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#fs" class="tsd-kind-icon">fs</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#http" class="tsd-kind-icon">http</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#mime" class="tsd-kind-icon">mime</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#mkdirp" class="tsd-kind-icon">mkdirp</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#mm" class="tsd-kind-icon">mm</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#multer" class="tsd-kind-icon">multer</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#node_path" class="tsd-kind-icon">node_<wbr>path</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#node_watch" class="tsd-kind-icon">node_<wbr>watch</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#nodemailer" class="tsd-kind-icon">nodemailer</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#path" class="tsd-kind-icon">path</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#path_mod" class="tsd-kind-icon">path_<wbr>mod</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#pug" class="tsd-kind-icon">pug</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#shortid" class="tsd-kind-icon">shortid</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#tmp" class="tsd-kind-icon">tmp</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#url" class="tsd-kind-icon">url</a>
</li>
<li class=" tsd-kind-variable tsd-is-not-exported">
<a href="globals.html#winston" class="tsd-kind-icon">winston</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<footer class="with-border-bottom">
<div class="container">
<h2>Legend</h2>
<div class="tsd-legend-group">
<ul class="tsd-legend">
<li class="tsd-kind-module"><span class="tsd-kind-icon">Module</span></li>
<li class="tsd-kind-object-literal"><span class="tsd-kind-icon">Object literal</span></li>
<li class="tsd-kind-variable"><span class="tsd-kind-icon">Variable</span></li>
<li class="tsd-kind-function"><span class="tsd-kind-icon">Function</span></li>
<li class="tsd-kind-function tsd-has-type-parameter"><span class="tsd-kind-icon">Function with type parameter</span></li>
<li class="tsd-kind-index-signature"><span class="tsd-kind-icon">Index signature</span></li>
<li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-enum"><span class="tsd-kind-icon">Enumeration</span></li>
<li class="tsd-kind-enum-member"><span class="tsd-kind-icon">Enumeration member</span></li>
<li class="tsd-kind-property tsd-parent-kind-enum"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-enum"><span class="tsd-kind-icon">Method</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li>
<li class="tsd-kind-interface tsd-has-type-parameter"><span class="tsd-kind-icon">Interface with type parameter</span></li>
<li class="tsd-kind-constructor tsd-parent-kind-interface"><span class="tsd-kind-icon">Constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
<li class="tsd-kind-index-signature tsd-parent-kind-interface"><span class="tsd-kind-icon">Index signature</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li>
<li class="tsd-kind-class tsd-has-type-parameter"><span class="tsd-kind-icon">Class with type parameter</span></li>
<li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class"><span class="tsd-kind-icon">Accessor</span></li>
<li class="tsd-kind-index-signature tsd-parent-kind-class"><span class="tsd-kind-icon">Index signature</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited accessor</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected accessor</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private accessor</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static property</span></li>
<li class="tsd-kind-call-signature tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static method</span></li>
</ul>
</div>
</div>
</footer>
<div class="container tsd-generator">
<p>Generated using <a href="http://typedoc.io" target="_blank">TypeDoc</a></p>
</div>
<div class="overlay"></div>
<script src="assets/js/main.js"></script>
<script>if (location.protocol == 'file:') document.write('<script src="assets/js/search.js"><' + '/script>');</script>
</body>
</html>