Messagelib
7 #include "attachmentupdatejob.h"
8 #include "MessageCore/AttachmentFromUrlBaseJob"
9 #include "attachmentfromfolderjob.h"
10 #include "attachmentfromurljob.h"
11 #include "attachmentfromurlutils.h"
12 #include "messagecore_debug.h"
13 #include <KLocalizedString>
16 using namespace MessageCore;
18 class Q_DECL_HIDDEN MessageCore::AttachmentUpdateJob::AttachmentUpdateJobPrivate
21 AttachmentUpdateJobPrivate(AttachmentUpdateJob *qq);
24 void loadJobResult(
KJob *);
26 AttachmentUpdateJob *
const q;
31 AttachmentUpdateJob::AttachmentUpdateJobPrivate::AttachmentUpdateJobPrivate(AttachmentUpdateJob *qq)
36 void AttachmentUpdateJob::AttachmentUpdateJobPrivate::doStart()
38 Q_ASSERT(mOriginalPart);
39 if (mOriginalPart->url().isEmpty()) {
40 qCDebug(MESSAGECORE_LOG) <<
" url is empty. We can't update file";
41 q->setError(KJob::UserDefinedError);
42 q->setErrorText(
i18n(
"URL is empty."));
46 MessageCore::AttachmentFromUrlBaseJob *job = MessageCore::AttachmentFromUrlUtils::createAttachmentJob(mOriginalPart->url(), q);
47 connect(job, &AttachmentFromUrlBaseJob::result, q, [
this](
KJob *job) {
53 void AttachmentUpdateJob::AttachmentUpdateJobPrivate::loadJobResult(
KJob *job)
56 q->setError(KJob::UserDefinedError);
65 mUpdatedPart->setName(q->originalPart()->name());
66 mUpdatedPart->setFileName(q->originalPart()->fileName());
67 mUpdatedPart->setDescription(q->originalPart()->description());
68 mUpdatedPart->setSigned(q->originalPart()->isSigned());
69 mUpdatedPart->setEncrypted(q->originalPart()->isEncrypted());
70 mUpdatedPart->setEncoding(q->originalPart()->encoding());
71 mUpdatedPart->setMimeType(q->originalPart()->mimeType());
72 mUpdatedPart->setInline(q->originalPart()->isInline());
78 , d(new AttachmentUpdateJobPrivate(this))
80 d->mOriginalPart = part;
83 AttachmentUpdateJob::~AttachmentUpdateJob() =
default;
94 return d->mOriginalPart;
99 return d->mUpdatedPart;
102 #include "moc_attachmentupdatejob.cpp"
virtual Q_SCRIPTABLE void start()=0
AttachmentPart::Ptr attachmentPart() const
Returns the loaded attachment.
Q_SCRIPTABLE Q_NOREPLY void start()
QString i18n(const char *text, const TYPE &arg...)
A base class for jobs to load attachments from different sources.
virtual QString errorString() const
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Thu May 19 2022 03:53:24 by
doxygen 1.8.17 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.