Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

OSPF::NeighborStateAttempt Class Reference

#include <OSPFNeighborStateAttempt.h>

Inheritance diagram for OSPF::NeighborStateAttempt:

OSPF::NeighborState List of all members.

Public Member Functions

virtual void ProcessEvent (Neighbor *neighbor, Neighbor::NeighborEventType event)
virtual Neighbor::NeighborStateType GetState (void) const

Member Function Documentation

virtual Neighbor::NeighborStateType OSPF::NeighborStateAttempt::GetState void   )  const [inline, virtual]
 

Implements OSPF::NeighborState.

00012 { return Neighbor::AttemptState; }

void OSPF::NeighborStateAttempt::ProcessEvent Neighbor neighbor,
Neighbor::NeighborEventType  event
[virtual]
 

00010 {
00011     if ((event == OSPF::Neighbor::KillNeighbor) || (event == OSPF::Neighbor::LinkDown)) {
00012         MessageHandler* messageHandler = neighbor->GetInterface ()->GetArea ()->GetRouter ()->GetMessageHandler ();
00013         neighbor->Reset ();
00014         messageHandler->ClearTimer (neighbor->GetInactivityTimer ());
00015         ChangeState (neighbor, new OSPF::NeighborStateDown, this);
00016     }
00017     if (event == OSPF::Neighbor::InactivityTimer) {
00018         neighbor->Reset ();
00019         if (neighbor->GetInterface ()->GetType () == OSPF::Interface::NBMA) {
00020             MessageHandler* messageHandler = neighbor->GetInterface ()->GetArea ()->GetRouter ()->GetMessageHandler ();
00021             messageHandler->StartTimer (neighbor->GetPollTimer (), neighbor->GetInterface ()->GetPollInterval ());
00022         }
00023         ChangeState (neighbor, new OSPF::NeighborStateDown, this);
00024     }
00025     if (event == OSPF::Neighbor::HelloReceived) {
00026         MessageHandler* messageHandler = neighbor->GetInterface ()->GetArea ()->GetRouter ()->GetMessageHandler ();
00027         messageHandler->ClearTimer (neighbor->GetInactivityTimer ());
00028         messageHandler->StartTimer (neighbor->GetInactivityTimer (), neighbor->GetRouterDeadInterval ());
00029         ChangeState (neighbor, new OSPF::NeighborStateInit, this);
00030     }
00031 }


The documentation for this class was generated from the following files:
Generated on Sat Apr 1 20:52:25 2006 for INET Framework for OMNeT++/OMNEST by  doxygen 1.4.1