2 * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
21 * @author Pawel Misiak (p.misiak@samsung.com)
29 #include <dpl/shared_ptr.h>
30 #include "VirtualMessage.h"
33 #include "ToRecipient.h"
34 #include "CcRecipient.h"
35 #include "BccRecipient.h"
36 #include "Attachments.h"
42 class IEmail : virtual public IMessage,
48 explicit IEmail(const std::string& id = "");
52 IEmail & operator <<(const VirtualMessage& msg);
54 void setHtmlBody(const std::string& htmlBody = "")
56 m_htmlBody = htmlBody;
59 std::string getHtmlBody() const
64 virtual int getAccountID() = 0;
65 virtual int getUID() = 0;
66 virtual int isBodyDownloaded() = 0;
68 virtual int downloadBody() = 0;
69 virtual void downloadBodyCancel(int handle ) = 0;
71 virtual int downloadAttachment(const Api::Messaging::IAttachmentPtr& attachment) = 0;
74 virtual void sync(int account_id);
75 virtual void sync_folder(int account_id, int folder_id);
78 std::string m_htmlBody; //html body for Email.
81 typedef DPL::SharedPtr<IEmail> IEmailPtr;