blob: de13079b4f055ad279c4294319993db2673e6bdb [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_112) on Mon Dec 18 11:25:19 EST 2017 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Oplet (Apache Edgent (incubating) v1.2.0 API)</title>
<meta name="date" content="2017-12-18">
<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="Oplet (Apache Edgent (incubating) v1.2.0 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Oplet.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/edgent/oplet/JobContext.html" title="interface in org.apache.edgent.oplet"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/edgent/oplet/OpletContext.html" title="interface in org.apache.edgent.oplet"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/edgent/oplet/Oplet.html" target="_top">Frames</a></li>
<li><a href="Oplet.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.edgent.oplet</div>
<h2 title="Interface Oplet" class="title">Interface Oplet&lt;I,O&gt;</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>I</code> - Data container type for input tuples.</dd>
<dd><code>O</code> - Data container type for output tuples.</dd>
</dl>
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></dd>
</dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../org/apache/edgent/oplet/core/AbstractOplet.html" title="class in org.apache.edgent.oplet.core">AbstractOplet</a>, <a href="../../../../org/apache/edgent/oplet/window/Aggregate.html" title="class in org.apache.edgent.oplet.window">Aggregate</a>, <a href="../../../../org/apache/edgent/oplet/plumbing/Barrier.html" title="class in org.apache.edgent.oplet.plumbing">Barrier</a>, <a href="../../../../org/apache/edgent/metrics/oplets/CounterOp.html" title="class in org.apache.edgent.metrics.oplets">CounterOp</a>, <a href="../../../../org/apache/edgent/oplet/functional/Events.html" title="class in org.apache.edgent.oplet.functional">Events</a>, <a href="../../../../org/apache/edgent/oplet/core/FanIn.html" title="class in org.apache.edgent.oplet.core">FanIn</a>, <a href="../../../../org/apache/edgent/oplet/core/FanOut.html" title="class in org.apache.edgent.oplet.core">FanOut</a>, <a href="../../../../org/apache/edgent/oplet/functional/Filter.html" title="class in org.apache.edgent.oplet.functional">Filter</a>, <a href="../../../../org/apache/edgent/oplet/functional/FlatMap.html" title="class in org.apache.edgent.oplet.functional">FlatMap</a>, <a href="../../../../org/apache/edgent/oplet/plumbing/Isolate.html" title="class in org.apache.edgent.oplet.plumbing">Isolate</a>, <a href="../../../../org/apache/edgent/oplet/functional/Map.html" title="class in org.apache.edgent.oplet.functional">Map</a>, <a href="../../../../org/apache/edgent/oplet/core/Peek.html" title="class in org.apache.edgent.oplet.core">Peek</a>, <a href="../../../../org/apache/edgent/oplet/functional/Peek.html" title="class in org.apache.edgent.oplet.functional">Peek</a>, <a href="../../../../org/apache/edgent/oplet/core/PeriodicSource.html" title="class in org.apache.edgent.oplet.core">PeriodicSource</a>, <a href="../../../../org/apache/edgent/oplet/core/Pipe.html" title="class in org.apache.edgent.oplet.core">Pipe</a>, <a href="../../../../org/apache/edgent/oplet/plumbing/PressureReliever.html" title="class in org.apache.edgent.oplet.plumbing">PressureReliever</a>, <a href="../../../../org/apache/edgent/oplet/core/ProcessSource.html" title="class in org.apache.edgent.oplet.core">ProcessSource</a>, <a href="../../../../org/apache/edgent/connectors/pubsub/oplets/Publish.html" title="class in org.apache.edgent.connectors.pubsub.oplets">Publish</a>, <a href="../../../../org/apache/edgent/metrics/oplets/RateMeter.html" title="class in org.apache.edgent.metrics.oplets">RateMeter</a>, <a href="../../../../org/apache/edgent/metrics/oplets/SingleMetricAbstractOplet.html" title="class in org.apache.edgent.metrics.oplets">SingleMetricAbstractOplet</a>, <a href="../../../../org/apache/edgent/oplet/core/Sink.html" title="class in org.apache.edgent.oplet.core">Sink</a>, <a href="../../../../org/apache/edgent/oplet/core/Source.html" title="class in org.apache.edgent.oplet.core">Source</a>, <a href="../../../../org/apache/edgent/oplet/core/Split.html" title="class in org.apache.edgent.oplet.core">Split</a>, <a href="../../../../org/apache/edgent/streamscope/oplets/StreamScope.html" title="class in org.apache.edgent.streamscope.oplets">StreamScope</a>, <a href="../../../../org/apache/edgent/oplet/functional/SupplierPeriodicSource.html" title="class in org.apache.edgent.oplet.functional">SupplierPeriodicSource</a>, <a href="../../../../org/apache/edgent/oplet/functional/SupplierSource.html" title="class in org.apache.edgent.oplet.functional">SupplierSource</a>, <a href="../../../../org/apache/edgent/oplet/core/Union.html" title="class in org.apache.edgent.oplet.core">Union</a>, <a href="../../../../org/apache/edgent/oplet/plumbing/UnorderedIsolate.html" title="class in org.apache.edgent.oplet.plumbing">UnorderedIsolate</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">Oplet&lt;I,O&gt;</span>
extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></pre>
<div class="block">Generic API for an oplet that processes streaming data on 0-N input ports
and produces 0-M output streams on its output ports. An input port may be
connected with any number of streams from other oplets. An output port may
connected to any number of input ports on other oplets.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../org/apache/edgent/function/Consumer.html" title="interface in org.apache.edgent.function">Consumer</a>&lt;<a href="../../../../org/apache/edgent/oplet/Oplet.html" title="type parameter in Oplet">I</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/edgent/oplet/Oplet.html#getInputs--">getInputs</a></span>()</code>
<div class="block">Get the input stream data handlers for this oplet.</div>
</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/edgent/oplet/Oplet.html#initialize-org.apache.edgent.oplet.OpletContext-">initialize</a></span>(<a href="../../../../org/apache/edgent/oplet/OpletContext.html" title="interface in org.apache.edgent.oplet">OpletContext</a>&lt;<a href="../../../../org/apache/edgent/oplet/Oplet.html" title="type parameter in Oplet">I</a>,<a href="../../../../org/apache/edgent/oplet/Oplet.html" title="type parameter in Oplet">O</a>&gt;&nbsp;context)</code>
<div class="block">Initialize the oplet.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/edgent/oplet/Oplet.html#start--">start</a></span>()</code>
<div class="block">Start the oplet.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.AutoCloseable">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;java.lang.<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></h3>
<code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="initialize-org.apache.edgent.oplet.OpletContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialize</h4>
<pre>void&nbsp;initialize(<a href="../../../../org/apache/edgent/oplet/OpletContext.html" title="interface in org.apache.edgent.oplet">OpletContext</a>&lt;<a href="../../../../org/apache/edgent/oplet/Oplet.html" title="type parameter in Oplet">I</a>,<a href="../../../../org/apache/edgent/oplet/Oplet.html" title="type parameter in Oplet">O</a>&gt;&nbsp;context)
throws <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Initialize the oplet.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>context</code> - the OpletContext</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code> - on failure</dd>
</dl>
</li>
</ul>
<a name="start--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>start</h4>
<pre>void&nbsp;start()</pre>
<div class="block">Start the oplet. Oplets must not submit any tuples not derived from
input tuples until this method is called.</div>
</li>
</ul>
<a name="getInputs--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getInputs</h4>
<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../org/apache/edgent/function/Consumer.html" title="interface in org.apache.edgent.function">Consumer</a>&lt;<a href="../../../../org/apache/edgent/oplet/Oplet.html" title="type parameter in Oplet">I</a>&gt;&gt;&nbsp;getInputs()</pre>
<div class="block">Get the input stream data handlers for this oplet. The number of handlers
must equal the number of configured input ports. Each tuple
arriving on an input port will be sent to the stream handler for that
input port.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>list of consumers</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/Oplet.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/edgent/oplet/JobContext.html" title="interface in org.apache.edgent.oplet"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/edgent/oplet/OpletContext.html" title="interface in org.apache.edgent.oplet"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/edgent/oplet/Oplet.html" target="_top">Frames</a></li>
<li><a href="Oplet.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2016&#x2013;2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>