File indexing completed on 2024-06-23 05:18:31

0001 /*
0002   SPDX-FileCopyrightText: 2009 Constantin Berzan <exit3219@gmail.com>
0003 
0004   SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include "contentjobbase.h"
0010 #include "messagecomposer_export.h"
0011 
0012 #include <MessageCore/AttachmentPart>
0013 
0014 namespace MessageComposer
0015 {
0016 class AttachmentJobPrivate;
0017 
0018 /**
0019  * @brief The AttachmentJob class
0020  */
0021 class MESSAGECOMPOSER_EXPORT AttachmentJob : public ContentJobBase
0022 {
0023     Q_OBJECT
0024 
0025 public:
0026     explicit AttachmentJob(MessageCore::AttachmentPart::Ptr part, QObject *parent = nullptr);
0027     ~AttachmentJob() override;
0028 
0029     [[nodiscard]] MessageCore::AttachmentPart::Ptr attachmentPart() const;
0030     void setAttachmentPart(const MessageCore::AttachmentPart::Ptr &part);
0031 
0032 protected Q_SLOTS:
0033     void doStart() override;
0034     void process() override;
0035 
0036 private:
0037     Q_DECLARE_PRIVATE(AttachmentJob)
0038 };
0039 }