Mercurial > hg > orthanc
comparison Core/DicomNetworking/TimeoutDicomConnectionManager.cpp @ 2609:f7a84b551ee4 jobs
switch Lua to new jobs engine
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Sat, 19 May 2018 16:29:00 +0200 |
parents | 25225f0b4f33 |
children | 4e43e67f8ecf |
comparison
equal
deleted
inserted
replaced
2608:25225f0b4f33 | 2609:f7a84b551ee4 |
---|---|
32 | 32 |
33 | 33 |
34 #include "../PrecompiledHeaders.h" | 34 #include "../PrecompiledHeaders.h" |
35 #include "TimeoutDicomConnectionManager.h" | 35 #include "TimeoutDicomConnectionManager.h" |
36 | 36 |
37 #include "../Logging.h" | |
37 #include "../OrthancException.h" | 38 #include "../OrthancException.h" |
38 | 39 |
39 namespace Orthanc | 40 namespace Orthanc |
40 { | 41 { |
41 static boost::posix_time::ptime GetNow() | 42 static boost::posix_time::ptime GetNow() |
80 void TimeoutDicomConnectionManager::CheckTimeoutInternal() | 81 void TimeoutDicomConnectionManager::CheckTimeoutInternal() |
81 { | 82 { |
82 if (connection_.get() != NULL && | 83 if (connection_.get() != NULL && |
83 (GetNow() - lastUse_) >= timeout_) | 84 (GetNow() - lastUse_) >= timeout_) |
84 { | 85 { |
85 connection_.reset(NULL); | 86 Close(); |
86 } | 87 } |
87 } | 88 } |
88 | 89 |
89 | 90 |
90 void TimeoutDicomConnectionManager::SetTimeout(unsigned int timeout) | 91 void TimeoutDicomConnectionManager::SetTimeout(unsigned int timeout) |
100 } | 101 } |
101 | 102 |
102 | 103 |
103 void TimeoutDicomConnectionManager::Close() | 104 void TimeoutDicomConnectionManager::Close() |
104 { | 105 { |
105 connection_.reset(NULL); | 106 if (connection_.get() != NULL) |
107 { | |
108 LOG(INFO) << "Closing inactive DICOM association with modality: " | |
109 << connection_->GetRemoteApplicationEntityTitle(); | |
110 | |
111 connection_.reset(NULL); | |
112 } | |
106 } | 113 } |
107 | 114 |
108 | 115 |
109 void TimeoutDicomConnectionManager::CheckTimeout() | 116 void TimeoutDicomConnectionManager::CheckTimeout() |
110 { | 117 { |