OSI/MHS Gateway Programmatic Interface (GPI) Reference Manual

Procedure Calls
OSI/MHS Gateway Programmatic Interface (GPI) Reference Manual522223-001
4-17
GPI_MT_TRANSFER_OUT_
retain input
INT(32):value
specifies whether you want to retain the object after this procedure call completes.
The value can be:
If you omit this parameter, the default value is OM-FALSE.
Considerations
The procedure verifies the integrity of the object before placing it in the output
queue. If the object does not include all required attributes, an error occurs as
indicated in the return code.
Although you can insert a local identifier attribute in an MTS identifier object, you
should allow the GPI to insert it to guarantee the uniqueness of each MTS identifier.
If you copy an inbound object with the intention of transferring it out to an X.400
MTA, you can retain the local identifier of the inbound object. If the GPI detects a
local identifier in an outbound object, GPI_MT_TRANSFER_OUT_ does not
generate a new local identifier for the object.
If you are transferring out an object that is a copy of an inbound object, you should
first remove the MTS identifier attribute value (unless you want it to be reused).
Before you transfer an object out to the GPI service output queue, the object must be
completely defined. Any subobjects you have created and associated with the root
object (through the root-object parameter) must be inserted by a call to
GPI_OM_INSERT_.
If you specify that you want to retain an object after it is transferred out, the retained
object does not contain the local identifier generated by the GPI service. If you
inserted the local identifier attribute before calling the
GPI_MT_TRANSFER_OUT_ procedure, the attribute will be present.
It is possible, but unlikely, that the GPI will encounter an error after committing an
outbound object to the PDU store. In this case, the GPI retains the object in memory
and returns an error in the status parameter. You can send the communication
again or take some other action. If you send the communication again without
specifying a local identifier, the GPI generates a new identifier for the duplicate
communication.
OM-TRUE specifies that the object is to be retained and a copy of the object is
to be transferred out. All client program resources associated with
the retained object remain allocated. The object is the
responsibility of the client application, which can examine and
modify the object.
OM-FALSE specifies that the object is not to be retained.