42 lines
1.0 KiB
C++
42 lines
1.0 KiB
C++
//----------------------------------------------------------------------------
|
|
//
|
|
// Copyright (C) Intel Corporation, 2007 - 2010.
|
|
//
|
|
// File: KeepAliveTimer.h
|
|
//
|
|
// Contents: A timer which goes off on a set time, which checks the
|
|
// keep alive timeout of all open tunnels,
|
|
// and close a disconnected tunnel
|
|
//
|
|
// Notes:
|
|
//----------------------------------------------------------------------------
|
|
#ifndef KEEPALIVE_TIMER_H
|
|
#define KEEPALIVE_TIMER_H
|
|
|
|
#include "ace/Timer_Queue.h"
|
|
#include "ace/Reactor.h"
|
|
|
|
#include "global.h"
|
|
#include "ObserverPattern.h"
|
|
|
|
class KeepAliveTimer : public ACE_Event_Handler, public Observer_Pattern_Subject
|
|
{
|
|
|
|
public:
|
|
KeepAliveTimer(void);
|
|
~KeepAliveTimer(void);
|
|
|
|
STATUS start(void);
|
|
STATUS close(void);
|
|
|
|
STATUS start(const ACE_Time_Value &initialDelay, const ACE_Time_Value &interval);
|
|
int handle_timeout(const ACE_Time_Value ¤t_time, const void * arg = NULL);
|
|
int ReleaseExpiredConnectedSystemsEnumeration(void);
|
|
|
|
private:
|
|
|
|
long _timer_id;
|
|
};
|
|
|
|
|
|
#endif /* KEEPALIVE_TIMER_H */ |