summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAshod Nakashian <ashod.nakashian@collabora.co.uk>2018-10-02 06:02:39 -0400
committerAshod Nakashian <ashnakash@gmail.com>2019-12-26 04:34:37 +0100
commit7a3d0af89a302bd074cc21b4f25402922670bbd3 (patch)
tree5f839522c19cf70f73292db1fc4017c954c89d64
parent412eaa9d66157e1da71580a245e1693143e6de34 (diff)
sw: paragraph-sign: formatting
Change-Id: I9bf1b58aa6e18202a5f7eba010cc5b914e1d33d4 Reviewed-on: https://gerrit.libreoffice.org/63005 Tested-by: Jenkins Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit 89c351a2610cc24720f391cf933f8af170de03ed) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85806 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
-rw-r--r--sw/source/core/edit/edfcol.cxx41
1 files changed, 23 insertions, 18 deletions
diff --git a/sw/source/core/edit/edfcol.cxx b/sw/source/core/edit/edfcol.cxx
index ccc5028eb311..8068e618ffcf 100644
--- a/sw/source/core/edit/edfcol.cxx
+++ b/sw/source/core/edit/edfcol.cxx
@@ -360,14 +360,16 @@ SignatureDescr lcl_getSignatureDescr(const uno::Reference<frame::XModel>& xModel
SignatureDescr aDescr;
aDescr.msId = sFieldId;
+ const OUString prefix = ParagraphSignatureRDFNamespace + sFieldId;
const std::map<OUString, OUString> aStatements = lcl_getRDFStatements(xModel, xParagraph);
- const auto itSig = aStatements.find(ParagraphSignatureRDFNamespace + sFieldId + ParagraphSignatureDigestRDFName);
+
+ const auto itSig = aStatements.find(prefix + ParagraphSignatureDigestRDFName);
aDescr.msSignature = (itSig != aStatements.end() ? itSig->second : OUString());
- const auto itDate = aStatements.find(ParagraphSignatureRDFNamespace + sFieldId + ParagraphSignatureDateRDFName);
+ const auto itDate = aStatements.find(prefix + ParagraphSignatureDateRDFName);
aDescr.msDate = (itDate != aStatements.end() ? itDate->second : OUString());
- const auto itUsage = aStatements.find(ParagraphSignatureRDFNamespace + sFieldId + ParagraphSignatureUsageRDFName);
+ const auto itUsage = aStatements.find(prefix + ParagraphSignatureUsageRDFName);
aDescr.msUsage = (itUsage != aStatements.end() ? itUsage->second : OUString());
return aDescr;
@@ -377,14 +379,16 @@ SignatureDescr lcl_getSignatureDescr(const uno::Reference<frame::XModel>& xModel
const uno::Reference<css::text::XTextContent>& xParagraph,
const uno::Reference<css::text::XTextField>& xField)
{
- const std::pair<OUString, OUString> pair = lcl_getRDF(xModel, xField, ParagraphSignatureIdRDFName);
- return (!pair.second.isEmpty() ? lcl_getSignatureDescr(xModel, xParagraph, pair.second) : SignatureDescr());
+ const OUString sFieldId = lcl_getRDF(xModel, xField, ParagraphSignatureIdRDFName).second;
+ if (!sFieldId.isEmpty())
+ return lcl_getSignatureDescr(xModel, xParagraph, sFieldId);
+
+ return SignatureDescr();
}
/// Validate and create the signature field display text from the fields.
-std::pair<bool, OUString>
-lcl_MakeParagraphSignatureFieldText(const SignatureDescr& aDescr,
- const OString& utf8Text)
+std::pair<bool, OUString> lcl_MakeParagraphSignatureFieldText(const SignatureDescr& aDescr,
+ const OString& utf8Text)
{
OUString msg = SwResId(STR_INVALID_SIGNATURE);
bool valid = false;
@@ -400,7 +404,8 @@ lcl_MakeParagraphSignatureFieldText(const SignatureDescr& aDescr,
const std::vector<unsigned char> sig(svl::crypto::DecodeHexString(encSignature));
SignatureInformation aInfo(0);
valid = svl::crypto::Signing::Verify(data, false, sig, aInfo);
- valid = valid && aInfo.nStatus == css::xml::crypto::SecurityOperationStatus_OPERATION_SUCCEEDED;
+ valid = valid
+ && aInfo.nStatus == xml::crypto::SecurityOperationStatus_OPERATION_SUCCEEDED;
msg = SwResId(STR_SIGNED_BY) + ": " + aInfo.ouSubject + ", ";
msg += aDescr.msDate;
@@ -412,7 +417,6 @@ lcl_MakeParagraphSignatureFieldText(const SignatureDescr& aDescr,
return std::make_pair(valid, msg);
}
-
/// Validate and return validation result and signature field display text.
std::pair<bool, OUString>
lcl_MakeParagraphSignatureFieldText(const uno::Reference<frame::XModel>& xModel,
@@ -428,11 +432,10 @@ lcl_MakeParagraphSignatureFieldText(const uno::Reference<frame::XModel>& xModel,
OUString lcl_getNextSignatureId(const uno::Reference<frame::XModel>& xModel,
const uno::Reference<text::XTextContent>& xParagraph)
{
- const std::pair<OUString, OUString> pair = lcl_getRDF(xModel, xParagraph, ParagraphSignatureLastIdRDFName);
- return OUString::number(!pair.second.isEmpty() ? pair.second.toInt32() + 1 : 1);
+ const OUString sFieldId = lcl_getRDF(xModel, xParagraph, ParagraphSignatureLastIdRDFName).second;
+ return OUString::number(!sFieldId.isEmpty() ? sFieldId.toInt32() + 1 : 1);
}
-
/// Creates and inserts Paragraph Signature Metadata field and creates the RDF entry
uno::Reference<text::XTextField> lcl_InsertParagraphSignature(const uno::Reference<frame::XModel>& xModel,
const uno::Reference<text::XTextContent>& xParagraph,
@@ -466,10 +469,11 @@ uno::Reference<text::XTextField> lcl_InsertParagraphSignature(const uno::Referen
// Now set the RDF on the paragraph, since that's what is preserved in .doc(x).
const css::uno::Reference<css::rdf::XResource> xParaSubject(xParagraph, uno::UNO_QUERY);
+ const OUString prefix = ParagraphSignatureRDFNamespace + sId;
SwRDFHelper::addStatement(xModel, MetaNS, MetaFilename, xParaSubject, ParagraphSignatureLastIdRDFName, sId);
- SwRDFHelper::addStatement(xModel, MetaNS, MetaFilename, xParaSubject, ParagraphSignatureRDFNamespace + sId + ParagraphSignatureDigestRDFName, signature);
- SwRDFHelper::addStatement(xModel, MetaNS, MetaFilename, xParaSubject, ParagraphSignatureRDFNamespace + sId + ParagraphSignatureUsageRDFName, usage);
- SwRDFHelper::addStatement(xModel, MetaNS, MetaFilename, xParaSubject, ParagraphSignatureRDFNamespace + sId + ParagraphSignatureDateRDFName, rBuffer.makeStringAndClear());
+ SwRDFHelper::addStatement(xModel, MetaNS, MetaFilename, xParaSubject, prefix + ParagraphSignatureDigestRDFName, signature);
+ SwRDFHelper::addStatement(xModel, MetaNS, MetaFilename, xParaSubject, prefix + ParagraphSignatureUsageRDFName, usage);
+ SwRDFHelper::addStatement(xModel, MetaNS, MetaFilename, xParaSubject, prefix + ParagraphSignatureDateRDFName, rBuffer.makeStringAndClear());
return xField;
}
@@ -512,8 +516,9 @@ bool lcl_UpdateParagraphSignatureField(SwDoc* pDoc,
const uno::Reference<css::text::XTextField>& xField,
const OString& utf8Text)
{
- const std::pair<bool, OUString> res = lcl_MakeParagraphSignatureFieldText(xModel, xParagraph, xField, utf8Text);
- return lcl_DoUpdateParagraphSignatureField(pDoc, xField, res.second);
+ const OUString sDisplayText
+ = lcl_MakeParagraphSignatureFieldText(xModel, xParagraph, xField, utf8Text).second;
+ return lcl_DoUpdateParagraphSignatureField(pDoc, xField, sDisplayText);
}
void lcl_RemoveParagraphMetadataField(const uno::Reference<css::text::XTextField>& xField)