00001 /* 00002 * ============================================================================ 00003 * Name : CResponse from Response.h 00004 * Part of : TaskManager 00005 * Created : 15/03/2006 by Forum Nokia 00006 * Version : 1.2 00007 * Copyright: Nokia Corporation 00008 * ============================================================================ 00009 */ 00010 00011 #ifndef __CRESPONSE_H 00012 #define __CRESPONSE_H 00013 00014 // INCLUDE FILES 00015 #include "TaskManager.hrh" 00016 00017 #include <e32std.h> 00018 #include <badesca.h> //CDesCArray 00019 00020 // CLASS DECLARATION 00021 00025 class CResponse : public CBase 00026 { 00027 public: // Constructors and destructor 00028 00032 enum TResponseState 00033 { 00034 ENotComplete, 00035 EComplete, 00036 EError 00037 }; 00038 00042 static CResponse* NewL(); 00043 00047 static CResponse* NewLC(); 00048 00052 ~CResponse(); 00053 00057 enum TResponseType 00058 { 00059 ELoadTasks = 0, 00060 ETaskComplete 00061 }; 00062 00063 public: // New functions 00064 00069 void ParseDataL( TDesC& aData ); 00070 00075 TBool HasError() const; 00076 00081 TBuf<KMaxError> Error() const; 00082 00087 TInt TaskCount() const; 00088 00094 TBuf<KMaxTaskLength> TaskDescription(const TInt& aIndex) const; 00095 00100 TInt TaskId(const TInt& aIndex) const; 00101 00106 TResponseType ResponseType() const; 00107 00112 void InputDataL( const TDesC8& aData ); 00113 00120 TResponseState GetState() const; 00121 00122 private: 00123 00128 void DoCheck(); 00129 00133 CResponse(); 00134 void ConstructL(); 00135 00139 enum TTaskReadStatus 00140 { 00141 EStart = 0, 00142 EReadId, 00143 EReadTask 00144 }; 00145 00146 private: // Data members 00147 00148 // Error informers 00149 TBuf<KMaxError> iError; 00150 00151 CDesCArray* iDescriptions; 00152 RArray<TInt> iIds; 00153 TResponseType iResponseType; 00154 00155 // Resizable descriptor for storing the message 00156 HBufC* iMessageBuffer; 00157 00158 TInt iExpectedPackageSize; 00159 TResponseState iState; 00160 }; 00161 00162 #endif 00163 00164 // End of file 00165 00166
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.