Contents
This sample application takes input from a provided feed simulation. It splits
incoming trades into smaller trades of qty = split_size
and, if necessary, adds an additional
trade for the remainder of qty/split_size
. The filter
operator is a required part of creating a conditional loop.
Arcs usually take their schemas from upstream operators. But the arc that creates the
loop in loop.sbapp
requires an explicit schema. As a
best practice, when possible, re-use the named schema from the incoming stream (in
this case, InputStream
) for the looping arc's schema.
In StreamBase Studio, import this sample with the following steps:
-
From the top-level menu, select
> . -
Enter
loop
to narrow the list of options. -
Select the Demonstrates a simple loop connection sample from the Applications category.
-
Click
.
StreamBase Studio creates a project for the sample.
To run this sample:
-
In the Project Explorer view, open the sample you just loaded.
If you see red marks on a project folder, wait a moment for the project to load its features.
If the red marks do not resolve themselves after a minute, select the project, right-click, and select
> from the context menu. -
Open the
src/main/eventflow/
folder.packageName
-
Open the
loop.sbapp
file and click the Run button. This opens the SB Test/Debug perspective and starts the module. -
Open the Feed Simulations tab.
-
Select the
loop-feedsim.sbfs
feed simulation file and click . -
Observe the tuples emitted from the
SmallTradesOut
stream. -
When done, press F9 or click the Terminate EventFlow Fragment button.
When you load the sample into StreamBase® Studio, Studio copies the sample project's files to your Studio workspace, which is normally part of your home directory, with full access rights.
Important
Load this sample in StreamBase® Studio, and thereafter use the Studio workspace copy of the sample to run and test it, even when running from the command prompt.
Using the workspace copy of the sample avoids permission problems. The default workspace location for this sample is:
studio-workspace
/sample_loop
See Default Installation
Directories for the default location of studio-workspace
on your system.