SERVER-CONNECTION-ID attribute

(PAS for OE only)

Returns the run-time connection ID of the current client connection assigned to this application server session.

Data type: CHARACTER

Access: Read-only

Applies to: SESSION system handle

This attribute is valid only if the REMOTE attribute is TRUE.

This value is assigned by the application server when an application server accepts a connection request from a client application. The application server sessions use the connection ID as an identifier when they log any information associated with the connection. This same connection ID is available to the application server session using the SERVER-CONNECTION-ID attribute and to the connected ABL client using the CLIENT-CONNECTION-ID attribute on the server handle connected to this application server.

The value of the connection ID is guaranteed to be globally unique for all time within a single computer network. Connection IDs can be compared to each other strictly for equality, but other types of comparisons are irrelevant.

The AVM ensures that the SERVER-CONNECTION-ID attribute for each application server agent is set to the connection ID for the connection that is assigned to the application server session. Each time a new connection is assigned to an application server session, a new value is assigned to the SERVER-CONNECTION-ID attribute.

This attribute is available to any Connect procedure or Disconnect procedure that you have configured for the application server. It maintains the same value for these and all other application server procedures executed on behalf of the same connection.

If the application server operating mode is session-managed, the application server resets the SERVER-CONNECTION-ID attribute for each application server session to the ID of the connection each time it executes a request. The connection ID for a bound ABL session remains the same until the server process becomes unbound and receives a request from a new unbound connection.

If the application server operating mode is session-free, this value has no meaning.

Note: You can identify client context for a user login session on an application server running in any operating mode (including session-free) using the ClientContextId property of the Progress.Lang.OERequestInfo class.