X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fexceptions.cc;h=66db9fda71d0b13414515a697b8a8acced87810b;hb=fe933ebb2c55b4235fcba5d02af2ba91c272fc88;hp=d394ad4b2c4e41e1c8285e31b21efc3d1374e9c2;hpb=a1f7bf2d9e5610075fbd898cdf52f4f8373741f2;p=dcpomatic.git diff --git a/src/lib/exceptions.cc b/src/lib/exceptions.cc index d394ad4b2..66db9fda7 100644 --- a/src/lib/exceptions.cc +++ b/src/lib/exceptions.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2012-2014 Carl Hetherington + Copyright (C) 2012-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,13 +18,17 @@ */ + #include "exceptions.h" #include "compose.hpp" #include "i18n.h" + using std::string; using std::runtime_error; +using boost::optional; + /** @param f File that we were trying to open */ OpenFileError::OpenFileError (boost::filesystem::path f, int error, Mode mode) @@ -40,6 +44,7 @@ OpenFileError::OpenFileError (boost::filesystem::path f, int error, Mode mode) } + FileNotFoundError::FileNotFoundError (boost::filesystem::path f) : runtime_error(String::compose("File %1 not found", f.string())) , _file (f) @@ -47,82 +52,118 @@ FileNotFoundError::FileNotFoundError (boost::filesystem::path f) } + ReadFileError::ReadFileError (boost::filesystem::path f, int e) - : FileError (String::compose (_("could not read from file %1 (%2)"), f.string(), strerror (e)), f) + : FileError (String::compose(_("could not read from file %1 (%2)"), f.string(), strerror(e)), f) { } + WriteFileError::WriteFileError (boost::filesystem::path f, int e) - : FileError (String::compose (_("could not write to file %1 (%2)"), f.string(), strerror (e)), f) + : FileError (String::compose(_("could not write to file %1 (%2)"), f.string(), strerror(e)), f) { } + MissingSettingError::MissingSettingError (string s) - : SettingError (s, String::compose (_("Missing required setting %1"), s)) + : SettingError (s, String::compose(_("Missing required setting %1"), s)) { } + PixelFormatError::PixelFormatError (string o, AVPixelFormat f) - : runtime_error (String::compose (_("Cannot handle pixel format %1 during %2"), (int) f, o)) + : runtime_error (String::compose(_("Cannot handle pixel format %1 during %2"), (int) f, o)) { } + TextSubtitleError::TextSubtitleError (string saw, string expecting, boost::filesystem::path f) - : FileError (String::compose (_("Error in subtitle file: saw %1 while expecting %2"), saw.empty() ? "[nothing]" : saw, expecting), f) + : FileError (String::compose(_("Error in subtitle file: saw %1 while expecting %2"), saw.empty() ? "[nothing]" : saw, expecting), f) { } + InvalidSignerError::InvalidSignerError () : runtime_error (_("The certificate chain for signing is invalid")) { } + InvalidSignerError::InvalidSignerError (string reason) - : runtime_error (String::compose (_("The certificate chain for signing is invalid (%1)"), reason)) + : runtime_error (String::compose(_("The certificate chain for signing is invalid (%1)"), reason)) { } + ProgrammingError::ProgrammingError (string file, int line, string message) - : runtime_error (String::compose (_("Programming error at %1:%2 %3"), file, line, message)) + : runtime_error (String::compose(_("Programming error at %1:%2 %3"), file, line, message)) { } + KDMAsContentError::KDMAsContentError () : runtime_error (_("This file is a KDM. KDMs should be added to DCP content by right-clicking the content and choosing \"Add KDM\".")) { } + +NetworkError::NetworkError (string s, optional d) + : runtime_error (String::compose("%1%2", s, d ? String::compose(" (%1)", *d) : "")) + , _summary (s) + , _detail (d) +{ + +} + + KDMError::KDMError (string s, string d) - : runtime_error (String::compose ("%1 (%2)", s, d)) + : runtime_error (String::compose("%1 (%2)", s, d)) , _summary (s) , _detail (d) { } -GLError::GLError (char const * last, int e) + +GLError::GLError (char const* last, int e) : runtime_error (String::compose("%1 failed %2", last, e)) { } -CopyError::CopyError (string m, int n) - : runtime_error (String::compose("%1 (%2)", m, n)) + +GLError::GLError (char const* message) + : runtime_error (message) +{ + +} + + +CopyError::CopyError (string m, optional n) + : runtime_error (String::compose("%1%2", m, n ? String::compose(" (%1)", *n) : "")) , _message (m) , _number (n) { } + +CommunicationFailedError::CommunicationFailedError () + : CopyError (_("Lost communication between main and writer processes")) +{ + +} + + VerifyError::VerifyError (string m, int n) : runtime_error (String::compose("%1 (%2)", m, n)) , _message (m)