|         |      1 // Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). | 
|         |      2 // All rights reserved. | 
|         |      3 // This component and the accompanying materials are made available | 
|         |      4 // under the terms of "Eclipse Public License v1.0" | 
|         |      5 // which accompanies this distribution, and is available | 
|         |      6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". | 
|         |      7 // | 
|         |      8 // Initial Contributors: | 
|         |      9 // Nokia Corporation - initial contribution. | 
|         |     10 // | 
|         |     11 // Contributors: | 
|         |     12 // | 
|         |     13 // Description: | 
|         |     14 // | 
|         |     15  | 
|         |     16 #ifndef __CIMAPFETCHMULTIBODYSTRUCTURES_H__ | 
|         |     17 #define __CIMAPFETCHMULTIBODYSTRUCTURES_H__ | 
|         |     18  | 
|         |     19 #include "cimapfetchbodystructurebase.h" | 
|         |     20  | 
|         |     21 class MImapFetchStructureObserver; | 
|         |     22 class MOutputStream; | 
|         |     23  | 
|         |     24 /** | 
|         |     25 Performs an IMAP FETCH command, requesting bodystructure and header information for | 
|         |     26 a multiple messages.  The requested inforamtion is returned via the MImapFetchStructureObserver  | 
|         |     27 callback interface that is passed into the constructor.  The observer's callback is | 
|         |     28 called once for each requested message, as soon as the data for each message is received. | 
|         |     29 Most of the processing for this command happens in the base class. | 
|         |     30 @internalTechnology | 
|         |     31 @prototype | 
|         |     32 */ | 
|         |     33 class CImapFetchMultiBodyStructures : public CImapFetchBodyStructureBase | 
|         |     34 	{ | 
|         |     35 public: | 
|         |     36 	static CImapFetchMultiBodyStructures* NewL(CImapFolderInfo* aSelectedFolderInfo, TInt aLogId, const TDesC8& aSequenceSet, const TDesC8& aHeaderFields, MImapFetchStructureObserver& aObserver); | 
|         |     37 	~CImapFetchMultiBodyStructures(); | 
|         |     38  | 
|         |     39 private: | 
|         |     40 	CImapFetchMultiBodyStructures(CImapFolderInfo* aSelectedFolderInfo, TInt aLogId, const TDesC8& aSequenceSet, const TDesC8& aHeaderFields, MImapFetchStructureObserver& aObserver); | 
|         |     41 	void ConstructL(); | 
|         |     42 	 | 
|         |     43 	// From CImapCommand | 
|         |     44 	CImapCommand::TParseBlockResult DoParseBlockL(const TDesC8& aData); | 
|         |     45 	void WaitingForMoreDataL(); | 
|         |     46  | 
|         |     47 private: | 
|         |     48 	MImapFetchStructureObserver& iObserver; | 
|         |     49 	}; | 
|         |     50  | 
|         |     51 #endif // __CIMAPFETCHMULTIBODYSTRUCTURES_H__ |