Contents
This sample demonstrates the use of the TIBCO StreamBase® Output Adapter for Wombat MAMA. See Wombat MAMA Output Adapter for details on the structure and use of this adapter.
-
To get this sample to typecheck you must specify the location of the MAMA SDK JAR file, which is typically named
mamajni.jar
. Follow these steps:-
In the Package Explorer, right click this sample's top-level project folder and select Properties from the context menu.
-
Select Java Build Path in the contents column.
-
Select the Libraries tab.
-
Click
. -
Navigate to the location of and select the
mamajni.jar
file on your local file system. -
Click
. -
Refresh the project's typecheck environment by pressing Ctrl+F5 or by selecting the project folder in the Package Explorer, right clicking, and selecting → from the context menu.
The MAMA API loads the transport configuration from a file named
mama.properties
, which should reside in a directory set in the WOMBAT_PATH environment variable. An examplemama.properties
file is available insample_config/mama.properties
. The publishing adapter'sMiddleware
andTransport
properties must match the properties set inmama.properties
.In order for a MAMA client to receive data from the MAMA output adapter, it must use a transport complementary to the adapter's transport. The specific transport settings depend upon the middleware used. The file
sample_config/mama.properties
provides an example of two LBM transports that can be used together: trans_lbt_a and trans_lbt_b. The incoming and outgoing addresses of these transports are reversed; one's incoming channel is the other's outgoing channel.The sample includes several applications that demonstrate different usages of the adapter:
JustPublish.sbapp
-
Demonstrates publishing quotes from tuples enqueued to an Input Stream.
MamaRepublishDynamicSubscribe.sbapp
-
Demonstrates a republishing scenario in which messages are received from the MAMA input adapter and published on a different source by the MAMA output adapter.
MamaRepublishPassthroughCache.sbapp
-
Demonstrates a republishing scenario in which messages are passed between the MAMA input and output adapters via the passthrough cache.
-
-
Double-click to open the sample application,
JustPub.sbapp
. -
Double-click on MamaOutput adapter. In the Properties view, select the Adapter Properties tab. Set the middleware and transport options to match those defined in your
mama.properties
file on WOMBAT_PATH. -
In the Adapter Properties tab, the source is set to an operator parameter called PUB_SOURCE. This parameter has been defined in
sbd.sbconf
. You can change the source to anything you like, but make note of the value for use with your subscribing MAMA client. -
Click the Run button. This opens the Test/Debug perspective and starts the application.
-
In the Test/Debug Perspective, open the Manual Input view. Enter a quote for any symbol, set the MdMsgType to 1 (the Init msg).
-
Open a shell on your system. Set the WOMBAT_PATH and system libraries path to be able to run a mamalistenc sample client provided by Wombat. Start mamalistenc as follows: mamalistenc -m [your middleware] -tport [the transport that will connect to publisher's transport] -S [source from MamaOutput adapter properties] -s [symbol for which you entered quote above] -dict_tport [transport to get dictionary, if running with feedhandler] -B [if no feed handler, run without dictionary]
-
Observe the mamalistenc client receive the initial value for the symbol. Try to enter another quote for the same symbol in the Manual Input view in Studio. Observe an update in the mamalistenc output.
-
When done, press F9 or click the Stop Running Application button.
In StreamBase Studio, import this sample with the following steps:
-
From the top menu, click
→ . -
Select this sample from the Embedded Output Adapters list.
-
Click OK.
StreamBase Studio creates a project for this sample.
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_adapter_embedded_wombat-mama-pub
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/adapter/embedded/wombat-mama-pub
See Default Installation Directories for the default location of studio-workspace
on your system.