Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

ChordResolver Class Reference

A class to keep state information for an iterative lookup. More...

#include <application-chord.h>

Inheritance diagram for ChordResolver:

Handler ChordFingerResolver ChordJoinResolver List of all members.

Public Member Functions

 ChordResolver ()
virtual void FindSuccessor (ChordId)
virtual void HandleFindSuccessorResponse (ChordPDU *)
virtual void HandleFoundSuccessor (ChordPDU *)
virtual void HandleFoundSuccessor (ChordFinger)
virtual void HandleFailed ()
virtual void Failed (ChordFinger)
virtual void FoundSuccessor (ChordFinger)
 Redefine this function with the code to be executed once the result is received.
virtual void AttachChord (Chord *ach)
 This function is a callback invoked by Chord objects.
virtual void SetResolverId (ChordResolverId_t crid)
 This function is a callback invoked by Chord objects.
virtual bool IsBusy ()
 True if the resolver is working on a request.
virtual ChordResolverId_t GetResolverId ()
virtual void Handle (Event *, Time_t)
virtual void CancelTimeout ()

Protected Attributes

Chordch
ChordStatsstats
ChordResolverId_t resolver_id
 Identifier of this resolver for demultiplexing.
unsigned long next_seq_no
 Next sequence number to use.
unsigned long hi_seq_no
 Highest sequence number seen.
bool busy
 Resolving something?
ChordId resolving_cid
 The Id currently resolved.
ChordFinger resolving_peer
 Peer contacted to resolve.
ChordResolverEventtimeout_event
unsigned short timeout_count

Detailed Description

A class to keep state information for an iterative lookup.


Constructor & Destructor Documentation

ChordResolver::ChordResolver  ) 
 


Member Function Documentation

virtual void ChordResolver::AttachChord Chord ach  )  [inline, virtual]
 

This function is a callback invoked by Chord objects.

void ChordResolver::CancelTimeout  )  [virtual]
 

void ChordResolver::Failed ChordFinger   )  [virtual]
 

Reimplemented in ChordFingerResolver.

void ChordResolver::FindSuccessor ChordId   )  [virtual]
 

void ChordResolver::FoundSuccessor ChordFinger   )  [virtual]
 

Redefine this function with the code to be executed once the result is received.

Reimplemented in ChordJoinResolver, and ChordFingerResolver.

virtual ChordResolverId_t ChordResolver::GetResolverId  )  [inline, virtual]
 

void ChordResolver::Handle Event ,
Time_t 
[virtual]
 

Implements Handler.

void ChordResolver::HandleFailed  )  [virtual]
 

void ChordResolver::HandleFindSuccessorResponse ChordPDU  )  [virtual]
 

void ChordResolver::HandleFoundSuccessor ChordFinger   )  [virtual]
 

void ChordResolver::HandleFoundSuccessor ChordPDU  )  [virtual]
 

virtual bool ChordResolver::IsBusy  )  [inline, virtual]
 

True if the resolver is working on a request.

virtual void ChordResolver::SetResolverId ChordResolverId_t  crid  )  [inline, virtual]
 

This function is a callback invoked by Chord objects.


Member Data Documentation

bool ChordResolver::busy [protected]
 

Resolving something?

Chord* ChordResolver::ch [protected]
 

unsigned long ChordResolver::hi_seq_no [protected]
 

Highest sequence number seen.

unsigned long ChordResolver::next_seq_no [protected]
 

Next sequence number to use.

ChordResolverId_t ChordResolver::resolver_id [protected]
 

Identifier of this resolver for demultiplexing.

ChordId ChordResolver::resolving_cid [protected]
 

The Id currently resolved.

ChordFinger ChordResolver::resolving_peer [protected]
 

Peer contacted to resolve.

ChordStats* ChordResolver::stats [protected]
 

unsigned short ChordResolver::timeout_count [protected]
 

ChordResolverEvent* ChordResolver::timeout_event [protected]
 


The documentation for this class was generated from the following files:
Generated on Wed Aug 27 16:17:24 2008 for Georgia Tech Network Simulator (GTNetS) by  doxygen 1.3.9.1