From: Andreas Otto on 8 Mar 2010 08:47
ANNOUNCE: Major Feature Release
libmsgque: Application-Server-Toolkit for
C, C++, JAVA, C#, TCL, PERL, PYTHON, VB.NET
NHI1: Non-Human-Intelligence #1
This is a 'major-feature-release' to add 'longtime-transaction' support.
A 'longtime-transaction' is a transaction with a possible infinite time
period between the start and the end. A 'longtime-transaction' is always
a 'persistent-transaction' too. The 'persistent' support is available as
an in-memory solution on the 'application-server' or in an additional
'bidirectional-filter' available for the next release.
A typical scenario for a 'longtime-transaction' is:
* A user with a client connect to the server and start a
'longtime-transaction' job. After a while the user shutdown the client
and leave the office. At the next morning the user start the client
again and the results are send from the server to the client.
* On a space mission the time-overhead between transaction start and end
is large. It is usually not possible to keep the
client-server-connection open all the time.
* On a military action-system the enemy try to interrupted the
client-server-connection to disable data communication.
To use a 'longtime-transaction' the results are send to a
'client-service' registered with MqServiceCreate. This service and
additional data (I call this data 'local-context-data') have to be added
to the 'longterm-transaction' package to be available in the result. On the
'link-target' the 'local-context-data' is initial stripped from the
'data-package' and is later added to the results again.
The 'local-context-data' is added to the 'data-package' with
MqSendT_START and MqSendT_END.
The 'local-context-data' is read from the 'data-package' with
MqReadT_START and MqReadT_END.
Andreas Otto (aotto1968)