BEA Logo BEA Tuxedo Release 7.1

  Corporate Info  |  News  |  Solutions  |  Products  |  Partners  |  Services  |  Events  |  Download  |  How To Buy

 

   Tuxedo Doc Home   |   Getting Started   |   Topic List   |   Previous   |   Next   |   Contents

   Introducing the BEA Tuxedo System

Development View: What You Can Do Using the ATMI

The Application to Transaction Monitor Interface (ATMI), the BEA Tuxedo API, provides an interface for communications, transactions, and management of data buffers that works in all environments supported by the BEA Tuxedo system. It defines the interface between application programs and the BEA Tuxedo system. The ATMI offers a simple interface for a comprehensive set of capabilities. It implements the X/Open DTP model of transaction processing.

Using the ATMI

The ATMI library offers you a variety of functions for defining and controlling global transactions in a BEA Tuxedo application. Global transactions enable you to manage exclusive units of work spanning multiple programs and resource managers in a distributed application. All the work in a single transaction is treated as a logical unit, so that if any one program cannot complete its task successfully, no work is performed by any programs in the transaction. Most ATMI functions support different communication styles. These functions knit together distributed programs by enabling them to exchange data. All ATMI functions send or receive data in typed buffers. Following is a list of ATMI functions (for C and COBOL bindings), grouped by the type of task they perform.

Using the ATMI Functions

For a Task Related to

Use This C Function

Or This COBOL Function

To

Client membership

tpchkauth(3c)

TPCHKAUTH(3cbl)

Check whether authentication is required

tpinit(3c)

TPINITIALIZE(3cbl)

Have a client join an application

tpterm(3c)

TPTERM(3cbl)

Have a client leave an application

Buffer management

tpalloc(3c)

N/A

Create a message buffer

tprealloc(3c)

N/A

Resize a message buffer

tpfree(3c)

N/A

Free a message buffer

tptypes(3c)

N/A

Get a message type and subtype

Message priority

tpgprio(3c)

TPGPRIO(3cbl)

Get the priority of the last request

tpsprio(3c)

TPSPRIO(3cbl)

Set the priority of the next request

Request/Response communications

tpcall(3c)

TPCALL(3cbl)

Initiate a synchronous request/response to a service

tpacall(3c)

TPACALL(3cbl)

Initiate an asynchronous request (fanout)

tpgetrply(3c)

TPGETRPLY(3cbl)

Receive an asynchronous response

tpcancel(3c)

TPCANCEL(3cbl)

Cancel an asynchronous request

Conversational communications

tpconnect(3c)

TPCONNECT(3cbl)

Begin a conversation with a service

tpdiscon(3c)

TPDISCON(3cbl)

Abnormally terminate a conversation

tpsend(3c)

TPSEND(3cbl)

Send a message in a conversation

tprecv(3c)

TPRECV(3cbl)

Receive a message in a conversation

Reliable queuing

tpenqueue(3c)

TPENQUEUE(3cbl)

Enqueue a message to a message queue

tpdequeue(3c)

TPDEQUEUE(3cbl)

Dequeue a message from a message queue

Event-based communications

tpnotify(3c)

TPNOTIFY(3cbl)

Send an unsolicited message to a client

tpbroadcast(3c)

TPBROADCAST(3cbl)

Send messages to several clients

tpsetunsol(3c)

TPSETUNSOL(3cbl)

Set unsolicited message call-back

tpchkunsol(3c)

TPCHKUNSOL(3cbl)

Check the arrival of unsolicited messages

N/A

TPGETUNSOL(3cbl)

Get an unsolicited message

tppost(3c)

TPPOST(3cbl)

Post an event message

tpsubscribe(3c)

TPSUBSCRIBE(3cbl)

Subscribe to event messages

tpunsubscribe(3c)

TPUNSUBSCRIBE(3cbl)

Unsubscribe to event messages

Transaction management

tpbegin(3c)

TPBEGIN(3cbl)

Begin a transaction

tpcommit(3c)

TPCOMMIT(3cbl)

Commit the current transaction

tpabort(3c)

TPABORT(3cbl)

Roll back the current transaction

tpgetlev(3c)

TPGETLEV(3cbl)

Check whether in transaction mode

tpsuspend(3c)

TPSUSPEND(3cbl)

Suspend the current transaction

tpresume(3c)

TPRESUME(3cbl)

Resume a transaction

Service entry and return

tpsvrinit(3c)

TPSVRINIT(3cbl)

Initialize a server

tpsvrdone(3c)

TPSVRDONE(3cbl)

Terminate a server

tpservice(3c)

N/A

Prototype for a service entry point

N/A

TPSVCSTART(3cbl)

Get service information

tpreturn(3c)

TPRETURN(3cbl)

End a service function

tpforward(3c)

TPFORWAR(3cbl)

Forward request

Dynamic advertisement

tpadvertise(3c)

TPADVERTISE(3cbl)

Advertise a service name

tpunadvertise(3c)

TPUNADVERTISE(3cbl)

Unadvertise a service name

Resource management

tpopen(3c)

TPOPEN(3cbl)

Open a resource manager

tpclose(3c)

TPCLOSE(3cbl)

Close a resource manager

Note: The use of ATMI transaction management functions is optional.

See Also