Mercurial > hg > orthanc
changeset 6147:d6f986202236
take options "RejectSopClasses" and "RejectedSopClasses" as synonyms
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 30 May 2025 22:03:32 +0200 |
parents | 66609557a7ee |
children | 933a549de31f |
files | NEWS OrthancServer/Sources/ServerContext.cpp |
diffstat | 2 files changed, 24 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/NEWS Fri May 30 10:30:04 2025 +0200 +++ b/NEWS Fri May 30 22:03:32 2025 +0200 @@ -9,6 +9,9 @@ - If "LimitMainDicomTagsReconstructLevel" was set, files were not transcoded if they had to. The "LimitMainDicomTagsReconstructLevel" configuration is now ignored when a full processing is required. +* Configuration options "RejectSopClasses" and "RejectedSopClasses" are taken as synonyms. + In Orthanc 1.12.6 and 1.12.7, "RejectSopClasses" was used instead of the expected + "RejectedSopClasses" spelling. Version 1.12.7 (2025-04-07)
--- a/OrthancServer/Sources/ServerContext.cpp Fri May 30 10:30:04 2025 +0200 +++ b/OrthancServer/Sources/ServerContext.cpp Fri May 30 22:03:32 2025 +0200 @@ -495,7 +495,27 @@ std::list<std::string> acceptedSopClasses; std::set<std::string> rejectedSopClasses; lock.GetConfiguration().GetListOfStringsParameter(acceptedSopClasses, "AcceptedSopClasses"); - lock.GetConfiguration().GetSetOfStringsParameter(rejectedSopClasses, "RejectSopClasses"); + + static const char* const REJECTED_SOP_CLASS = "RejectedSopClasses"; + if (lock.GetJson().isMember(REJECTED_SOP_CLASS)) + { + lock.GetConfiguration().GetSetOfStringsParameter(rejectedSopClasses, REJECTED_SOP_CLASS); + } + else + { + static const char* const REJECT_SOP_CLASS = "RejectSopClasses"; + if (lock.GetJson().isMember(REJECT_SOP_CLASS)) + { + /** + * This is for backward compatibility. In Orthanc 1.12.6, + * there was a typo: "RejectedSopClasses" was spelled as + * "RejectSopClasses". + * https://discourse.orthanc-server.org/t/fix-for-config-param-rejectsopclasses-vs-rejectedsopclasses/5900 + **/ + lock.GetConfiguration().GetSetOfStringsParameter(rejectedSopClasses, REJECT_SOP_CLASS); + } + } + SetAcceptedSopClasses(acceptedSopClasses, rejectedSopClasses); defaultDicomRetrieveMethod_ = StringToRetrieveMethod(lock.GetConfiguration().GetStringParameter("DicomDefaultRetrieveMethod", "C-MOVE"));