[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [kdepim-addons] plugins/messageviewer/bodypartformatter/semantic: Add support for the new PDF extrac
From: Volker Krause <null () kde ! org>
Date: 2018-04-30 15:27:21
Message-ID: E1fDAi1-0006HD-R4 () code ! kde ! org
[Download RAW message or body]
Git commit f3964e5a945c4bb41c6665d9aa6e609b62b1e371 by Volker Krause.
Committed on 30/04/2018 at 15:27.
Pushed by vkrause into branch 'master'.
Add support for the new PDF extractors
M +8 -5 plugins/messageviewer/bodypartformatter/semantic/semanticprocessor.cpp
https://commits.kde.org/kdepim-addons/f3964e5a945c4bb41c6665d9aa6e609b62b1e371
diff --git a/plugins/messageviewer/bodypartformatter/semantic/semanticprocessor.cpp \
b/plugins/messageviewer/bodypartformatter/semantic/semanticprocessor.cpp index \
e653336e..de568195 100644
--- a/plugins/messageviewer/bodypartformatter/semantic/semanticprocessor.cpp
+++ b/plugins/messageviewer/bodypartformatter/semantic/semanticprocessor.cpp
@@ -25,6 +25,7 @@
#include <KItinerary/ExtractorPreprocessor>
#include <KItinerary/ExtractorPostprocessor>
#include <KItinerary/JsonLdDocument>
+#include <KItinerary/PdfDocument>
#include <KItinerary/StructuredDataExtractor>
#include <KPkPass/Pass>
@@ -102,20 +103,22 @@ MimeTreeParser::MessagePart::Ptr \
SemanticProcessor::process(MimeTreeParser::Inte
qCDebug(SEMANTIC_LOG) << "Found unstructured extractor rules for message" << \
extractors.size();
ExtractorPreprocessor preproc;
+ std::unique_ptr<PdfDocument> pdfDoc;
if (part.content()->contentType()->isPlainText()) {
preproc.preprocessPlainText(part.content()->decodedText());
} else if (part.content()->contentType()->isHTMLText()) {
preproc.preprocessHtml(part.content()->decodedText());
} else if (part.content()->contentType()->mimeType() == "application/pdf") {
- preproc.preprocessPdf(part.content()->decodedContent());
+ pdfDoc.reset(PdfDocument::fromData(part.content()->decodedContent()));
}
+ ExtractorEngine engine;
+ engine.setSenderDate(static_cast<KMime::Message \
*>(part.content()->topLevel())->date()->dateTime()); + \
engine.setText(preproc.text()); + engine.setPass(pass.get());
+ engine.setPdfDocument(pdfDoc.get());
for (auto extractor : extractors) {
- ExtractorEngine engine;
engine.setExtractor(extractor);
- engine.setSenderDate(static_cast<KMime::Message \
*>(part.content()->topLevel())->date()->dateTime());
- engine.setText(preproc.text());
- engine.setPass(pass.get());
const auto data = engine.extract();
qCDebug(SEMANTIC_LOG).noquote() << QJsonDocument(data).toJson();
const auto decodedData = JsonLdDocument::fromJson(data);
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic