www.pudn.com > NetTest2nd.rar > timeouttimer.cpp


/* Copyright (c) 2001, Nokia. All rights reserved */ 
 
#include "TimeOutTimer.h" 
#include "TimeOutNotifier.h" 
#include "Sockets.pan" 
 
 
CTimeOutTimer* CTimeOutTimer::NewL(const TInt aPriority, MTimeOutNotifier& aTimeOutNotify) 
{ 
	CTimeOutTimer* self = CTimeOutTimer::NewLC(aPriority, aTimeOutNotify); 
	CleanupStack::Pop(self); 
	return self; 
} 
 
	 
CTimeOutTimer* CTimeOutTimer::NewLC(const TInt aPriority, MTimeOutNotifier& aTimeOutNotify) 
{ 
	CTimeOutTimer* self = new (ELeave) CTimeOutTimer(aPriority, aTimeOutNotify); 
	CleanupStack::PushL(self); 
	self->ConstructL(); 
	return self; 
} 
 
 
CTimeOutTimer::CTimeOutTimer(const TInt aPriority, MTimeOutNotifier& aTimeOutNotify) 
: CTimer(aPriority), iNotify(aTimeOutNotify) {} 
 
 
CTimeOutTimer::~CTimeOutTimer() {} 
 
 
void CTimeOutTimer::ConstructL() 
{ 
	CTimer::ConstructL(); 
	CActiveScheduler::Add(this); 
} 
 
void CTimeOutTimer::RunL() 
{ 
    // Timer request has completed, so notify the timer's owner 
    if (iStatus == KErrNone) { 
	    iNotify.TimerExpired(); 
    } else { 
        User::Panic(KPanicSockets, ESocketsBadStatus); 
    } 
}