diff Plugin/DefaultAuthorizationParser.cpp @ 115:0eed78c1e177

cache the UserProfile + updated http filter logic
author Alain Mazy <am@osimis.io>
date Fri, 08 Sep 2023 09:52:21 +0200
parents 7381a7674b36
children 89eddd4b2f6a
line wrap: on
line diff
--- a/Plugin/DefaultAuthorizationParser.cpp	Wed Sep 06 17:02:41 2023 +0200
+++ b/Plugin/DefaultAuthorizationParser.cpp	Fri Sep 08 09:52:21 2023 +0200
@@ -31,7 +31,8 @@
     instancesPattern_("^/web-viewer/instances/[a-z0-9]+-([a-f0-9-]+)_[0-9]+$"),
     osimisViewerSeries_("^/osimis-viewer/series/([a-f0-9-]+)(|/.*)$"),
     osimisViewerImages_("^/osimis-viewer/(images|custom-command)/([a-f0-9-]+)(|/.*)$"),
-    osimisViewerStudies_("^/osimis-viewer/studies/([a-f0-9-]+)(|/.*)$")
+    osimisViewerStudies_("^/osimis-viewer/studies/([a-f0-9-]+)(|/.*)$"),
+    listOfResourcesPattern_("^/(patients|studies|series|instances)(|/)$")
   {
     std::string tmp = dicomWebRoot;
     while (!tmp.empty() &&
@@ -53,6 +54,17 @@
       "^" + tmp + "/(studies|series|instances)(|/)$");
   }
 
+  bool DefaultAuthorizationParser::IsListOfResources(const std::string& uri)
+  {
+    if (boost::regex_match(uri, listOfResourcesPattern_))
+    {
+      return true;
+    }
+
+    return false;
+  }
+
+
 
   bool DefaultAuthorizationParser::Parse(AccessedResources& target,
                                          const std::string& uri,