diff Framework/Plugins/DatabaseBackendAdapterV4.cpp @ 577:991b9b285e1a attach-custom-data tip

fix custom-data handling
author Alain Mazy <am@orthanc.team>
date Wed, 02 Oct 2024 09:40:20 +0200
parents f18e46d7dbf8
children
line wrap: on
line diff
--- a/Framework/Plugins/DatabaseBackendAdapterV4.cpp	Tue Oct 01 16:02:48 2024 +0200
+++ b/Framework/Plugins/DatabaseBackendAdapterV4.cpp	Wed Oct 02 09:40:20 2024 +0200
@@ -225,6 +225,9 @@
       attachment->set_compression_type(compressionType);
       attachment->set_compressed_size(compressedSize);
       attachment->set_compressed_hash(compressedHash);
+#if ORTHANC_PLUGINS_HAS_ATTACHMENTS_CUSTOM_DATA == 1
+      attachment->set_custom_data(customData);
+#endif
     }
 
     virtual void SignalDeletedResource(const std::string& publicId,
@@ -288,6 +291,9 @@
         lookupAttachment_->mutable_attachment()->set_compression_type(compressionType);
         lookupAttachment_->mutable_attachment()->set_compressed_size(compressedSize);
         lookupAttachment_->mutable_attachment()->set_compressed_hash(compressedHash);
+#if ORTHANC_PLUGINS_HAS_ATTACHMENTS_CUSTOM_DATA==1
+        lookupAttachment_->mutable_attachment()->set_custom_data(customData);
+#endif
       }
       else
       {
@@ -684,6 +690,9 @@
       
       case Orthanc::DatabasePluginMessages::OPERATION_ADD_ATTACHMENT:
       {
+#if ORTHANC_PLUGINS_VERSION_IS_ABOVE(1, 12, 6)
+        backend.AddAttachment(response, manager, request.add_attachment());
+#else
         OrthancPluginAttachment attachment;
         attachment.uuid = request.add_attachment().attachment().uuid().c_str();
         attachment.contentType = request.add_attachment().attachment().content_type();
@@ -694,9 +703,9 @@
         attachment.compressedHash = request.add_attachment().attachment().compressed_hash().c_str();
         
         backend.AddAttachment(manager, request.add_attachment().id(), attachment, request.add_attachment().revision());
+#endif
         break;
       }
-      
       case Orthanc::DatabasePluginMessages::OPERATION_CLEAR_CHANGES:
       {
         backend.ClearChanges(manager);