<!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 Sun Feb 26 17:08:13 EST 2017 -->
<title>Overview (Edgent v1.1.0)</title>
<meta name="date" content="2017-02-26">
<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="Overview (Edgent v1.1.0)";
        }
    }
    catch(err) {
    }
//-->
</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 class="navBarCell1Rev">Overview</li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-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>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?overview-summary.html" target="_top">Frames</a></li>
<li><a href="overview-summary.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>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 class="title">Apache Edgent (incubating) v1.1.0</h1>
</div>
<div class="header">
<div class="subTitle">
<div class="block">Edgent provides an programming model and micro-service style runtime
for executing streaming analytics at the <i>edge</i>.</div>
</div>
<p>See: <a href="#overview.description">Description</a></p>
</div>
<div class="contentContainer">
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Edgent Providers table, listing packages, and an explanation">
<caption><span>Edgent Providers</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/providers/development/package-summary.html">org.apache.edgent.providers.development</a></td>
<td class="colLast">
<div class="block">Execution of a streaming topology in a development environment .</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/providers/direct/package-summary.html">org.apache.edgent.providers.direct</a></td>
<td class="colLast">
<div class="block">Direct execution of a streaming topology.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/providers/iot/package-summary.html">org.apache.edgent.providers.iot</a></td>
<td class="colLast">
<div class="block">Iot provider that allows multiple applications to
 share an <code>IotDevice</code>.</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="contentContainer">
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Edgent API table, listing packages, and an explanation">
<caption><span>Edgent API</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/execution/package-summary.html">org.apache.edgent.execution</a></td>
<td class="colLast">
<div class="block">Execution of Edgent topologies and graphs.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/execution/mbeans/package-summary.html">org.apache.edgent.execution.mbeans</a></td>
<td class="colLast">
<div class="block">Management MBeans for execution.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/execution/services/package-summary.html">org.apache.edgent.execution.services</a></td>
<td class="colLast">
<div class="block">Execution services.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/function/package-summary.html">org.apache.edgent.function</a></td>
<td class="colLast">
<div class="block">Functional interfaces for lambda expressions.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/topology/package-summary.html">org.apache.edgent.topology</a></td>
<td class="colLast">
<div class="block">Functional api to build a streaming topology.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/topology/json/package-summary.html">org.apache.edgent.topology.json</a></td>
<td class="colLast">
<div class="block">Utilities for use of JSON in a streaming topology.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/topology/mbeans/package-summary.html">org.apache.edgent.topology.mbeans</a></td>
<td class="colLast">
<div class="block">Controls for executing topologies.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/topology/plumbing/package-summary.html">org.apache.edgent.topology.plumbing</a></td>
<td class="colLast">
<div class="block">Plumbing for a streaming topology.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/topology/services/package-summary.html">org.apache.edgent.topology.services</a></td>
<td class="colLast">
<div class="block">Services for topologies.</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="contentContainer">
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Edgent Analytics table, listing packages, and an explanation">
<caption><span>Edgent Analytics</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/analytics/math3/json/package-summary.html">org.apache.edgent.analytics.math3.json</a></td>
<td class="colLast">
<div class="block">JSON analytics using Apache Commons Math.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/analytics/math3/stat/package-summary.html">org.apache.edgent.analytics.math3.stat</a></td>
<td class="colLast">
<div class="block">Statistical algorithms using Apache Commons Math.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/analytics/sensors/package-summary.html">org.apache.edgent.analytics.sensors</a></td>
<td class="colLast">
<div class="block">Analytics focused on handling sensor data.</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="contentContainer">
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Edgent Utilities table, listing packages, and an explanation">
<caption><span>Edgent Utilities</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/metrics/package-summary.html">org.apache.edgent.metrics</a></td>
<td class="colLast">
<div class="block">Metric utility methods, oplets, and reporters which allow an 
 application to expose metric values, for example via JMX.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/metrics/oplets/package-summary.html">org.apache.edgent.metrics.oplets</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/streamscope/package-summary.html">org.apache.edgent.streamscope</a></td>
