| author | Pat Downey <patd@symbian.org> | 
| Wed, 01 Sep 2010 12:37:34 +0100 | |
| branch | RCL_3 | 
| changeset 21 | 604ca70b6235 | 
| parent 0 | e35f40988205 | 
| permissions | -rw-r--r-- | 
| 0 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1 | // Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies). | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2 | // All rights reserved. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 3 | // This component and the accompanying materials are made available | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 4 | // under the terms of "Eclipse Public License v1.0" | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 5 | // which accompanies this distribution, and is available | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 6 | // at the URL "http://www.eclipse.org/legal/epl-v10.html". | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 7 | // | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 8 | // Initial Contributors: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 9 | // Nokia Corporation - initial contribution. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 10 | // | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 11 | // Contributors: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 12 | // | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 13 | // Description: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 14 | // GMXMLFILEDDATASOURCE.H | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 15 | // This file contains the declaration of the specific CMDXMLParserFileDataSource class | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 16 | // which is used by the XML Parser when the file based API is used. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 17 | // | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 18 | // | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 19 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 20 | /** | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 21 | @file | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 22 | */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 23 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 24 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 25 | #ifndef __GMXMLFILEDATASOURCE_H__ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 26 | #define __GMXMLFILEDATASOURCE_H__ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 27 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 28 | class CMDXMLParserFileDataSource : public CBase, public MMDXMLParserDataProvider | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 29 | 	{
 | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 30 | public: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 31 | virtual void GetData(TPtrC8 &aPtr, TRequestStatus &aStatus); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 32 | virtual void Disconnect(); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 33 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 34 | /** Creates and Initialises the data provider with a specified XML file. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 35 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 36 | @param aRFs File server session | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 37 | @param aFileToParse The file name to parse | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 38 | */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 39 | static CMDXMLParserFileDataSource *NewL(RFs aRFs, const TDesC& aFileToParse); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 40 | static CMDXMLParserFileDataSource *NewLC(RFs aRFs, const TDesC& aFileToParse); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 41 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 42 | static CMDXMLParserFileDataSource* NewL(RFile& aFileHandleToParse); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 43 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 44 | ~CMDXMLParserFileDataSource(); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 45 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 46 | private: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 47 | CMDXMLParserFileDataSource(); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 48 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 49 | /** Second phase constructor. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 50 | */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 51 | void ConstructL(RFs aRFs, const TDesC& aFileToParse); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 52 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 53 | void ConstructL(RFile& aFileHandleToParse); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 54 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 55 | private: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 56 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 57 | enum EInternalState | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 58 | 	{
 | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 59 | KInit = 0, | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 60 | KDataSent, | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 61 | KDone, | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 62 | KError | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 63 | }; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 64 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 65 | TInt iState; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 66 | RFile iXMLFile; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 67 | HBufC8* iXMLFileBuffer; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 68 | }; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 69 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 70 | #endif |