00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 #ifndef __CTIMESESSION_H__
00020 #define __CTIMESESSION_H__
00021 
00022 
00023 #include <e32base.h>
00024 
00025 
00026 class CTimeServer;
00027 
00028 
00033 class CTimeServerSession : public CSession2
00034     {
00035     public: 
00036 
00043         static CTimeServerSession* NewL( CTimeServer& aServer );
00044 
00051         static CTimeServerSession* NewLC( CTimeServer& aServer );
00052 
00057         virtual ~CTimeServerSession();
00058 
00059     public: 
00060 
00066         void SendTimeToClient();
00067 
00068     public: 
00069 
00076         void ServiceL( const RMessage2& aMessage );
00077 
00078     private: 
00079 
00085         CTimeServerSession( CTimeServer& aServer );
00086 
00091         void ConstructL();
00092 
00093     private: 
00094 
00101         void PanicClient( const RMessagePtr2& aMessage, 
00102                           TInt aPanic ) const;
00103 
00110         void RequestTimeL( const RMessage2& aMessage );
00111 
00112     private: 
00113 
00117         TBool iWaitingForTick;
00118 
00122         RMessage2 iMessage;
00123 
00127         CTimeServer& iServer;
00128     };
00129 
00130 #endif // __CTIMESESSION_H__
00131 
00132 
00133