Wikimedia EventStreams Adapter

Introduction

The TIBCO StreamBase® Wikimedia EventStreams adapter processes continuous streams of structured event data from one or more EventStreams web services associated with wikipedia.org.

The EventStreams adapter provides access to data streams emitted as a web service by Wikipedia by means of the Wikimedia EventStreams web service API. These data streams include the RecentChanges, Delete-page, and Create-page streams, among others.

The addresses of the wikipedia.org EventStreams are built in to the adapter and do not need to be specified.

Adapter Properties

This section describes the properties you can set for this adapter, using the various tabs of the Properties view in StreamBase Studio.

General Tab

Name: Use this required field to specify or change the name of this instance of this component, which must be unique in the current EventFlow module. The name must contain only alphabetic characters, numbers, and underscores, and no hyphens or other special characters. The first character must be alphabetic or an underscore.

Adapter: A read-only field that shows the formal name of the adapter.

Start with application: If this field is set to Yes (default) or to a module parameter that evaluates to true, this instance of this adapter starts as part of the JVM engine that runs this EventFlow module. If this field is set to No or to a module parameter that evaluates to false, the adapter instance is loaded with the engine, but does not start until you send an sbadmin resume command, or until you start the component with StreamBase Manager.

Enable Error Output Port: Select this check box to add an Error Port to this component. In the EventFlow canvas, the Error Port shows as a red output port, always the last port for the component. See Using Error Ports to learn about Error Ports.

Description: Optionally enter text to briefly describe the component's purpose and function. In the EventFlow canvas, you can see the description by pressing Ctrl while the component's tooltip is displayed.

Operator Properties Tab

Property Type Description
Enable Control Port check box Enables an input port that lets you send action commands to the adapter. See the description of the Control Port below.
Enable Status Port check box Enables a status output port that reports CONNECT, DISCONNECT or ERROR events from the adapter. If enabled, the status port is always the first output port on the right side of the adapter icon on the canvas.
Connect At Start-up check box Specifies whether to connect to Wikipedia EventStreams when the containing EventFlow module starts.
Page-create EventStream check box Enables the page-create EventStream.
Page-move EventStream check box Enables the page-move EventStream.
Page-delete EventStream check box Enables the page-delete EventStream.
Recent-change EventStream check box Enables the recent-change EventStream.
Revision-create EventStream check box Enables the revision-create EventStream.
Page-undelete EventStream check box Enables the page-undelete EventStream.
Page-properties-change EventStream check box Enables the page-properties-change EventStream.

Advanced Properties Tab

Property Type Description
Recovering delay time (seconds) int Specifies the default time in seconds to wait before attempting to recover from a connection loss.
Timestamp Format String The timestamp format to use when converting timestamp values to a string. The default is the Java SimpleDateFormat.
Since Timestamp Format String The timestamp format to use when specifying Since values in a Control Port input tuple.
Read time-out (seconds) int Specifies the value in seconds before the adapter times out while waiting to read a response from an EventStream.

Concurrency Tab

Use the Concurrency tab to specify parallel regions for this instance of this component, or multiplicity options, or both. The Concurrency tab settings are described in Concurrency Options, and dispatch styles are described in Dispatch Styles.

Caution

Concurrency settings are not suitable for every application, and using these settings requires a thorough analysis of your application. For details, see Execution Order and Concurrency, which includes important guidelines for using the concurrency options.

Control Port

Description

Use the control port to send action commands to the adapter. Tuples enqueued on this port cause the adapter to connect or disconnect to certain EventStreams, or to specify a new data starting time Since value.

The EventStream you address in the control port tuple must already be configured and present in the adapter. That is, you cannot use a control port tuple to add an EventStream that is not already in place.

Control Port Schema

  • Command, string, the command to send to the adapter.

    Valid values are:

    • Connect — Tells the adapter to connect to the EventStreamName URI specified in the control port's input tuple.

    • Disconnect — Tells the adapter to disconnect from the EventStreamName URI specified in the control port's input tuple (if a connection to that URI currently exists).

  • EventStreamName, string. The EventStream to connect to.

    Valid values are:

    • page-create

    • page-move

    • page-delete

    • recentchange

    • revision-create

    • page-undelete

    • page-properties-change

  • Since, string.

    • If provided, this timestamp is used as the historical starting position in each of the requested streams.

Data Output Ports

  • The schema for each EventStream output port is automatically defined when the corresponding EventStream property box is selected.

  • The first port is always the status port, if enabled. If not enabled, the first port is the first EventStream selected.

  • EventStream output ports are always added to the adapter in the order listed in the Operator Properties tab (and in the Operator Properties table above). This can cause confusion in cases like the following example.

    • You configure the adapter with a status port and a Recent-change EventStream port. The adapter sets these up as output ports 1 and 2:

      Port 1 – status
      Port 2 – Recent-change EventStream
    • You later reconfigure the adapter to add a Page-create EventStream port. Because Page-create occurs in the list before Recent-change, the adapter sets these up as follows:

      Port 1 – status
      Port 2 – Page-create EventStream
      Port 3 – Recent-change EventStream

      Notice that the Recent-change port has changed port numbers. You may need to adjust or rename its downstream components to accommodate this port number change.