diff OrthancServer/DicomProtocol/DicomUserConnection.cpp @ 1998:9b61701c35f2

New URI "/modalities/.../move" to issue C-Move SCU requests
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 25 May 2016 15:16:17 +0200
parents f9f2aa1cc594
children 9e021b2b348b
line wrap: on
line diff
--- a/OrthancServer/DicomProtocol/DicomUserConnection.cpp	Wed May 25 11:50:35 2016 +0200
+++ b/OrthancServer/DicomProtocol/DicomUserConnection.cpp	Wed May 25 15:16:17 2016 +0200
@@ -995,16 +995,9 @@
 
 
   void DicomUserConnection::Move(const std::string& targetAet,
+                                 ResourceType level,
                                  const DicomMap& findResult)
   {
-    if (!findResult.HasTag(DICOM_TAG_QUERY_RETRIEVE_LEVEL))
-    {
-      throw OrthancException(ErrorCode_InternalError);
-    }
-
-    const std::string tmp = findResult.GetValue(DICOM_TAG_QUERY_RETRIEVE_LEVEL).GetContent();
-    ResourceType level = StringToResourceType(tmp.c_str());
-
     DicomMap move;
     switch (level)
     {
@@ -1035,6 +1028,21 @@
   }
 
 
+  void DicomUserConnection::Move(const std::string& targetAet,
+                                 const DicomMap& findResult)
+  {
+    if (!findResult.HasTag(DICOM_TAG_QUERY_RETRIEVE_LEVEL))
+    {
+      throw OrthancException(ErrorCode_InternalError);
+    }
+
+    const std::string tmp = findResult.GetValue(DICOM_TAG_QUERY_RETRIEVE_LEVEL).GetContent();
+    ResourceType level = StringToResourceType(tmp.c_str());
+
+    Move(targetAet, level, findResult);
+  }
+
+
   void DicomUserConnection::MovePatient(const std::string& targetAet,
                                         const std::string& patientId)
   {