Contents
This sample demonstrates writing CSV data to a TCP socket. The CSV Socket Writer
adapter is configured to connect to a server running on port 9000 of the local computer
to write CSV data. The sample comes with a very simple server written in Java. The
source code and compiled JAR of this server can be found in the sample's directory. The
server simply listens on port 9000 and writes the contents to a file. The default
output file is output.txt and the default port is 9000,
but you can specify a different file and port on the command line that starts the
server.
In StreamBase Studio, import this sample with the following steps:
-
From the top menu, click → .
-
Select this sample from the Embedded Adapters list.
-
Click OK.
StreamBase Studio creates a single project containing the sample files.
By default, the sample files are installed in:
- On Windows
-
C:\Program Files\StreamBase Systems\StreamBase.n.m\sample\adapter\embedded\csvsocketwriter\ - On UNIX
-
/opt/streambase/sample/adapter/embedded/csvsocketwriter/
When you load the sample into StreamBase Studio, Studio copies the
sample project's files to your Studio workspace. StreamBase Systems
recommends that you use the workspace copy of the sample, especially on UNIX, where
you may not have write access to /opt/streambase. In
the default installation, the path to this sample in your Studio workspace is:
UNIX: ~/streambase-studio-n.m-workspace/sample_adapter_embedded_cvssocketwriter Windows XP: C:\Documents and Settings\username\My Documents\StreamBase Studion.mWorkspace\ sample_adapter_embedded_cvssocketwriter Windows Vista: C:\Users\username\Documents\StreamBase Studion.mWorkspace\ sample_adapter_embedded_cvssocketwriter
-
Open a terminal window on UNIX, or a StreamBase Command Prompt on Windows.
-
In the window, navigate to the directory where the sample is installed, or to your workspace copy of the sample, as described above
-
In the window, run the sample server with the following command:
java -jar simpleserver.jar
You can specify a different output file name and a different TCP port for the server using the syntax like the following examples:
java -jar simpleserver.jar output.txt 3000 java -jar simpleserver.jar out.csv 10005
To change the port number for the simple server, you must also specify the output file name. The first example above preserves the default file name and changes only the port number. The second example changes both the output file name and port number.
-
In the Package Explorer, double-click to open the
CSVSocketWriterTest.sbappapplication. Make sure the application is the currently active tab in the EventFlow Editor. -
Click the
Run button. This opens the
Test/Debug perspective and starts the application.
-
Select the Manual Input tab.
-
Enter the following values, then press :
Field Value a 10 b Google c 20.0 -
When done, press F9 or click the
Stop Running Application button.
-
In the window running
simpleserver, press Ctrl-C to stop the server. -
The filename specified while starting the server or default output.txt should now contain tuples formatted as shown in this example:
10,Google,20.0
If you used the default output file name, or specified another file written to the sample project directory, you might have to select the project name in the Package Explorer and press F5 to refresh the project's contents before the output file appears.
This section describes how to run the sample in UNIX terminal windows or Windows command prompt windows. On Windows, be sure to use the StreamBase Command Prompt from the Start menu as described in the Test/Debug Guide, not the default command prompt.
-
Open three terminal windows on UNIX, or three StreamBase Command Prompts on Windows. In each window, navigate to the directory where the sample is installed, or to your workspace copy of the sample, as described above.
-
In window 1, run the sample server with this command:
java -jar simpleserver.jarTo specify a different output file name or port number, use the syntax described in step 3 of the previous section. -
In window 2, run
sbd CSVSocketWriterTest.sbapp -
In window 3, run
sbc enqueue WriteTuple < inputstream.dat -
When done, run
sbadmin shutdown -
In window 1, press Ctrl-C to stop the simple server.
-
In the current directory, look for the file
output.txt(or the filename specified while starting the simple server) .
