[omniORB] Re: Connection Handler

Dietmar May dcmay@object-workshops.com
Thu, 7 Jan 1999 10:49:56 -0500


> A minor improvement on this is to borrow the concept of a watch dog timer 
from
> real time embedded systems. So only ping the clients if the timer expires.
>
> How the timer is reset for each session object is the tricky part.
>
> The simplest method would be to add code for each CORBA method on the server
> side object. eg ResetSessionTimer, i.e So whenever a call is made to a method
> on the server side object, the sever side method resets the watch dog timer
> for the session object from the originating session.
>
> Other variations could be to change the ping frequency/timer expiry period,
> depending on the operations in progress.
>
> Myles Penlington.

Now, if only we could get the ORB to do this, perhaps changing the IDL compiler 
to call thru a function pointer (if set) in every dispatch() method ... we 
might have something like Armen was originally asking for. (It avoids the 
tediousness (as Stroustrup puts it) of repetitive code - and the accompanying 
propensity for errors).

Now, the question is whether there is a unique handle for each client that 
could be used automatically (obviously not the socket handle), or does the 
client have to explicitly pass in a server-assigned handle as a parameter to 
each IDL call? ie. is it possible to uniquely and unambiguously identify a 
client based on connection parameters, given the abilty (and need) of the ORB 
to shut down and re-open connections?

Dietmar