<td class="colLast">
<div class="block">Stream Oscilloscope - package for instrumenting streams to capture tuples.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/streamscope/mbeans/package-summary.html">org.apache.edgent.streamscope.mbeans</a></td>
<td class="colLast">
<div class="block">Stream Oscilloscope <a href="org/apache/edgent/execution/services/ControlService.html" title="interface in org.apache.edgent.execution.services"><code>ControlService</code></a>
 Management Bean interfaces.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/streamscope/oplets/package-summary.html">org.apache.edgent.streamscope.oplets</a></td>
<td class="colLast">
<div class="block">Stream Oscilloscope underlying implementation oplets.</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="contentContainer">
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Edgent Connectors table, listing packages, and an explanation">
<caption><span>Edgent Connectors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/command/package-summary.html">org.apache.edgent.connectors.command</a></td>
<td class="colLast">
<div class="block">Command / OS Process connector.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/csv/package-summary.html">org.apache.edgent.connectors.csv</a></td>
<td class="colLast">
<div class="block">Utilities for handling Comma Separated Value strings.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/file/package-summary.html">org.apache.edgent.connectors.file</a></td>
<td class="colLast">
<div class="block">File stream connector.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/http/package-summary.html">org.apache.edgent.connectors.http</a></td>
<td class="colLast">
<div class="block">HTTP stream connector.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/iot/package-summary.html">org.apache.edgent.connectors.iot</a></td>
<td class="colLast">
<div class="block">Edgent IoT device and IoT Gateway device connector API to an IoT message hub.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/iotp/package-summary.html">org.apache.edgent.connectors.iotp</a></td>
<td class="colLast">
<div class="block">IBM Watson IoT Platform stream connector.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/jdbc/package-summary.html">org.apache.edgent.connectors.jdbc</a></td>
<td class="colLast">
<div class="block">JDBC based database stream connector.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/kafka/package-summary.html">org.apache.edgent.connectors.kafka</a></td>
<td class="colLast">
<div class="block">Apache Kafka enterprise messing hub stream connector.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/mqtt/package-summary.html">org.apache.edgent.connectors.mqtt</a></td>
<td class="colLast">
<div class="block">MQTT (lightweight messaging protocol for small sensors and mobile devices) stream connector.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/mqtt/iot/package-summary.html">org.apache.edgent.connectors.mqtt.iot</a></td>
<td class="colLast">
<div class="block">An MQTT based IotDevice connector.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/pubsub/package-summary.html">org.apache.edgent.connectors.pubsub</a></td>
<td class="colLast">
<div class="block">Publish subscribe model between jobs.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/pubsub/oplets/package-summary.html">org.apache.edgent.connectors.pubsub.oplets</a></td>
<td class="colLast">
<div class="block">Oplets supporting publish subscribe service.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/pubsub/service/package-summary.html">org.apache.edgent.connectors.pubsub.service</a></td>
<td class="colLast">
<div class="block">Publish subscribe service.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/serial/package-summary.html">org.apache.edgent.connectors.serial</a></td>
<td class="colLast">
<div class="block">Serial port connector API.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/wsclient/package-summary.html">org.apache.edgent.connectors.wsclient</a></td>
<td class="colLast">
<div class="block">WebSocket Client Connector API for sending and receiving messages to a WebSocket Server.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/connectors/wsclient/javax/websocket/package-summary.html">org.apache.edgent.connectors.wsclient.javax.websocket</a></td>
<td class="colLast">
<div class="block">WebSocket Client Connector for sending and receiving messages to a WebSocket Server.</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="contentContainer">
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Edgent Samples table, listing packages, and an explanation">
<caption><span>Edgent Samples</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/samples/apps/package-summary.html">org.apache.edgent.samples.apps</a></td>
<td class="colLast">
<div class="block">Support for some more complex Edgent application samples.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/samples/apps/mqtt/package-summary.html">org.apache.edgent.samples.apps.mqtt</a></td>
<td class="colLast">
<div class="block">Base support for Edgent MQTT based application samples.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/samples/apps/sensorAnalytics/package-summary.html">org.apache.edgent.samples.apps.sensorAnalytics</a></td>
<td class="colLast">
<div class="block">The Sensor Analytics sample application demonstrates some common 
 continuous sensor analytic application themes.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/samples/connectors/package-summary.html">org.apache.edgent.samples.connectors</a></td>
