WebSpeed
Developer’s Guide


Resetting a Web Object’s Time-out Period

Normally, when a Web object times-out, the timingOut event procedure runs and changes the object’s state to "Timed-Out". To reset the time-out period after a state-aware Web object has timed-out, create a timing-out override to this event procedure using the Procedure Editor in the AppBuilder. In this local override procedure, call the setWebState function to make the Web object state-aware with a new time-out period.

To ensure that the Web object times-out at some point, allow the local override procedure to call the default timingOut procedure when your application no longer allows the time-out to be reset:

PROCEDURE timingOut :
/*------------------------------------------------------------------------
  Purpose:     Override standard ADM method
  Notes:
------------------------------------------------------------------------*/

  /* Code placed here will execute PRIOR to standard behavior. */

  /* Dispatch standard ADM method.                             */
  IF get-user-field("Application-State") = "No-More-Changes" THEN
    RUN SUPER.
  ELSE
   setWebState (60).

  /* Code placed here will execute AFTER standard behavior.    */

END PROCEDURE. 

In this example, the application must set the "Application-State" user field to "No-More-Changes" when it is ready to allow the time-out to proceed. Otherwise, when any time-out for this Web object occurs, it remains state-aware for another 60 minutes.

CAUTION: It is important to verify the code you use to conditionally execute the default timingOut procedure. If it never executes, the Agent that is running the state-aware Web object remains locked because the time-out period is always reset. You can always force the object to time-out by running setWebState in the outputHeader procedure with a 0 time-out setting.

Copyright © 2004 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095