Examples

This example shows the use of multiple JMSSource operators with different parameter combinations.


use com.teracloud.streams.jms::JMSSource;
composite Main {
  graph
    // JMSSource operator with the default etc/connections.xml (relative to the application directory)
    // connections document
    stream <int32 id, rstring fname, rstring lname> 
    MyPersonNamesStream1 = JMSSource() {
      param
        connection : "amqConn";
        access     : "amqAccess";
    }

    // JMSSource operator with fully qualified name of connections.xml
    stream <int32 id, rstring fname, rstring lname>
    MyPersonNamesStream2 = JMSSource() {
      param
        connectionDocument : "/home/streamsuser/connections/JMSconnections.xml";
        connection         : "amqConn";
        access             : "amqAccess";
    }

    // JMSSource operator with optional output error port specified
    (stream <int32 id, rstring fname, rstring lname> MyPersonNamesStream3 ;
    stream <rstring errorMessage> ErrorStream) = JMSSource() {
      param
        connection : "amqConn";
        access     : "amqAccess";
    }

    // JMSSource operator with optional initDelay and reconnectionPolicy specified
    stream <int32 id, rstring fname, rstring lname>
    MyPersonNamesStream4 = JMSSource() {
      param
        connection         : "amqConn";
        access             : "amqAccess";
        reconnectionPolicy : "NoRetry";
        initDelay          : 10;
    }

    // JMSSource Operator with optional period and reconnectionPolicy specified
    stream <int32 id, rstring fname, rstring lname>
    MyPersonNamesStream5 = JMSSource() {
      param
      connection         : "amqConn";
      access             : "amqAccess";
      reconnectionPolicy : "InfiniteRetry";
      period             : 1.20;
    }

    // JMSSource operator with reconnectionPolicy specified as BoundedRetry
    stream <int32 id, rstring fname, rstring lname>
    MyPersonNamesStream6 = JMSSource() {
      param
        connection         : "amqConn";
        access             : "amqAccess";
        reconnectionPolicy : "BoundedRetry";
        reconnectionBound : 2;
        period: 1.20;
    }
}