<td class="colLast">
<div class="block">General support for connector samples.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/samples/connectors/elm327/package-summary.html">org.apache.edgent.samples.connectors.elm327</a></td>
<td class="colLast">
<div class="block">OBD-II protocol sample using ELM327.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/samples/connectors/elm327/runtime/package-summary.html">org.apache.edgent.samples.connectors.elm327.runtime</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/samples/connectors/file/package-summary.html">org.apache.edgent.samples.connectors.file</a></td>
<td class="colLast">
<div class="block">Samples showing use of the 
 <a href="./org/apache/edgent/connectors/file/package-summary.html">
     File stream connector</a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/samples/connectors/iotp/package-summary.html">org.apache.edgent.samples.connectors.iotp</a></td>
<td class="colLast">
<div class="block">Samples showing device events and commands with IBM Watson IoT Platform.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/samples/connectors/jdbc/package-summary.html">org.apache.edgent.samples.connectors.jdbc</a></td>
<td class="colLast">
<div class="block">Samples showing use of the
 <a href="./org/apache/edgent/connectors/jdbc/package-summary.html">
     JDBC stream connector</a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/samples/connectors/kafka/package-summary.html">org.apache.edgent.samples.connectors.kafka</a></td>
<td class="colLast">
<div class="block">Samples showing use of the
 <a href="./org/apache/edgent/connectors/kafka/package-summary.html">
     Apache Kafka stream connector</a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/samples/connectors/mqtt/package-summary.html">org.apache.edgent.samples.connectors.mqtt</a></td>
<td class="colLast">
<div class="block">Samples showing use of the
 <a href="./org/apache/edgent/connectors/mqtt/package-summary.html">
     MQTT stream connector</a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/samples/connectors/obd2/package-summary.html">org.apache.edgent.samples.connectors.obd2</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/samples/console/package-summary.html">org.apache.edgent.samples.console</a></td>
<td class="colLast">
<div class="block">Samples showing use of the Console web application.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/samples/scenarios/iotp/package-summary.html">org.apache.edgent.samples.scenarios.iotp</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/samples/topology/package-summary.html">org.apache.edgent.samples.topology</a></td>
<td class="colLast">
<div class="block">Samples showing creating and executing basic topologies .</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/samples/utils/metrics/package-summary.html">org.apache.edgent.samples.utils.metrics</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/samples/utils/sensor/package-summary.html">org.apache.edgent.samples.utils.sensor</a></td>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</div>
<div class="contentContainer">
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Edgent Low-Level API table, listing packages, and an explanation">
<caption><span>Edgent Low-Level API</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/graph/package-summary.html">org.apache.edgent.graph</a></td>
<td class="colLast">
<div class="block">Low-level graph building API.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/graph/spi/package-summary.html">org.apache.edgent.graph.spi</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/graph/spi/execution/package-summary.html">org.apache.edgent.graph.spi.execution</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/oplet/package-summary.html">org.apache.edgent.oplet</a></td>
<td class="colLast">
<div class="block">Oplets API.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/oplet/core/package-summary.html">org.apache.edgent.oplet.core</a></td>
<td class="colLast">
<div class="block">Core primitive oplets.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/oplet/functional/package-summary.html">org.apache.edgent.oplet.functional</a></td>
<td class="colLast">
<div class="block">Oplets that process tuples using functions.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/oplet/plumbing/package-summary.html">org.apache.edgent.oplet.plumbing</a></td>
<td class="colLast">
<div class="block">Oplets that control the flow of tuples.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/oplet/window/package-summary.html">org.apache.edgent.oplet.window</a></td>
<td class="colLast">
<div class="block">Oplets using windows.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/window/package-summary.html">org.apache.edgent.window</a></td>
<td class="colLast">
<div class="block">Window API.</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="contentContainer">
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Edgent SPI table, listing packages, and an explanation">
<caption><span>Edgent SPI</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/topology/spi/package-summary.html">org.apache.edgent.topology.spi</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/topology/spi/functions/package-summary.html">org.apache.edgent.topology.spi.functions</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/topology/spi/graph/package-summary.html">org.apache.edgent.topology.spi.graph</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/topology/spi/tester/package-summary.html">org.apache.edgent.topology.spi.tester</a></td>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</div>
<div class="contentContainer">
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Other Packages table, listing packages, and an explanation">
<caption><span>Other Packages</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/apps/iot/package-summary.html">org.apache.edgent.apps.iot</a></td>
<td class="colLast">
<div class="block">Applications for use in an Internet of Things environment.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/apps/runtime/package-summary.html">org.apache.edgent.apps.runtime</a></td>
<td class="colLast">
<div class="block">Applications which provide monitoring and failure recovery to other 
 Edgent applications.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/javax/websocket/package-summary.html">org.apache.edgent.javax.websocket</a></td>
