TIBCO ActiveSpaces Operator Sample

This topic describes how to run the TIBCO ActiveSpaces® operator sample application, which illustrates how to use the operators with an ActivesSpaces Metaspace. For more information on this operator, see Using the TIBCO ActiveSpaces Operators.

There is a separate sample to show how to use the deprecated see Legacy TIBCO ActiveSpaces operator. If you are developing a new project, use the operators described in this sample.

Sample Overview

This sample includes a number of ActiveSpaces operators, which by default connect to an ActiveSpaces Metaspace named sbms, which is assumed to already be running, and a Space called sbspace. Once connected, you can use the sample to send and receive tuples from sbspace using the various ActiveSpaces Operators.

This Sample's Files

This sample has the following files:

  • The sample EventFlow application, activespaces.sbapp.

  • A corresponding sbd.sbconf, which is used by the StreamBase Server to correctly configure the Java environment to locate the ActiveSpaces libraries.

  • A text file named asAdminCLIScript.txt which can be used as an input to the ActiveSpaces Admin CommandLine Interface utility to create the required Metaspace as well as a Space with the required schema.

  • The sample also contains an EventFlow application to illustrate the legacy ActiveSpaces operator, activespaceslegacy.sbapp.

The Studio project for this sample contains files for the current and legacy versions of the ActiveSpaces operators.

Running This Sample in StreamBase Studio

The steps to run this sample in Studio are as follows:

  1. Before running you must configure the project to locate and load the ActiveSpaces libraries. In the Package Explorer, right-click on the top-level node of your project and select Build Path | Configure Build Path. On the Libraries tab of the dialog box that appears, if there is no entry for as-common.jar in the list, click the Add External JARs button. This will bring up file browser; navigate to your ActiveSpaces install's lib directory, select as-common.jar and click OK. Back in the Libraries tab, an entry will have been added for as-common.jar.

  2. Expand the as-common.jar node, select Native Library Location and click the Edit button. Enter the correct location of the ActiveSpaces lib subdirectory and click OK, then click OK to dismiss the properties dialog.

  3. By default, the sample is configured to run both the StreamBase application and the second ActiveSpaces node locally (using the loopback 127.0.0.1 IP address). If you wish to run the nodes on separate machines you will have to edit asAdminCLIScript.txt and sbd.sbconf to reflect the actual IP addresses involved.

  4. Make sure there is a Metaspace and Space currently up and running on the machine to which you wish to connect. The sample includes a configuration file called asAdminCLIScript.txt which can be used to start such a Metaspace and correctly-defined Space on your machine using the following command, run from the $AS_HOME/lib directory:

    java -jar as-admin.jar -i <path_to_sample_project>/asAdminCLIScript.txt

  5. In the Package Explorer, double-click to open the activespaces.sbapp application.

  6. Make sure the application is the currently active tab in the EventFlow editor, then click the Run button. This opens the SB Test/Debug perspective and starts the application.

  7. In the Manual Input view, select the InBeginTx input stream.

  8. Enter the following values:

    • passthrough.id: ID1

    Click Send Data (which will trigger the tuple to be sent to an ActiveSpaces Begin Transaction Operator and cause a transaction to be initiated during which two tuples are sent to the Space as a single transaction), and observe that the OutCommitTx output stream received a tuple with a matching ID value, indicated that the transaction has been committed to the space.

  9. Still in the Manual Input view, select the InBrowse stream and click Send Data (leaving all fields null). This will cause the Space to list all its tuples (the asTuple field contains the current value of each requested tuple) on the OutBrowse stream, terminating the list with a punctuation tuple with its asTuple field set to null.

  10. You may similarly add tuples to the Space using the InPut stream, remove tuples using the InTake stream, etc. Of note is the InControl stream which allows you to send control commands to, for example, disconnect from the Metaspace.

  11. When done, press F9 or click the Stop Running Application button.

Importing This Sample into StreamBase Studio

In StreamBase Studio, import this sample with the following steps:

  • From the top-level menu, select FileLoad StreamBase Sample.

  • Type active to narrow the list of options.

  • Select TIBCO ActiveSpaces Operators from the Extending StreamBase category.

  • Click OK.

StreamBase Studio creates a single project for the ActiveSpaces Operator samples in your current Studio workspace.

Sample Location

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 the permission problems that can occur when trying to work with the initially installed location of the sample. The default workspace location for this sample is:

studio-workspace/sample_activespaces

See Default Installation Directories for the location of studio-workspace on your system.

In the default TIBCO StreamBase installation, this sample's files are initially installed in:

streambase-install-dir/sample/activespaces

See Default Installation Directories for the default location of studio-workspace on your system.