| <!DOCTYPE html > |
| <html> |
| <head> |
| <title>source - io.gearpump.streaming.source</title> |
| <meta name="description" content="source - io.gearpump.streaming.source" /> |
| <meta name="keywords" content="source io.gearpump.streaming.source" /> |
| <meta http-equiv="content-type" content="text/html; charset=UTF-8" /> |
| |
| <link href="../../../../lib/template.css" media="screen" type="text/css" rel="stylesheet" /> |
| <link href="../../../../lib/diagrams.css" media="screen" type="text/css" rel="stylesheet" id="diagrams-css" /> |
| <script type="text/javascript" src="../../../../lib/jquery.js" id="jquery-js"></script> |
| <script type="text/javascript" src="../../../../lib/jquery-ui.js"></script> |
| <script type="text/javascript" src="../../../../lib/template.js"></script> |
| <script type="text/javascript" src="../../../../lib/tools.tooltip.js"></script> |
| |
| <script type="text/javascript"> |
| if(top === self) { |
| var url = '../../../../index.html'; |
| var hash = 'io.gearpump.streaming.source.package'; |
| var anchor = window.location.hash; |
| var anchor_opt = ''; |
| if (anchor.length >= 1) |
| anchor_opt = '@' + anchor.substring(1); |
| window.location.href = url + '#' + hash + anchor_opt; |
| } |
| </script> |
| |
| </head> |
| <body class="value"> |
| <div id="definition"> |
| <img src="../../../../lib/package_big.png" /> |
| <p id="owner"><a href="../../../package.html" class="extype" name="io">io</a>.<a href="../../package.html" class="extype" name="io.gearpump">gearpump</a>.<a href="../package.html" class="extype" name="io.gearpump.streaming">streaming</a></p> |
| <h1>source</h1><span class="permalink"> |
| <a href="../../../../index.html#io.gearpump.streaming.source.package" title="Permalink" target="_top"> |
| <img src="../../../../lib/permalink.png" /> |
| </a> |
| </span> |
| </div> |
| |
| <h4 id="signature" class="signature"> |
| <span class="modifier_kind"> |
| <span class="modifier"></span> |
| <span class="kind">package</span> |
| </span> |
| <span class="symbol"> |
| <span class="name">source</span> |
| </span> |
| </h4> |
| |
| <div id="comment" class="fullcommenttop"></div> |
| |
| |
| <div id="mbrsel"> |
| <div id="textfilter"><span class="pre"></span><span class="input"><input id="mbrsel-input" type="text" accesskey="/" /></span><span class="post"></span></div> |
| |
| |
| <div id="visbl"> |
| <span class="filtertype">Visibility</span> |
| <ol><li class="public in"><span>Public</span></li><li class="all out"><span>All</span></li></ol> |
| </div> |
| </div> |
| |
| <div id="template"> |
| <div id="allMembers"> |
| |
| |
| <div id="types" class="types members"> |
| <h3>Type Members</h3> |
| <ol><li name="io.gearpump.streaming.source.DataSource" visbl="pub" data-isabs="true" fullComment="yes" group="Ungrouped"> |
| <a id="DataSourceextendsSerializable"></a> |
| <a id="DataSource:DataSource"></a> |
| <h4 class="signature"> |
| <span class="modifier_kind"> |
| <span class="modifier"></span> |
| <span class="kind">trait</span> |
| </span> |
| <span class="symbol"> |
| <a href="DataSource.html"><span class="name">DataSource</span></a><span class="result"> extends <span class="extype" name="java.io.Serializable">Serializable</span></span> |
| </span> |
| </h4><span class="permalink"> |
| <a href="../../../../index.html#io.gearpump.streaming.source.package@DataSourceextendsSerializable" title="Permalink" target="_top"> |
| <img src="../../../../lib/permalink.png" /> |
| </a> |
| </span> |
| <p class="shortcomment cmt">interface to implement custom source where data is read into the system.</p><div class="fullcomment"><div class="comment cmt"><p>interface to implement custom source where data is read into the system. |
| a DataSource could be a message queue like kafka or simply data generation source.</p><p>an example would be like</p><pre>GenStringSource <span class="kw">extends</span> DataSource { |
| |
| <span class="kw">def</span> open(context: TaskContext, startTime: <span class="std">Option</span>[TimeStamp]): <span class="std">Unit</span> = {} |
| |
| <span class="kw">def</span> read(batchSize: <span class="std">Int</span>): <span class="std">List</span>[Message] = { |
| <span class="std">List</span>.fill(batchSize)(Message(<span class="lit">"message"</span>)) |
| } |
| |
| <span class="kw">def</span> close(): <span class="std">Unit</span> = {} |
| }</pre><p>subclass is required to be serializable |
| </p></div></div> |
| </li><li name="io.gearpump.streaming.source.DataSourceTask" visbl="pub" data-isabs="false" fullComment="yes" group="Ungrouped"> |
| <a id="DataSourceTaskextendsTask"></a> |
| <a id="DataSourceTask:DataSourceTask"></a> |
| <h4 class="signature"> |
| <span class="modifier_kind"> |
| <span class="modifier"></span> |
| <span class="kind">class</span> |
| </span> |
| <span class="symbol"> |
| <a href="DataSourceTask.html"><span class="name">DataSourceTask</span></a><span class="result"> extends <a href="../task/Task.html" class="extype" name="io.gearpump.streaming.task.Task">Task</a></span> |
| </span> |
| </h4><span class="permalink"> |
| <a href="../../../../index.html#io.gearpump.streaming.source.package@DataSourceTaskextendsTask" title="Permalink" target="_top"> |
| <img src="../../../../lib/permalink.png" /> |
| </a> |
| </span> |
| <p class="shortcomment cmt">general task that runs any <a href="DataSource.html" class="extype" name="io.gearpump.streaming.source.DataSource">DataSource</a> |
| see <a href="DataSourceProcessor$.html" class="extype" name="io.gearpump.streaming.source.DataSourceProcessor">DataSourceProcessor</a> for its usage</p><div class="fullcomment"><div class="comment cmt"><p>general task that runs any <a href="DataSource.html" class="extype" name="io.gearpump.streaming.source.DataSource">DataSource</a> |
| see <a href="DataSourceProcessor$.html" class="extype" name="io.gearpump.streaming.source.DataSourceProcessor">DataSourceProcessor</a> for its usage</p><p>DataSourceTask calls</p><ul><li><code>DataSource.open</code> in <code>onStart</code> and pass in <a href="../task/TaskContext.html" class="extype" name="io.gearpump.streaming.task.TaskContext">io.gearpump.streaming.task.TaskContext</a> and application start time</li><li><code>DataSource.read</code> in each <code>onNext</code>, which reads a batch of messages whose size are defined by |
| <code>gearpump.source.read.batch.size</code>.</li><li><code>DataSource.close</code> in <code>onStop</code> |
| </li></ul></div></div> |
| </li><li name="io.gearpump.streaming.source.DefaultTimeStampFilter" visbl="pub" data-isabs="false" fullComment="no" group="Ungrouped"> |
| <a id="DefaultTimeStampFilterextendsTimeStampFilter"></a> |
| <a id="DefaultTimeStampFilter:DefaultTimeStampFilter"></a> |
| <h4 class="signature"> |
| <span class="modifier_kind"> |
| <span class="modifier"></span> |
| <span class="kind">class</span> |
| </span> |
| <span class="symbol"> |
| <a href="DefaultTimeStampFilter.html"><span class="name">DefaultTimeStampFilter</span></a><span class="result"> extends <a href="../transaction/api/TimeStampFilter.html" class="extype" name="io.gearpump.streaming.transaction.api.TimeStampFilter">TimeStampFilter</a></span> |
| </span> |
| </h4><span class="permalink"> |
| <a href="../../../../index.html#io.gearpump.streaming.source.package@DefaultTimeStampFilterextendsTimeStampFilter" title="Permalink" target="_top"> |
| <img src="../../../../lib/permalink.png" /> |
| </a> |
| </span> |
| <p class="shortcomment cmt">default TimeStampFilter that filters out messages with smaller timestamps |
| </p> |
| </li></ol> |
| </div> |
| |
| |
| |
| <div id="values" class="values members"> |
| <h3>Value Members</h3> |
| <ol><li name="io.gearpump.streaming.source.DataSourceConfig" visbl="pub" data-isabs="false" fullComment="no" group="Ungrouped"> |
| <a id="DataSourceConfig"></a> |
| <a id="DataSourceConfig:DataSourceConfig"></a> |
| <h4 class="signature"> |
| <span class="modifier_kind"> |
| <span class="modifier"></span> |
| <span class="kind">object</span> |
| </span> |
| <span class="symbol"> |
| <a href="DataSourceConfig$.html"><span class="name">DataSourceConfig</span></a> |
| </span> |
| </h4><span class="permalink"> |
| <a href="../../../../index.html#io.gearpump.streaming.source.package@DataSourceConfig" title="Permalink" target="_top"> |
| <img src="../../../../lib/permalink.png" /> |
| </a> |
| </span> |
| |
| </li><li name="io.gearpump.streaming.source.DataSourceProcessor" visbl="pub" data-isabs="false" fullComment="yes" group="Ungrouped"> |
| <a id="DataSourceProcessor"></a> |
| <a id="DataSourceProcessor:DataSourceProcessor"></a> |
| <h4 class="signature"> |
| <span class="modifier_kind"> |
| <span class="modifier"></span> |
| <span class="kind">object</span> |
| </span> |
| <span class="symbol"> |
| <a href="DataSourceProcessor$.html"><span class="name">DataSourceProcessor</span></a> |
| </span> |
| </h4><span class="permalink"> |
| <a href="../../../../index.html#io.gearpump.streaming.source.package@DataSourceProcessor" title="Permalink" target="_top"> |
| <img src="../../../../lib/permalink.png" /> |
| </a> |
| </span> |
| <p class="shortcomment cmt">utility that helps user to create a DAG starting with <a href="DataSourceTask.html" class="extype" name="io.gearpump.streaming.source.DataSourceTask">DataSourceTask</a> |
| user should pass in a <a href="DataSource.html" class="extype" name="io.gearpump.streaming.source.DataSource">DataSource</a></p><div class="fullcomment"><div class="comment cmt"><p>utility that helps user to create a DAG starting with <a href="DataSourceTask.html" class="extype" name="io.gearpump.streaming.source.DataSourceTask">DataSourceTask</a> |
| user should pass in a <a href="DataSource.html" class="extype" name="io.gearpump.streaming.source.DataSource">DataSource</a></p><p>here is an example to build a DAG that reads from Kafka source followed by word count</p><pre><span class="kw">val</span> source = <span class="kw">new</span> KafkaSource() |
| <span class="kw">val</span> sourceProcessor = DataSourceProcessor(source, <span class="num">1</span>) |
| <span class="kw">val</span> split = Processor[Split](<span class="num">1</span>) |
| <span class="kw">val</span> sum = Processor[Sum](<span class="num">1</span>) |
| <span class="kw">val</span> dag = sourceProcessor ~> split ~> sum</pre></div></div> |
| </li><li name="io.gearpump.streaming.source.DataSourceTask" visbl="pub" data-isabs="false" fullComment="no" group="Ungrouped"> |
| <a id="DataSourceTask"></a> |
| <a id="DataSourceTask:DataSourceTask"></a> |
| <h4 class="signature"> |
| <span class="modifier_kind"> |
| <span class="modifier"></span> |
| <span class="kind">object</span> |
| </span> |
| <span class="symbol"> |
| <a href="DataSourceTask$.html"><span class="name">DataSourceTask</span></a> |
| </span> |
| </h4><span class="permalink"> |
| <a href="../../../../index.html#io.gearpump.streaming.source.package@DataSourceTask" title="Permalink" target="_top"> |
| <img src="../../../../lib/permalink.png" /> |
| </a> |
| </span> |
| |
| </li></ol> |
| </div> |
| |
| |
| |
| |
| </div> |
| |
| <div id="inheritedMembers"> |
| |
| |
| </div> |
| |
| <div id="groupedMembers"> |
| <div class="group" name="Ungrouped"> |
| <h3>Ungrouped</h3> |
| |
| </div> |
| </div> |
| |
| </div> |
| |
| <div id="tooltip"></div> |
| |
| <div id="footer"> </div> |
| |
| |
| </body> |
| </html> |