<td class="colLast">
<div class="block">Support for working around JSR356 limitations for SSL client container/sockets.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/javax/websocket/impl/package-summary.html">org.apache.edgent.javax.websocket.impl</a></td>
<td class="colLast">
<div class="block">Support for working around JSR356 limitations for SSL client container/sockets.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/runtime/appservice/package-summary.html">org.apache.edgent.runtime.appservice</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/runtime/etiao/package-summary.html">org.apache.edgent.runtime.etiao</a></td>
<td class="colLast">
<div class="block">A runtime for executing an Edgent streaming topology, designed as an embeddable library 
 so that it can be executed in a simple Java application.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/runtime/etiao/graph/package-summary.html">org.apache.edgent.runtime.etiao.graph</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/runtime/etiao/graph/model/package-summary.html">org.apache.edgent.runtime.etiao.graph.model</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/runtime/etiao/mbeans/package-summary.html">org.apache.edgent.runtime.etiao.mbeans</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/runtime/jmxcontrol/package-summary.html">org.apache.edgent.runtime.jmxcontrol</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/runtime/jobregistry/package-summary.html">org.apache.edgent.runtime.jobregistry</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/runtime/jsoncontrol/package-summary.html">org.apache.edgent.runtime.jsoncontrol</a></td>
<td class="colLast">
<div class="block">Control service that takes a Json message and invokes
 an operation on a control service MBean.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/test/svt/package-summary.html">org.apache.edgent.test.svt</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/test/svt/apps/package-summary.html">org.apache.edgent.test.svt.apps</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/test/svt/apps/iotp/package-summary.html">org.apache.edgent.test.svt.apps.iotp</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/edgent/test/svt/utils/sensor/gps/package-summary.html">org.apache.edgent.test.svt.utils.sensor.gps</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/edgent/topology/tester/package-summary.html">org.apache.edgent.topology.tester</a></td>
