diff OrthancServer/Sources/Database/StatelessDatabaseOperations.cpp @ 5720:89d559e67b03 find-refactoring

fix compatibility with old database plugins
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 19 Jul 2024 09:30:13 +0200
parents 023787ecaff2
children 3f97590cc0c9 ca06dde85358
line wrap: on
line diff
--- a/OrthancServer/Sources/Database/StatelessDatabaseOperations.cpp	Sat Jul 13 00:58:29 2024 +0200
+++ b/OrthancServer/Sources/Database/StatelessDatabaseOperations.cpp	Fri Jul 19 09:30:13 2024 +0200
@@ -3688,8 +3688,7 @@
       }
     };
 
-    class FindStage : public ReadOnlyOperationsT3<std::list<std::string>&, const FindRequest&,
-                                                  const IDatabaseWrapper::Capabilities&>
+    class FindStage : public ReadOnlyOperationsT3<std::list<std::string>&, const IDatabaseWrapper::Capabilities&, const FindRequest& >
     {
     public:
       virtual void ApplyTuple(ReadOnlyTransaction& transaction,
@@ -3699,13 +3698,13 @@
       }
     };
 
-    class ExpandStage : public ReadOnlyOperationsT3<FindResponse&, const FindRequest&, const std::string&>
+    class ExpandStage : public ReadOnlyOperationsT4<FindResponse&, const IDatabaseWrapper::Capabilities&, const FindRequest&, const std::string&>
     {
     public:
       virtual void ApplyTuple(ReadOnlyTransaction& transaction,
                               const Tuple& tuple) ORTHANC_OVERRIDE
       {
-        transaction.ExecuteExpand(tuple.get<0>(), tuple.get<1>(), tuple.get<2>());
+        transaction.ExecuteExpand(tuple.get<0>(), tuple.get<1>(), tuple.get<2>(), tuple.get<3>());
       }
     };
 
@@ -3730,7 +3729,7 @@
       std::list<std::string> identifiers;
 
       FindStage find;
-      find.Apply(*this, identifiers, request, capabilities);
+      find.Apply(*this, identifiers, capabilities, request);
 
       ExpandStage expand;
 
@@ -3741,7 +3740,7 @@
          * another transaction). The database engine must ignore such
          * error cases.
          **/
-        expand.Apply(*this, response, request, *it);
+        expand.Apply(*this, response, capabilities, request, *it);
       }
     }
   }