Chapter 3    JADE Application Programming Interface (API)

The JADE Application Programming Interface (API) calls are listed in the following table. Function prototypes for these calls are defined in the jomcalls.h header in the include directory on the JADE release medium.

API Call For details, see… Description
jomAbortTransaction Aborting a Transaction Aborts a transaction
jomArmExceptionHandler Arming an Exception Handler Requests a message when an exception occurs
jomBeginLoad Beginning a Load Indicates the beginning of an atomic read transaction
jomBeginLock Beginning a Transaction Lock Ensures that objects referenced are the latest editions
jomBeginNotification Beginning a Notification Requests a notification message from the server
jomBeginTransaction Beginning a Transaction Indicates the beginning of an atomic transaction
jomCallPrimMethod Calling a Primitive Method Invokes a primitive instance method
jomCallPrimTypeMethod Calling a Primitive Type Method Invokes a primitive type method
jomCauseEvent Causing an Event Requests a user notification event from the server
jomCauseSDEEvent Causing an SDE Event Achieves inter-system event notifications in a Synchronized Database Environment (SDE)
jomCauseSDSEvent Causing an SDS Server Event Achieves inter-system event notifications in a Synchronized Database Service (SDS)
jomChangeAccessMode Changing the Database Access Mode Indicates the mode in which the user wants to use the database
jomClearBuffers Clearing JADE Object Manager Buffers Marks the object buffer as obsolete
jomCloneObject Creating a Shallow Copy of an Object Creates a shallow copy of an object
jomCreateObject Creating an Object Creates an instance of the specified class
jomDeleteObject Deleting an Object Deletes the specified object
jomInheritCreate Invoking the Superclass create Method Causes the execution of the superclass create method
jomDeregisterTerminationCallBack Canceling the Termination Method Invocation Canceling invocation of the termination callback method
jomDisarmExceptionHandler Disarming an Exception Disarms an armed exception handler
jomEndLoad Ending a Load Indicates the end of a read transaction
jomEndLock Ending a Transaction Lock Ends a read-only transaction lock bracket
jomEndNotification Ending a Notification Cancels a begin notification request from the server
jomEndTransaction Ending a Transaction Indicates the end of a transaction
jomFinalize Closing a Node Flushes object buffers and closes all open classes and the database
jomFinalizeApplication Finalizing an Application Finalizes an application
jomGetBufferEdition Getting a Buffer Edition Loads the edition of the object buffer in this node
jomGetExecInstances Getting Execution Instances Returns the object identifiers (oids) of the environmental objects for the process
jomGetLatestEdition Checking an Edition Loads the edition of the object in the database
jomGetLockStatus Getting a Lock Status Gets the status of an object lock
jomGetNodeContextHandle Getting a Node Context Handle Gets the current node context handle for the process
jomGetNotificationInfo Getting Notification Information Requests additional notification information
jomGetObject Getting an Object Copies object buffer contents to the specified area
jomGetProperty Getting a Property Gets the value of a property of the specified object
jomGetPropertyDesc Getting a Property Description Gets the description of a property of the specified object
jomGetSystemStatus Getting System Status Requests the general state of a process
jomImportMethod Calling an Imported Method Causes the execution of an imported method
jomInheritMethod Inheriting a JADE Object Manager Method Causes the execution of a superclass method of the same name
jomInitialize Initializing a Node Initializes a node
jomInitializeApplication Initializing an Application Initializes an application
jomInvokeMethod Invoking a Method on a Saved Object Sends the specified target method containing a variable list of parameters to the receiver
jomIsKindOf Checking an Object is a Valid Class Instance Checks that an object is a valid instance of a class
jomLockObject Locking an Object Places a lock on an object
jomRegisterTerminationCallBack Cleaning Up Resources Specifying a method for cleaning up resources on termination
jomRaiseException Raising an Exception Executes the exception handling methods for a specified exception
jomRespondsTo Checking an Object Implements an Interface Checks that an object implements an interface
jomSendMsg Sending a Message Sends normal messages to objects
jomSendEventMsg Sending an Event Message Sends event messages to objects
jomSendTypeMsg Sending a Type Message Sends normal messages to types
jomSetProperty Setting a Property Sets the value of a property of a specified object
jomSignOff Closing a Process Finalizes the process associated with the handle
jomSignOn Opening a Process Initializes a process in the current mode
jomTerminate Terminating Applications in a Node Terminates all active methods in the current node
jomUnlockObject Unlocking an Object Removes a lock placed on an object
jomUpdateEdition Updating an Edition Forces an increment in the object edition

For all calls other than the jomInitialize, jomSignOn, and jomFinalize calls, the pHandle parameter is the pProcessHandle parameter returned from the jomSignOn call. (For more details, see "Opening a Process", later in this chapter.)

When you set the TerminateProcessOnDisconnect parameter in the [JadeClient] section of the JADE initialization file to true, unwanted side-effects may occur when the connection to the JADE database server came from a JADE Object Manager API connection in multiuser mode, as the underlying program that opened the connection is also terminated.

The JADE Object Manager also provides the jomGetMessageText API call, whose function prototype is defined in the jomerrs.h header in the include directory on the JADE release medium. For details, see "Getting Text for a System or Error Message", later in this chapter.

JADE Object Manager API calls that use a pNodeHandle parameter have a null ("") or zero (0) node handle parameter value for the main node. Otherwise, the value should be that as returned by the jomInitialize API call for the node.

For details about version checking, see "Checking the Dynamic Link Library Version", later in this chapter.