<td class="colLast">
<div class="block">Testing for a streaming topology.</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="contentContainer"><a name="overview.description">
<!--   -->
</a>
<div class="block">Edgent provides an programming model and micro-service style runtime
for executing streaming analytics at the <i>edge</i>.
<P>
<em>
Apache Edgent is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
</em>
</P>
<H1>Edgent</H1>
<OL>
<LI><a href="#overview">Overview</A></LI>
<LI><a href="#model">Programming Model</A></LI>
<LI><a href="#start">Getting Started</A></LI>
</OL>
<a name="overview"></a>
<H2>Overview</H2>
Edgent provides an programming model and runtime for executing streaming
analytics at the <i>edge</i>. Edgent is focusing on two edge cases:
<UL>
<LI>Internet of Things (IoT) - Widely distributed and/or mobile devices.</LI>
<LI>Enterprise Embedded - Edge analytics within an enterprise, such as local analytic applications of eash system in a machine room, or error log analytics in application servers.</LI>
</UL>
In both cases Edgent applications analyze live data and
send results of that analytics and/or data intermittently
to back-end systems for deeper analysis. An Edgent application
can use analytics to decide when to send information to back-end systems,
such as when the behaviour of the system is outside normal parameters
(e.g. an engine running too hot).
<BR>
Edgent applications do not send data continually
to back-end systems as the cost of communication may be high
(e.g. cellular networks) or bandwidth may be limited.
<P>
Edgent applications communicate with back-end systems through
some form of message hub as there may be millions of edge devices.
Edgent supports these message hubs:
<UL>
<LI> MQTT - Messaging standard for IoT</LI>
<LI> IBM Watson IoT Platform - Cloud based service providing a device model on top of MQTT</LI>
<LI> Apache Kafka - Enterprise message bus</LI>
</UL> 
</P>
<P>
Back-end analytic systems are used to perform analysis on information from Edgent applications that cannot be performed at the edge. Such analysis may be:
<UL>
<LI>Running complex analytic algorithms than require more resources (cpu, memory etc.) than are available at the edge. </LI>
<LI>Maintaining more state per device that can exist at the edge, e.g. hours of state for patients' medical sensors. </LI>
<LI>Correlating device information with multiple data sources:
<UL>
<LI> Weather data</LI>
<LI> Social media data</LI>
<LI> Data of record (e.g patients' medical histories, trucking manifests).</LI>
<LI> Other devices </LI>
<LI>etc.</LI>
</UL>
</LI>
</UL>
<BR>
Back-end systems can interact or control devices based upon their analytics, by sending commands to specific devices, e.g. reduce maximum engine revs to reduce chance of failure before the next scheduled service, or send an alert of an accident ahead.
</P>
<a name="model"></a>
<H2>Programming Model</H2>
Edgent applications are streaming applications in which each <em>tuple</em>
(data item or event) in a <em>stream</em> of data is processed as it occurs.
Additionally, you can process <em>windows</em> (logical subsets) of data.
For example, you could analyze the last 90 seconds of data from a sensor to identify trends in the data
<P>
<H3>Topology functional API</H3>
<H4>Overview</H4>
The primary api is <a href="org/apache/edgent/topology/Topology.html" title="interface in org.apache.edgent.topology"><code>Topology</code></a> which uses a functional
model to build a topology of <a href="org/apache/edgent/topology/TStream.html" title="interface in org.apache.edgent.topology"><code>streams</code></a> for an application.
<BR>
<a href="org/apache/edgent/topology/TStream.html" title="interface in org.apache.edgent.topology"><code>TStream</code></a> is a declaration of a stream of tuples, an application will create streams that source data (e.g. sensor readings) and then apply functions that transform those streams into derived streams, for example simply filtering a stream containg engine temperator readings to a derived stream that only contains readings thar are greater than 100&deg;C.
<BR>
An application terminates processing for a stream by <em>sinking</em> it. Sinking effectively terminates a stream by applying processing to each tuple on the stream (as it occurs) that does not produce a result. Typically this sinking is transmitting the tuple to an external system, for example the messgae hub to send the data to a back-end system, or locally sending the data to a user interface.
</P>
<P>
This programming style is typical for streaming systems and similar APIs are supported by systems such as Apache Flink, Apache Spark Streaming, IBM Streams and Java 8 streams.
</P>
<H4>Functions</H4>
Edgent supports Java 8 and it is encouraged to use Java 8 as functions can be easily and clearly written using lambda expressions.
<H4>Arbitrary Topology</H4>
Simple applications may just be a pipeline of streams, for example, logically:
<BR>
<code>source --&gt; filter --&gt; transform --&gt; aggregate --&gt; send to MQTT</code>
<BR>
However Edgent allows arbitrary topologies including:
<UL>
<LI>Multiple source streams in an application</LI>
<LI>Multiple sinks in an application </LI>
<LI>Multiple processing including sinks against a stream (fan-out)</LI>
<LI>Union of streams (fan-in)  </LI>
<LI>Correlation of streams by allowing streams to be joined</LI>
</UL>
<H3>Graph API</H3>
<H4>Overview</H4>
The <a href="org/apache/edgent/graph/Graph.html" title="interface in org.apache.edgent.graph"><code>graph</code></a> API is a lower-level API that the
topology api is built on top of. A graph consists of
<a href="org/apache/edgent/oplet/Oplet.html" title="interface in org.apache.edgent.oplet"><code>oplet</code></a> invocations connected by streams.
The oplet invocations contain the processing applied to each tuple
on streams connected to their input ports. Processing by the oplet
submits tuples to its output ports for subsequent processing
by downstream connected oplet invocations.
<a name="start"></a>
<H2>Getting Started</H2>
Below, <code>&lt;edgent-target&gt;</code> refers to an Edgent release's platform target
directory such as <code>.../edgent/java8</code>.
<P>
A number of sample Java applications are provided that demonstrate use of Edgent.
<BR>
The Java code for the samples is under <code>&lt;edgent-target&gt;/samples</code>.
<P>
Shell scripts to run the samples are <code>&lt;edgent-target&gt;/scripts</code>.
See the <code>README</code> there.
<P>
Summary of samples:
<TABLE border=1 width="80%" table-layout="auto">
<TR class="rowColor"><TH>Sample</TH><TH>Description</TH><TH>Focus</TH></TR>
<TR class="altColor"><TD><a href="org/apache/edgent/samples/topology/HelloEdgent.html" title="class in org.apache.edgent.samples.topology"><code>HelloEdgent</code></a></TD>
  <TD>Prints Hello Edgent! to standard output.</TD>
  <TD>Basic mechanics of declaring a topology and executing it.</TD></TR>
<TR class="altColor"><TD><a href="org/apache/edgent/samples/topology/PeriodicSource.html" title="class in org.apache.edgent.samples.topology"><code>PeriodicSource</code></a></TD>
  <TD>Polls a random number generator for a new value every second
      and then prints out the raw value and a filtered and transformed stream.</TD>
  <TD>Polling of a data value to create a source stream.</TD></TR>
<TR class="altColor"><TD><a href="org/apache/edgent/samples/topology/SensorsAggregates.html" title="class in org.apache.edgent.samples.topology"><code>SensorsAggregates</code></a></TD>
  <TD>Demonstrates partitioned aggregation and filtering of simulated sensors
      that are bursty in nature, so that only intermittently
      is the data output to <code>System.out</code></TD>
  <TD>Simulated sensors with windowed aggregation</TD></TR>
<TR class="altColor"><TD><a href="org/apache/edgent/samples/topology/SimpleFilterTransform.html" title="class in org.apache.edgent.samples.topology"><code>SimpleFilterTransform</code></a></TD>
  <TD></TD>
  <TD></TD></TR>
<TR class="altColor"><TD><a href="./org/apache/edgent/samples/connectors/file/package-summary.html">
      File</a></TD>
  <TD>Write a stream of tuples to files.  Watch a directory for new files
      and create a stream of tuples from the file contents.</TD>
  <TD>Use of the <a href="./org/apache/edgent/connectors/file/package-summary.html">
      File stream connector</a></TD></TR>
<TR class="altColor"><TD><a href="./org/apache/edgent/samples/connectors/iotp/package-summary.html">
      IotfSensors, IotfQuickstart</a></TD>
  <TD>Sends simulated sensor readings to an IBM Watson IoT Platform instance as device events.</TD>
  <TD>Use of the <a href="./org/apache/edgent/connectors/iotp/package-summary.html">
      IBM Watson IoT Platform connector</a> to send device events and receive device commands.</TD></TR>
<TR class="altColor"><TD><a href="./org/apache/edgent/samples/connectors/jdbc/package-summary.html">
      JDBC</a></TD>
  <TD>Write a stream of tuples to an Apache Derby database table.
      Create a stream of tuples by reading a table.</TD>
  <TD>Use of the <a href="./org/apache/edgent/connectors/jdbc/package-summary.html">
      JDBC stream connector</a></TD></TR>
<TR class="altColor"><TD><a href="./org/apache/edgent/samples/connectors/kafka/package-summary.html">
      Kafka</a></TD>
  <TD>Publish a stream of tuples to a Kafka topic. 
      Create a stream of tuples by subscribing to a topic and receiving 
      messages from it.</TD>
  <TD>Use of the <a href="./org/apache/edgent/connectors/kafka/package-summary.html">
      Kafka stream connector</a></TD></TR>
<TR class="altColor"><TD><a href="./org/apache/edgent/samples/connectors/mqtt/package-summary.html">
      MQTT</a></TD>
  <TD>Publish a stream of tuples to a MQTT topic. 
      Create a stream of tuples by subscribing to a topic and receiving 
      messages from it.</TD>
  <TD>Use of the <a href="./org/apache/edgent/connectors/mqtt/package-summary.html">
      MQTT stream connector</a></TD></TR>
<TR class="altColor"><TD><a href="./org/apache/edgent/samples/apps/sensorAnalytics/package-summary.html">
      SensorAnalytics</a></TD>
  <TD>Demonstrates a Sensor Analytics application that includes: 
      configuration control, a device of one or more sensors and
      some typical analytics, use of MQTT for publishing results and receiving
      commands, local results logging, conditional stream tracing.</TD>
  <TD>A more complete sample application demonstrating common themes.</TD></TR>
</TABLE>
<BR>
Other samples are also provided but have not yet been fully documented.
Feel free to explore them.
<H2>Building Applications</H2>
You need to include one or more Edgent jars in your <code>classpath</code> depending
on what features your application uses.
<P>
Include one or more of the topology providers:
<ul>
<li><code>&lt;edgent-target&gt;/lib/edgent.providers.iot.jar</code> - if you use the
<a href="org/apache/edgent/providers/iot/IotProvider.html" title="class in org.apache.edgent.providers.iot"><code>IotProvider</code></a></li>
<li><code>&lt;edgent-target&gt;/lib/edgent.providers.direct.jar</code> - if you use the
<a href="org/apache/edgent/providers/direct/DirectProvider.html" title="class in org.apache.edgent.providers.direct"><code>DirectProvider</code></a></li>
<li><code>&lt;edgent-target&gt;/lib/edgent.providers.development.jar</code> - if you use the
<a href="org/apache/edgent/providers/development/DevelopmentProvider.html" title="class in org.apache.edgent.providers.development"><code>DevelopmentProvider</code></a></li>
</ul>
Include the jar of any Edgent connector you use:
<ul>
<li><code>&lt;edgent-target&gt;/connectors/command/lib/edgent.connectors.command.jar</code></li>
<li><code>&lt;edgent-target&gt;/connectors/csv/lib/edgent.connectors.csv.jar</code></li>
<li><code>&lt;edgent-target&gt;/connectors/file/lib/edgent.connectors.file.jar</code></li>
<li><code>&lt;edgent-target&gt;/connectors/http/lib/edgent.connectors.http.jar</code></li>
<li><code>&lt;edgent-target&gt;/connectors/iotp/lib/edgent.connectors.iotp.jar</code></li>
<li><code>&lt;edgent-target&gt;/connectors/jdbc/lib/edgent.connectors.jdbc.jar</code></li>
<li><code>&lt;edgent-target&gt;/connectors/kafka/lib/edgent.connectors.kafka.jar</code></li>
<li><code>&lt;edgent-target&gt;/connectors/mqtt/lib/edgent.connectors.mqtt.jar</code></li>
<li><code>&lt;edgent-target&gt;/connectors/pubsub/lib/edgent.connectors.pubsub.jar</code></li>
<li><code>&lt;edgent-target&gt;/connectors/wsclient-javax.websocket/lib/edgent.connectors.wsclient.javax.websocket.jar</code> [*]</li>
</ul>
[*] You also need to include a <code>javax.websocket</code> client implementation
if you use the <code>wsclient</code> connector.  Include the following to use
an Eclipse Jetty based implementation:
<ul>
<li><code>&lt;edgent-target&gt;/connectors/javax.websocket-client/lib/javax.websocket-client.jar</code></li>
</ul>
<p>
Include jars for any Edgent analytic features you use:
<ul>
<li><code>&lt;edgent-target&gt;/analytics/math3/lib/edgent.analytics.math3.jar</code></li>
<li><code>&lt;edgent-target&gt;/analytics/sensors/lib/edgent.analytics.sensors.jar</code></li>
</ul>
Include jars for any Edgent utility features you use:
<ul>
<li><code>&lt;edgent-target&gt;/utils/metrics/lib/edgent.utils.metrics.jar</code> - for the <code>org.apache.edgent.metrics</code> package</li>
</ul>
Edgent uses <a href="www.slf4j.org">slf4j</a> for logging,
leaving the decision of the actual logging implementation to your application
(e.g., <code>java.util.logging</code> or <code>log4j</code>).  
For <code>java.util.logging</code> you can include:
<ul>
<li><code>&lt;edgent-target&gt;/ext/ slf4j-jdk14-1.7.12.jar</code></li>
</ul></div>
</div>
<!-- ======= 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 class="navBarCell1Rev">Overview</li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-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 class="aboutLanguage"><a href="http://edgent.incubator.apache.org">Apache Edgent (incubating)</a></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?overview-summary.html" target="_top">Frames</a></li>
<li><a href="overview-summary.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>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2017 The Apache Software Foundation. All Rights Reserved - 4744f56-20170226-1707</small></p>
</body>
</html>
