1 /* |
1 /* |
2 * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). |
2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
3 * All rights reserved. |
3 * All rights reserved. |
4 * This component and the accompanying materials are made available |
4 * This component and the accompanying materials are made available |
5 * under the terms of "Eclipse Public License v1.0" |
5 * under the terms of "Eclipse Public License v1.0" |
6 * which accompanies this distribution, and is available |
6 * which accompanies this distribution, and is available |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
17 |
17 |
18 #ifndef CEMAILFOLDER_H |
18 #ifndef CEMAILFOLDER_H |
19 #define CEMAILFOLDER_H |
19 #define CEMAILFOLDER_H |
20 |
20 |
21 #include <emailapidefs.h> |
21 #include <emailapidefs.h> |
22 #include "CFSMailCommon.h" |
22 #include "cfsmailcommon.h" |
23 #include <memailfolder.h> |
23 #include <memailfolder.h> |
24 #include "MFSMailEventObserver.h" |
24 #include "mfsmaileventobserver.h" |
25 |
25 |
26 using namespace EmailInterface; |
26 using namespace EmailInterface; |
27 |
27 |
28 class CFSMailPlugin; |
28 class CFSMailPlugin; |
29 class CPluginData; |
29 class CPluginData; |
47 CFSMailFolder *aFolder ); |
47 CFSMailFolder *aFolder ); |
48 |
48 |
49 ~CEmailFolder(); |
49 ~CEmailFolder(); |
50 |
50 |
51 public: // from MEmailInterface |
51 public: // from MEmailInterface |
52 TEmailTypeId InterfaceId() const; |
52 virtual TEmailTypeId InterfaceId() const; |
53 |
53 |
54 void Release(); |
54 virtual void Release(); |
55 |
55 |
56 public: // from MEmailFolder |
56 public: // from MEmailFolder |
57 TFolderId FolderId() const; |
57 virtual TFolderId FolderId() const; |
58 |
58 |
59 TFolderId ParentFolderId() const; |
59 virtual TFolderId ParentFolderId() const; |
60 |
60 |
61 TFolderType FolderType() const; |
61 virtual TFolderType FolderType() const; |
62 |
62 |
63 TPtrC Name() const; |
63 virtual TPtrC Name() const; |
64 |
64 |
65 /** |
65 /** |
66 * Returns direct childs of this folder, i.e. this is not recursive. |
66 * Returns direct childs of this folder, i.e. this is not recursive. |
67 * @return number of subfolders or an error code |
67 * @return number of subfolders or an error code |
68 */ |
68 */ |
69 TInt GetSubfoldersL( |
69 virtual TInt GetSubfoldersL( |
70 RFolderArray& aSubfolders ) const; |
70 RFolderArray& aSubfolders ) const; |
71 |
71 |
72 EmailInterface::MMessageIterator* MessagesL( |
72 virtual EmailInterface::MMessageIterator* MessagesL( |
73 const RSortCriteriaArray& aCriteria ); |
73 const RSortCriteriaArray& aCriteria ); |
74 |
74 |
75 void DeleteMessagesL( const REmailMessageIdArray& aMessageIds ); |
75 virtual void DeleteMessagesL( const REmailMessageIdArray& aMessageIds ); |
76 |
76 |
77 private: // constructors |
77 private: // constructors |
78 CEmailFolder( CPluginData& aPluginData, const TFolderId& aFolderId, CFSMailFolder *aFolder ); |
78 CEmailFolder( CPluginData& aPluginData, const TFolderId& aFolderId, CFSMailFolder *aFolder ); |
79 |
79 |
80 void ConstructL(); |
80 void ConstructL(); |