Mercurial > hg > orthanc-authorization
comparison Plugin/PermissionParser.h @ 191:55435a4dd2c6
cppcheck
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 05 Jun 2024 15:23:55 +0200 |
parents | c4b908970ae4 |
children | 2f1e872e8eaa |
comparison
equal
deleted
inserted
replaced
190:de232f9b3a60 | 191:55435a4dd2c6 |
---|---|
25 #include <boost/regex.hpp> | 25 #include <boost/regex.hpp> |
26 #include <boost/thread/mutex.hpp> | 26 #include <boost/thread/mutex.hpp> |
27 | 27 |
28 namespace OrthancPlugins | 28 namespace OrthancPlugins |
29 { | 29 { |
30 struct PermissionPattern | 30 class PermissionPattern : public boost::noncopyable |
31 { | 31 { |
32 OrthancPluginHttpMethod method; | 32 private: |
33 boost::regex pattern; | 33 OrthancPluginHttpMethod method_; |
34 std::set<std::string> permissions; | 34 boost::regex pattern_; |
35 std::set<std::string> permissions_; | |
35 | 36 |
36 PermissionPattern(const OrthancPluginHttpMethod& method, const std::string& patternRegex, const std::string& permissions); | 37 public: |
38 PermissionPattern(const OrthancPluginHttpMethod& method, | |
39 const std::string& patternRegex, | |
40 const std::string& permissions); | |
41 | |
42 OrthancPluginHttpMethod GetMethod() const | |
43 { | |
44 return method_; | |
45 } | |
46 | |
47 const boost::regex& GetPattern() const | |
48 { | |
49 return pattern_; | |
50 } | |
51 | |
52 const std::set<std::string>& GetPermissions() const | |
53 { | |
54 return permissions_; | |
55 } | |
37 }; | 56 }; |
38 | 57 |
39 class PermissionParser | 58 class PermissionParser : public boost::noncopyable |
40 { | 59 { |
41 private: | 60 private: |
42 mutable boost::mutex mutex_; | 61 mutable boost::mutex mutex_; |
43 std::list<PermissionPattern> permissionsPattern_; | 62 std::list<PermissionPattern*> permissionsPattern_; |
44 std::string dicomWebRoot_; | 63 std::string dicomWebRoot_; |
45 std::string oe2Root_; | 64 std::string oe2Root_; |
46 | 65 |
47 public: | 66 public: |
48 PermissionParser(const std::string& dicomWebRoot, | 67 PermissionParser(const std::string& dicomWebRoot, |
49 const std::string& oe2Root); | 68 const std::string& oe2Root); |
69 | |
70 ~PermissionParser(); | |
50 | 71 |
51 void Add(const std::string& method, | 72 void Add(const std::string& method, |
52 const std::string& patternRegex, | 73 const std::string& patternRegex, |
53 const std::string& permission); | 74 const std::string& permission); |
54 | 75 |