00001 /* 00002 * ============================================================================== 00003 * Name : csasyncrequesthandler.h 00004 * Part of : CSAsync 00005 * Interface : 00006 * Description : 00007 * Version : 00008 * 00009 * Copyright (c) 2004-2006 Nokia Corporation. 00010 * This material, including documentation and any related 00011 * computer programs, is protected by copyright controlled by 00012 * Nokia Corporation. 00013 * ============================================================================== 00014 */ 00015 00016 00017 #ifndef __CCSASYNCREQUESTHANDLER_H__ 00018 #define __CCSASYNCREQUESTHANDLER_H__ 00019 00020 // INCLUDE FILES 00021 #include <e32base.h> 00022 #include "TimeServerSession.h" 00023 00024 // FORWARD DECLARATIONS 00025 class MAsyncTimeObserver; 00026 00027 // CLASS DECLARATION 00033 class CCSAsyncRequestHandler : public CActive 00034 { 00035 public: // Constructors and destructors 00045 static CCSAsyncRequestHandler* NewL( MAsyncTimeObserver& aObserver ); 00046 00056 static CCSAsyncRequestHandler* NewLC( MAsyncTimeObserver& aObserver ); 00057 00063 virtual ~CCSAsyncRequestHandler(); 00064 00065 public: // New functions 00066 00071 void RequestTime(); 00072 00077 void CancelRequest() ; 00078 00084 TTime Time() const; 00085 00086 protected: // Functions from base classes 00087 00093 void RunL(); 00094 00099 void DoCancel(); 00100 00101 private: // Constructors and destructors 00102 00109 CCSAsyncRequestHandler( MAsyncTimeObserver& aObserver ); 00110 00116 void ConstructL(); 00117 00118 private: // Data 00119 00123 RTimeServerSession iSession; 00124 00128 TTime iTime; 00129 00133 MAsyncTimeObserver& iObserver; 00134 }; 00135 00136 00137 #endif //__CCSASYNCREQUESTHANDLER_H__ 00138 00139 // End of File