summaryrefslogtreecommitdiff
path: root/src/lib/screen.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2020-04-30 01:06:13 +0200
committerCarl Hetherington <cth@carlh.net>2020-05-06 20:37:13 +0200
commit2d5c6f23650ae3a912badc8b059c83d40c61a0fa (patch)
tree12d8d4be0f1eeceec1a547aa41a9e349eb1678d4 /src/lib/screen.cc
parentc4e10c9a007345cca8594d7bfd23138d56e21d5e (diff)
Derive Screen from a new class KDMRecipient.
Diffstat (limited to 'src/lib/screen.cc')
-rw-r--r--src/lib/screen.cc17
1 files changed, 2 insertions, 15 deletions
diff --git a/src/lib/screen.cc b/src/lib/screen.cc
index c4bcb41c7..2441efccb 100644
--- a/src/lib/screen.cc
+++ b/src/lib/screen.cc
@@ -34,15 +34,8 @@ using boost::optional;
using namespace dcpomatic;
Screen::Screen (cxml::ConstNodePtr node)
- : name (node->string_child("Name"))
- , notes (node->optional_string_child("Notes").get_value_or (""))
+ : KDMRecipient (node)
{
- if (node->optional_string_child ("Certificate")) {
- recipient = dcp::Certificate (node->string_child ("Certificate"));
- } else if (node->optional_string_child ("Recipient")) {
- recipient = dcp::Certificate (node->string_child ("Recipient"));
- }
-
BOOST_FOREACH (cxml::ConstNodePtr i, node->node_children ("TrustedDevice")) {
if (boost::algorithm::starts_with(i->content(), "-----BEGIN CERTIFICATE-----")) {
trusted_devices.push_back (TrustedDevice(dcp::Certificate(i->content())));
@@ -55,13 +48,7 @@ Screen::Screen (cxml::ConstNodePtr node)
void
Screen::as_xml (xmlpp::Element* parent) const
{
- parent->add_child("Name")->add_child_text (name);
- if (recipient) {
- parent->add_child("Recipient")->add_child_text (recipient->certificate (true));
- }
-
- parent->add_child("Notes")->add_child_text (notes);
-
+ KDMRecipient::as_xml (parent);
BOOST_FOREACH (TrustedDevice i, trusted_devices) {
parent->add_child("TrustedDevice")->add_child_text(i.as_string());
}