diff OrthancServer/OrthancRestApi/OrthancRestModalities.cpp @ 3875:ea1d32861cfc transcoding

moving timeout from DicomAssocation to DicomAssociationParameters
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 04 May 2020 14:49:31 +0200
parents 2effa961f67f
children 92ecaf877baf
line wrap: on
line diff
--- a/OrthancServer/OrthancRestApi/OrthancRestModalities.cpp	Thu Apr 30 15:00:20 2020 +0200
+++ b/OrthancServer/OrthancRestApi/OrthancRestModalities.cpp	Mon May 04 14:49:31 2020 +0200
@@ -87,14 +87,15 @@
     try
     {
       DicomAssociationParameters params(localAet, remote);
-      DicomControlUserConnection connection(params);
 
       // New in Orthanc 1.7.0
-      if (timeout != -1)
+      if (timeout >= 0)
       {
-        connection.SetTimeout(timeout);
+        params.SetTimeout(static_cast<uint32_t>(timeout));
       }
 
+      DicomControlUserConnection connection(params);
+
       if (connection.Echo())
       {
         // Echo has succeeded
@@ -649,7 +650,11 @@
       job->SetTargetAet(targetAet);
       job->SetLocalAet(query.GetHandler().GetLocalAet());
       job->SetRemoteModality(query.GetHandler().GetRemoteModality());
-      job->SetTimeout(timeout);
+
+      if (timeout >= 0)
+      {
+        job->SetTimeout(static_cast<uint32_t>(timeout));
+      }
 
       LOG(WARNING) << "Driving C-Move SCU on remote modality "
                    << query.GetHandler().GetRemoteModality().GetApplicationEntityTitle()
@@ -997,7 +1002,10 @@
     }
 
     // New in Orthanc 1.7.0
-    job->SetTimeout(timeout);
+    if (timeout >= 0)
+    {
+      job->SetTimeout(static_cast<uint32_t>(timeout));
+    }
 
     OrthancRestApi::GetApi(call).SubmitCommandsJob
       (call, job.release(), true /* synchronous by default */, request);
@@ -1061,13 +1069,15 @@
       MyGetModalityUsingSymbolicName(call.GetUriComponent("id", ""));
 
     DicomAssociationParameters params(localAet, source);
+
+    // New in Orthanc 1.7.0
+    if (timeout >= 0)
+    {
+      params.SetTimeout(static_cast<uint32_t>(timeout));
+    }
+
     DicomControlUserConnection connection(params);
 
-    if (timeout > -1)
-    {
-      connection.SetTimeout(timeout);
-    }
-    
     for (Json::Value::ArrayIndex i = 0; i < request[KEY_RESOURCES].size(); i++)
     {
       DicomMap resource;