Move TrustedDevice to its own source files.
authorCarl Hetherington <cth@carlh.net>
Wed, 29 Apr 2020 22:28:33 +0000 (00:28 +0200)
committerCarl Hetherington <cth@carlh.net>
Wed, 6 May 2020 18:36:02 +0000 (20:36 +0200)
src/lib/screen.cc
src/lib/screen.h
src/lib/trusted_device.cc [new file with mode: 0644]
src/lib/trusted_device.h [new file with mode: 0644]
src/lib/wscript

index 6323708..c4bcb41 100644 (file)
@@ -77,38 +77,6 @@ Screen::trusted_device_thumbprints () const
        return t;
 }
 
-TrustedDevice::TrustedDevice (string thumbprint)
-       : _thumbprint (thumbprint)
-{
-
-}
-
-TrustedDevice::TrustedDevice (dcp::Certificate certificate)
-       : _certificate (certificate)
-{
-
-}
-
-string
-TrustedDevice::as_string () const
-{
-       if (_certificate) {
-               return _certificate->certificate(true);
-       }
-
-       return *_thumbprint;
-}
-
-string
-TrustedDevice::thumbprint () const
-{
-       if (_certificate) {
-               return _certificate->thumbprint ();
-       }
-
-       return *_thumbprint;
-}
-
 
 KDMWithMetadataPtr
 kdm_for_screen (
index 33c7f28..a564f1e 100644 (file)
@@ -22,6 +22,7 @@
 #define DCPOMATIC_SCREEN_H
 
 #include "kdm_with_metadata.h"
+#include "trusted_device.h"
 #include <dcp/certificate.h>
 #include <libcxml/cxml.h>
 #include <boost/optional.hpp>
 class Cinema;
 class Film;
 
-class TrustedDevice
-{
-public:
-       explicit TrustedDevice (std::string);
-       explicit TrustedDevice (dcp::Certificate);
-
-       boost::optional<dcp::Certificate> certificate () const {
-               return _certificate;
-       }
-
-       std::string thumbprint () const;
-       std::string as_string () const;
-
-private:
-       boost::optional<dcp::Certificate> _certificate;
-       boost::optional<std::string> _thumbprint;
-};
-
 namespace dcpomatic {
 
 /** @class Screen
diff --git a/src/lib/trusted_device.cc b/src/lib/trusted_device.cc
new file mode 100644 (file)
index 0000000..5849b8f
--- /dev/null
@@ -0,0 +1,56 @@
+/*
+    Copyright (C) 2013-2016 Carl Hetherington <cth@carlh.net>
+
+    This file is part of DCP-o-matic.
+
+    DCP-o-matic is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    DCP-o-matic is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with DCP-o-matic.  If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+#include "trusted_device.h"
+
+using std::string;
+
+TrustedDevice::TrustedDevice (string thumbprint)
+       : _thumbprint (thumbprint)
+{
+
+}
+
+TrustedDevice::TrustedDevice (dcp::Certificate certificate)
+       : _certificate (certificate)
+{
+
+}
+
+string
+TrustedDevice::as_string () const
+{
+       if (_certificate) {
+               return _certificate->certificate(true);
+       }
+
+       return *_thumbprint;
+}
+
+string
+TrustedDevice::thumbprint () const
+{
+       if (_certificate) {
+               return _certificate->thumbprint ();
+       }
+
+       return *_thumbprint;
+}
+
diff --git a/src/lib/trusted_device.h b/src/lib/trusted_device.h
new file mode 100644 (file)
index 0000000..7c6af3e
--- /dev/null
@@ -0,0 +1,46 @@
+/*
+    Copyright (C) 2013-2019 Carl Hetherington <cth@carlh.net>
+
+    This file is part of DCP-o-matic.
+
+    DCP-o-matic is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    DCP-o-matic is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with DCP-o-matic.  If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+#ifndef DCPOMATIC_TRUSTED_DEVICE_H
+#define DCPOMATIC_TRUSTED_DEVICE_H
+
+#include <dcp/certificate.h>
+#include <boost/optional.hpp>
+#include <string>
+
+class TrustedDevice
+{
+public:
+       explicit TrustedDevice (std::string);
+       explicit TrustedDevice (dcp::Certificate);
+
+       boost::optional<dcp::Certificate> certificate () const {
+               return _certificate;
+       }
+
+       std::string thumbprint () const;
+       std::string as_string () const;
+
+private:
+       boost::optional<dcp::Certificate> _certificate;
+       boost::optional<std::string> _thumbprint;
+};
+
+#endif
index 49c55cc..508e5f9 100644 (file)
@@ -162,6 +162,7 @@ sources = """
           text_ring_buffers.cc
           timer.cc
           transcode_job.cc
+          trusted_device.cc
           types.cc
           signal_manager.cc
           stdout_log.cc