# HG changeset patch # User Alain Mazy # Date 1710490101 -3600 # Node ID 9f686ee4b158786b0aebfee805b65cd28e0c7f32 # Parent e7cee71a2f8641d589ed6a5b297cfa6adc09defa Added missing parsing of /dicom-web/studies/.../instances diff -r e7cee71a2f86 -r 9f686ee4b158 NEWS --- a/NEWS Fri Feb 16 08:40:08 2024 +0100 +++ b/NEWS Fri Mar 15 09:08:21 2024 +0100 @@ -1,3 +1,8 @@ +Pending changes in the mainline +=============================== + +* Added missing parsing of /dicom-web/studies/.../instances + 2024-02-16 - v 0.7.0 ==================== diff -r e7cee71a2f86 -r 9f686ee4b158 Plugin/DefaultAuthorizationParser.cpp --- a/Plugin/DefaultAuthorizationParser.cpp Fri Feb 16 08:40:08 2024 +0100 +++ b/Plugin/DefaultAuthorizationParser.cpp Fri Mar 15 09:08:21 2024 +0100 @@ -46,7 +46,7 @@ // note: if you add new DICOMWeb routes here, add them in the DefaultConfiguration.json too dicomWebStudies_ = boost::regex( - "^" + tmp + "/studies/([.0-9]+)(|/series|/metadata)(|/)$"); + "^" + tmp + "/studies/([.0-9]+)(|/series|/metadata|/instances)(|/)$"); dicomWebSeries_ = boost::regex( "^" + tmp + "/studies/([.0-9]+)/series/([.0-9]+)(|/instances|/rendered|/metadata)(|/)$"); diff -r e7cee71a2f86 -r 9f686ee4b158 Plugin/DefaultConfiguration.json --- a/Plugin/DefaultConfiguration.json Fri Feb 16 08:40:08 2024 +0100 +++ b/Plugin/DefaultConfiguration.json Fri Mar 15 09:08:21 2024 +0100 @@ -39,7 +39,8 @@ // "StandardConfigurations": [ // new in v 0.4.0 // "osimis-web-viewer", // "stone-webviewer", - // "orthanc-explorer-2" + // "orthanc-explorer-2", + // "ohif" // ], //"UncheckedResources" : [], diff -r e7cee71a2f86 -r 9f686ee4b158 UnitTestsSources/UnitTestsMain.cpp --- a/UnitTestsSources/UnitTestsMain.cpp Fri Feb 16 08:40:08 2024 +0100 +++ b/UnitTestsSources/UnitTestsMain.cpp Fri Mar 15 09:08:21 2024 +0100 @@ -196,12 +196,23 @@ ASSERT_TRUE(IsAccessing(accesses, AccessLevel_Patient, patientOrthancId)); accesses.clear(); + parser.Parse(accesses, "/dicom-web/studies/2.2/instances", noGetArguments.GetMap()); + ASSERT_TRUE(IsAccessing(accesses, AccessLevel_Study, studyOrthancId)); + ASSERT_TRUE(IsAccessing(accesses, AccessLevel_Patient, patientOrthancId)); + + accesses.clear(); parser.Parse(accesses, "/dicom-web/studies/2.2/series/3.3", noGetArguments.GetMap()); ASSERT_TRUE(IsAccessing(accesses, AccessLevel_Series, seriesOrthancId)); ASSERT_TRUE(IsAccessing(accesses, AccessLevel_Study, studyOrthancId)); ASSERT_TRUE(IsAccessing(accesses, AccessLevel_Patient, patientOrthancId)); accesses.clear(); + parser.Parse(accesses, "/dicom-web/studies/2.2/series/3.3/instances", noGetArguments.GetMap()); + ASSERT_TRUE(IsAccessing(accesses, AccessLevel_Series, seriesOrthancId)); + ASSERT_TRUE(IsAccessing(accesses, AccessLevel_Study, studyOrthancId)); + ASSERT_TRUE(IsAccessing(accesses, AccessLevel_Patient, patientOrthancId)); + + accesses.clear(); parser.Parse(accesses, "/dicom-web/studies/2.2/series/3.3/rendered", noGetArguments.GetMap()); ASSERT_TRUE(IsAccessing(accesses, AccessLevel_Series, seriesOrthancId)); ASSERT_TRUE(IsAccessing(accesses, AccessLevel_Study, studyOrthancId));