Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

The X/Open interface XATMI

XATMI is a program interface for distributed program-to-program communication, which has been standardized by X/Open.

openUTM provides the XATMI program interface for the programming languages COBOL, C and C++. Under openUTM, XATMI can communicate not only on the basis of the X/Open OSI TP protocol, but also using the LU6.1 and UPIC protocols.

XATMI services can only be started by partners that also use the XATMI interface.

XATMI differentiates between three communication models:

  • Synchronous request/response model:
    After sending the service request, the client is blocked until a response is received.

  • Asynchronous request/response model:
    The client is not blocked after sending the service request.

  • Conversational model:
    The client and server can exchange data as desired.

The following tables provide an overview of the XATMI calls available in openUTM. The individual calls are described in detail in the X/Open CAE Specification on XATMI of November 1995.
All UTM-specific details are described in the openUTM manual “Creating Applications with X/Open Interfaces”.

Overview: XATMI calls in openUTM

Calls for the request/response model:

C/C++ callCobol callDescription
tpcallTPCALLService request in the synchronous request/response model
tpacallTPACALLService request in the asynchronous request/response model
tpgetrplyTPGETRPLYRequest response in the asynchronous request/response
model
tpcancelTPCANCELCancel an asynchronous service request before a response
has been received

Calls for the conversational model:

C/C++ call

COBOL call

Description

tpconnect

TPCONNECT

Set up a communication link

tpsend

TPSEND

Send a message

tprecv

TPRECV

Receive a message

tpdiscon

TPDISCON

Shut down a communication link

Call for the type-based buffers:

C/C++ call

COBOL call

Description

tpalloc

--

Reserve memory for a type-based buffer

tprealloc

--

Change the size of a type-based buffer

tpfree

--

Free a type-based buffer

tptypes

--

Query the type of a type-based buffer

General calls for service routines:

C/C++ call

COBOL call

Description

tpservice

TPSVCSTART

Provide a template for service routines

tpreturn

TPRETURN

Terminate a service routine

tpadvertise
tpunadvertise

TPADVERTISE
TPUNADVERTISE

Only supported syntactically in openUTM
(output the name of a service routine)