Main Page | Packages | Class Hierarchy | Compound List | Compound Members

de.stz.bt.fnd.FND_InvokeIDPool Class Reference

List of all members.

Public Member Functions

synchronized void run ()
synchronized boolean addSendInvokeID (FND_InvokeID addID)
synchronized FND_InvokeID getFreeSendID ()
synchronized boolean hasSendInvokeID (FND_InvokeID checkId)

Static Public Attributes

final int max_invoke = 256

Package Attributes

LinkedList sendInvokeIDPool = new LinkedList()
LinkedList shadowSendInvokeIDPool = new LinkedList()

Detailed Description

Implementation of the ID Pool where the IDs of the sent and received UDP packets are managed. When an FND Datagram is being sent by the LZ, an InvokeID is being removed from the LZ's SP (send pool) and being transmitted to the Insel. Sent invoke_ids are being stored in the ShadowSendInvokeId so they can be timed out if the island crashed and the InvokeId never "comes back". When an FND Datagram is being received by the LZ, its InvokeID is being stored in the InvokeIdReceivePool. Upon sending the reply, the invokeID is being removed from the InvokeIdReceivePool, and being "handed back" with the reply to the Insel.

The number of InvokeIDs created in the send pool is max_invoke.

TODO: A timeout mechanism kills "old" (timed out) invokeIDs from the pools, as the requests they belong to must have timed out already.

Author:
Philipp Haeuser
Version:
Id
FND_InvokeIDPool.java,v 1.2 2004/11/12 09:08:18 jseitter Exp


The documentation for this class was generated from the following file:
Generated on Mon Nov 15 08:36:10 2004 for FND4J by doxygen 1.3.3