Starting MSG-IDE  Creating MSG-IDE projects

Chapter 1: Overview

MSG-IDE objects

To begin building an AIM, you select an object from the object list and click Add. Table 1-1 lists each object type and its primary function.

Table 1-1: Message interaction objects

Object type

What it does

Major objects:

Domains and files

  • Domains – logical containers for acquisition and delivery AIM project (.prj) files. Each AIM must have a project file.

  • Files – in the MSG-IDE context, files are containers for MSG-IDE objects that are common to more than one project, which allows you to build objects once, save the object in a file (.fle), then include the file in each project that requires the common objects.

Communications

Identifies the connection component that the AIM uses to communicate with the endpoint application.

Control flow

A container of functions and data objects that control the processing of data. Defines the startup and shutdown processing for TCP/IP AIM communication object, and define the actions to take and the functions to perform once a message frame object matches on incoming data.

NoteYou must always pass the argument “blob *pb” to a control flow object because the control flow object always receives the data in a blob.

A control flow object can be called by:

  • A protocol object after the protocol object receives data from the communication object.

  • A message frame object after that message frame matches on data.

  • Another control flow object.

Message frame

Defines the characteristics of the data coming from the source endpoint system by describing the data. Message frame objects include the number of bytes, all data, hexidecimal, decimal, octal, ASCII, and control characters. For example, the data below uses the message frame object to match a transaction that includes VT as the header control character and FS & CR as the trailer control characters.

Objects in the message frame matching list are ordered in the sequence of the incoming message. In this example, the first item in the list would be the control character VT.

Protocol

Regulate the flow of data from the communication object to the message frame objects. It is the main logical container for other message interaction objects.

NoteAll data sent to an acquisition AIM by the communication object enters the protocol object, which then controls the passage of data to the message frame objects. A protocol object must be started in the clinit() function or with the process() method.

The protocol object identifies:

  • The communications object to use

  • The available message frame objects

  • The control flow objects to run after the communication object connects to the port and after communication object closes or losses the port connection

  • The control flow object to run when the protocol object receives data.

Supporting objects:

Data

Provide data variable definitions for data that you may want to manipulate or access at a later point in the program. A data object is any data variable defined with MSG-IDE or TRAN-IDE.

Create data objects to build a distributed function call command for gathering or sending data, to add a symbolic name definition, or to build your own structures or class definitions.

Distributed Function

Used to build distributed function call (DFC) commands for the client and its corresponding DFC entry point for the server.When the client needs to gather or send data, to an application endpoint, it uses a DFC command to send a transaction to the server.

Function

Within a control flow, a function object defines the actions to take, either on the data itself or because of the data’s presence. When not within a control flow, a function object defines the actions to take to service a DFC command. Function objects are user-provided routines within which you may perform data manipulation and actions.

Other objects:

Blob

A blob object (Binary Large Object Block) is a special type of data object. A blob may contain any type of data, including null bytes. Blob objects have methods that you can use within a function object to manipulate the contents of the blob.

Database Interface

Allows ODL code to access external SQL databases.

I/O File Object

Allows you access disk files or to read the contents of a directory.

Production

Displays the production objects when you open a TRAN-IDE project file in MSG-IDE. You can only display production objects in MSG-IDE; you must use TRAN-IDE to edit or remove the objects.

Timer

Allows you to set an alarm to keep track of the time a user spends doing certain activities, or to execute specific commands on a periodic basis.





Copyright © 2005. Sybase Inc. All rights reserved. Creating MSG-IDE projects

View this book as PDF