# HG changeset patch # User Sebastien Jodogne # Date 1575739087 -3600 # Node ID 21c2b0eee53cfa43cae6542539d6d645b2dc5508 # Parent 6f3f1ef347a3f6328d43eea2867d8c8affaef67f deprecating MessageHandler diff -r 6f3f1ef347a3 -r 21c2b0eee53c Applications/Samples/SimpleViewerApplicationSingleFile.h --- a/Applications/Samples/SimpleViewerApplicationSingleFile.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Applications/Samples/SimpleViewerApplicationSingleFile.h Sat Dec 07 18:18:07 2019 +0100 @@ -330,7 +330,7 @@ LOG(WARNING) << "The study ID is missing, will take the first studyId found in Orthanc"; context->GetOrthancApiClient()->GetJsonAsync( "/studies", - new Callable + new Deprecated::DeprecatedCallable (GetSharedObserver(), &SimpleViewerApplication::OnStudyListReceived)); } else @@ -360,7 +360,7 @@ { context_->GetOrthancApiClient()->GetJsonAsync( "/series/" + response["Series"][(int)i].asString(), - new Callable + new Deprecated::DeprecatedCallable (GetSharedObserver(), &SimpleViewerApplication::OnSeriesReceived)); } } @@ -411,7 +411,7 @@ { LOG(INFO) << "Selecting study: " << studyId; context_->GetOrthancApiClient()->GetJsonAsync( - "/studies/" + studyId, new Callable + "/studies/" + studyId, new Deprecated::DeprecatedCallable (GetSharedObserver(), &SimpleViewerApplication::OnStudyReceived)); } diff -r 6f3f1ef347a3 -r 21c2b0eee53c Framework/Deprecated/Toolbox/BaseWebService.cpp --- a/Framework/Deprecated/Toolbox/BaseWebService.cpp Fri Dec 06 17:05:57 2019 +0100 +++ b/Framework/Deprecated/Toolbox/BaseWebService.cpp Sat Dec 07 18:18:07 2019 +0100 @@ -37,13 +37,13 @@ class BaseWebService::BaseWebServicePayload : public Orthanc::IDynamicObject { private: - std::auto_ptr< OrthancStone::MessageHandler > userSuccessHandler_; - std::auto_ptr< OrthancStone::MessageHandler > userFailureHandler_; + std::auto_ptr< MessageHandler > userSuccessHandler_; + std::auto_ptr< MessageHandler > userFailureHandler_; std::auto_ptr< Orthanc::IDynamicObject> userPayload_; public: - BaseWebServicePayload(OrthancStone::MessageHandler* userSuccessHandler, - OrthancStone::MessageHandler* userFailureHandler, + BaseWebServicePayload(MessageHandler* userSuccessHandler, + MessageHandler* userFailureHandler, Orthanc::IDynamicObject* userPayload) : userSuccessHandler_(userSuccessHandler), userFailureHandler_(userFailureHandler), @@ -88,17 +88,17 @@ void BaseWebService::GetAsync(const std::string& uri, const HttpHeaders& headers, Orthanc::IDynamicObject* payload /* takes ownership */, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback, + MessageHandler* successCallback, + MessageHandler* failureCallback, unsigned int timeoutInSeconds) { if (!cacheEnabled_ || cache_.find(uri) == cache_.end()) { GetAsyncInternal(uri, headers, new BaseWebService::BaseWebServicePayload(successCallback, failureCallback, payload), // ownership is transfered - new OrthancStone::Callable + new DeprecatedCallable (GetSharedObserver(), &BaseWebService::CacheAndNotifyHttpSuccess), - new OrthancStone::Callable + new DeprecatedCallable (GetSharedObserver(), &BaseWebService::NotifyHttpError), timeoutInSeconds); } diff -r 6f3f1ef347a3 -r 21c2b0eee53c Framework/Deprecated/Toolbox/BaseWebService.h --- a/Framework/Deprecated/Toolbox/BaseWebService.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Framework/Deprecated/Toolbox/BaseWebService.h Sat Dec 07 18:18:07 2019 +0100 @@ -110,21 +110,21 @@ virtual void GetAsync(const std::string& uri, const HttpHeaders& headers, Orthanc::IDynamicObject* payload /* takes ownership */, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, unsigned int timeoutInSeconds = 60); protected: virtual void GetAsyncInternal(const std::string& uri, const HttpHeaders& headers, Orthanc::IDynamicObject* payload /* takes ownership */, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, unsigned int timeoutInSeconds = 60) = 0; virtual void NotifyHttpSuccessLater(boost::shared_ptr cachedHttpMessage, Orthanc::IDynamicObject* payload, // takes ownership - OrthancStone::MessageHandler* successCallback) = 0; + MessageHandler* successCallback) = 0; private: void NotifyHttpSuccess(const IWebService::HttpRequestSuccessMessage& message); diff -r 6f3f1ef347a3 -r 21c2b0eee53c Framework/Deprecated/Toolbox/IDelayedCallExecutor.h --- a/Framework/Deprecated/Toolbox/IDelayedCallExecutor.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Framework/Deprecated/Toolbox/IDelayedCallExecutor.h Sat Dec 07 18:18:07 2019 +0100 @@ -21,6 +21,7 @@ #pragma once +#include "IWebService.h" #include "../../Messages/IObserver.h" #include "../../Messages/ICallable.h" @@ -42,7 +43,7 @@ { } - virtual void Schedule(OrthancStone::MessageHandler* callback, + virtual void Schedule(MessageHandler* callback, unsigned int timeoutInMs = 1000) = 0; }; } diff -r 6f3f1ef347a3 -r 21c2b0eee53c Framework/Deprecated/Toolbox/IWebService.h --- a/Framework/Deprecated/Toolbox/IWebService.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Framework/Deprecated/Toolbox/IWebService.h Sat Dec 07 18:18:07 2019 +0100 @@ -33,6 +33,53 @@ namespace Deprecated { + template + class MessageHandler : public OrthancStone::ICallable + { + }; + + + template + class DeprecatedCallable : public MessageHandler + { + private: + typedef void (TObserver::* MemberMethod) (const TMessage&); + + boost::weak_ptr observer_; + MemberMethod function_; + + public: + DeprecatedCallable(boost::shared_ptr observer, + MemberMethod function) : + observer_(observer), + function_(function) + { + } + + virtual void Apply(const OrthancStone::IMessage& message) + { + boost::shared_ptr lock(observer_); + if (lock) + { + TObserver& observer = dynamic_cast(*lock); + const TMessage& typedMessage = dynamic_cast(message); + (observer.*function_) (typedMessage); + } + } + + virtual const OrthancStone::MessageIdentifier& GetMessageIdentifier() + { + return TMessage::GetStaticIdentifier(); + } + + virtual boost::weak_ptr GetObserver() const + { + return observer_; + } + }; + + // The IWebService performs HTTP requests. // Since applications can run in native or WASM environment and, since // in a WASM environment, the WebService is asynchronous, the IWebservice @@ -144,23 +191,23 @@ virtual void GetAsync(const std::string& uri, const HttpHeaders& headers, Orthanc::IDynamicObject* payload /* takes ownership */, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, unsigned int timeoutInSeconds = 60) = 0; virtual void PostAsync(const std::string& uri, const HttpHeaders& headers, const std::string& body, Orthanc::IDynamicObject* payload /* takes ownership */, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, unsigned int timeoutInSeconds = 60) = 0; virtual void DeleteAsync(const std::string& uri, const HttpHeaders& headers, Orthanc::IDynamicObject* payload /* takes ownership */, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, unsigned int timeoutInSeconds = 60) = 0; }; } diff -r 6f3f1ef347a3 -r 21c2b0eee53c Framework/Deprecated/Toolbox/OrthancApiClient.cpp --- a/Framework/Deprecated/Toolbox/OrthancApiClient.cpp Fri Dec 06 17:05:57 2019 +0100 +++ b/Framework/Deprecated/Toolbox/OrthancApiClient.cpp Sat Dec 07 18:18:07 2019 +0100 @@ -68,10 +68,10 @@ class OrthancApiClient::WebServicePayload : public Orthanc::IDynamicObject { private: - std::auto_ptr< OrthancStone::MessageHandler > emptyHandler_; - std::auto_ptr< OrthancStone::MessageHandler > jsonHandler_; - std::auto_ptr< OrthancStone::MessageHandler > binaryHandler_; - std::auto_ptr< OrthancStone::MessageHandler > failureHandler_; + std::auto_ptr< MessageHandler > emptyHandler_; + std::auto_ptr< MessageHandler > jsonHandler_; + std::auto_ptr< MessageHandler > binaryHandler_; + std::auto_ptr< MessageHandler > failureHandler_; std::auto_ptr< Orthanc::IDynamicObject > userPayload_; void NotifyConversionError(const IWebService::HttpRequestSuccessMessage& message) const { @@ -83,8 +83,8 @@ } public: - WebServicePayload(OrthancStone::MessageHandler* handler, - OrthancStone::MessageHandler* failureHandler, + WebServicePayload(MessageHandler* handler, + MessageHandler* failureHandler, Orthanc::IDynamicObject* userPayload) : emptyHandler_(handler), failureHandler_(failureHandler), @@ -97,8 +97,8 @@ } } - WebServicePayload(OrthancStone::MessageHandler* handler, - OrthancStone::MessageHandler* failureHandler, + WebServicePayload(MessageHandler* handler, + MessageHandler* failureHandler, Orthanc::IDynamicObject* userPayload) : binaryHandler_(handler), failureHandler_(failureHandler), @@ -110,8 +110,8 @@ } } - WebServicePayload(OrthancStone::MessageHandler* handler, - OrthancStone::MessageHandler* failureHandler, + WebServicePayload(MessageHandler* handler, + MessageHandler* failureHandler, Orthanc::IDynamicObject* userPayload) : jsonHandler_(handler), failureHandler_(failureHandler), @@ -176,17 +176,17 @@ void OrthancApiClient::GetJsonAsync( const std::string& uri, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback, + MessageHandler* successCallback, + MessageHandler* failureCallback, Orthanc::IDynamicObject* payload) { IWebService::HttpHeaders emptyHeaders; web_.GetAsync(baseUrl_ + uri, emptyHeaders, new WebServicePayload(successCallback, failureCallback, payload), - new OrthancStone::Callable + new DeprecatedCallable (GetSharedObserver(), &OrthancApiClient::NotifyHttpSuccess), - new OrthancStone::Callable + new DeprecatedCallable (GetSharedObserver(), &OrthancApiClient::NotifyHttpError)); } @@ -194,8 +194,8 @@ void OrthancApiClient::GetBinaryAsync( const std::string& uri, const std::string& contentType, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback, + MessageHandler* successCallback, + MessageHandler* failureCallback, Orthanc::IDynamicObject* payload) { IWebService::HttpHeaders headers; @@ -206,17 +206,17 @@ void OrthancApiClient::GetBinaryAsync( const std::string& uri, const IWebService::HttpHeaders& headers, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback, + MessageHandler* successCallback, + MessageHandler* failureCallback, Orthanc::IDynamicObject* payload) { // printf("GET [%s] [%s]\n", baseUrl_.c_str(), uri.c_str()); web_.GetAsync(baseUrl_ + uri, headers, new WebServicePayload(successCallback, failureCallback, payload), - new OrthancStone::Callable + new DeprecatedCallable (GetSharedObserver(), &OrthancApiClient::NotifyHttpSuccess), - new OrthancStone::Callable + new DeprecatedCallable (GetSharedObserver(), &OrthancApiClient::NotifyHttpError)); } @@ -224,15 +224,15 @@ void OrthancApiClient::PostBinaryAsyncExpectJson( const std::string& uri, const std::string& body, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback, + MessageHandler* successCallback, + MessageHandler* failureCallback, Orthanc::IDynamicObject* payload) { web_.PostAsync(baseUrl_ + uri, IWebService::HttpHeaders(), body, new WebServicePayload(successCallback, failureCallback, payload), - new OrthancStone::Callable + new DeprecatedCallable (GetSharedObserver(), &OrthancApiClient::NotifyHttpSuccess), - new OrthancStone::Callable + new DeprecatedCallable (GetSharedObserver(), &OrthancApiClient::NotifyHttpError)); } @@ -247,23 +247,23 @@ void OrthancApiClient::PostBinaryAsync( const std::string& uri, const std::string& body, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback, + MessageHandler* successCallback, + MessageHandler* failureCallback, Orthanc::IDynamicObject* payload /* takes ownership */) { web_.PostAsync(baseUrl_ + uri, IWebService::HttpHeaders(), body, new WebServicePayload(successCallback, failureCallback, payload), - new OrthancStone::Callable + new DeprecatedCallable (GetSharedObserver(), &OrthancApiClient::NotifyHttpSuccess), - new OrthancStone::Callable + new DeprecatedCallable (GetSharedObserver(), &OrthancApiClient::NotifyHttpError)); } void OrthancApiClient::PostJsonAsyncExpectJson( const std::string& uri, const Json::Value& data, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback, + MessageHandler* successCallback, + MessageHandler* failureCallback, Orthanc::IDynamicObject* payload) { std::string body; @@ -283,8 +283,8 @@ void OrthancApiClient::PostJsonAsync( const std::string& uri, const Json::Value& data, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback, + MessageHandler* successCallback, + MessageHandler* failureCallback, Orthanc::IDynamicObject* payload /* takes ownership */) { std::string body; @@ -294,15 +294,15 @@ void OrthancApiClient::DeleteAsync( const std::string& uri, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback, + MessageHandler* successCallback, + MessageHandler* failureCallback, Orthanc::IDynamicObject* payload) { web_.DeleteAsync(baseUrl_ + uri, IWebService::HttpHeaders(), new WebServicePayload(successCallback, failureCallback, payload), - new OrthancStone::Callable + new DeprecatedCallable (GetSharedObserver(), &OrthancApiClient::NotifyHttpSuccess), - new OrthancStone::Callable + new DeprecatedCallable (GetSharedObserver(), &OrthancApiClient::NotifyHttpError)); } diff -r 6f3f1ef347a3 -r 21c2b0eee53c Framework/Deprecated/Toolbox/OrthancApiClient.h --- a/Framework/Deprecated/Toolbox/OrthancApiClient.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Framework/Deprecated/Toolbox/OrthancApiClient.h Sat Dec 07 18:18:07 2019 +0100 @@ -168,36 +168,36 @@ // schedule a GET request expecting a JSON response. void GetJsonAsync(const std::string& uri, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, Orthanc::IDynamicObject* payload = NULL /* takes ownership */); // schedule a GET request expecting a binary response. void GetBinaryAsync(const std::string& uri, const std::string& contentType, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, Orthanc::IDynamicObject* payload = NULL /* takes ownership */); // schedule a GET request expecting a binary response. void GetBinaryAsync(const std::string& uri, const IWebService::HttpHeaders& headers, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, Orthanc::IDynamicObject* payload = NULL /* takes ownership */); // schedule a POST request expecting a JSON response. void PostBinaryAsyncExpectJson(const std::string& uri, const std::string& body, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, Orthanc::IDynamicObject* payload = NULL /* takes ownership */); // schedule a POST request expecting a JSON response. void PostJsonAsyncExpectJson(const std::string& uri, const Json::Value& data, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, Orthanc::IDynamicObject* payload = NULL /* takes ownership */); // schedule a POST request and don't mind the response. @@ -207,8 +207,8 @@ // schedule a POST request and don't expect any response. void PostJsonAsync(const std::string& uri, const Json::Value& data, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, Orthanc::IDynamicObject* payload = NULL /* takes ownership */); @@ -219,14 +219,14 @@ // schedule a POST request and don't expect any response. void PostBinaryAsync(const std::string& uri, const std::string& body, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, Orthanc::IDynamicObject* payload = NULL /* takes ownership */); // schedule a DELETE request expecting an empty response. void DeleteAsync(const std::string& uri, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, Orthanc::IDynamicObject* payload = NULL /* takes ownership */); void NotifyHttpSuccess(const IWebService::HttpRequestSuccessMessage& message); diff -r 6f3f1ef347a3 -r 21c2b0eee53c Framework/Deprecated/Toolbox/OrthancSlicesLoader.cpp --- a/Framework/Deprecated/Toolbox/OrthancSlicesLoader.cpp Fri Dec 06 17:05:57 2019 +0100 +++ b/Framework/Deprecated/Toolbox/OrthancSlicesLoader.cpp Sat Dec 07 18:18:07 2019 +0100 @@ -656,8 +656,8 @@ { state_ = State_LoadingGeometry; orthanc_->GetJsonAsync("/series/" + seriesId + "/instances-tags", - new OrthancStone::Callable(GetSharedObserver(), &OrthancSlicesLoader::ParseSeriesGeometry), - new OrthancStone::Callable(GetSharedObserver(), &OrthancSlicesLoader::OnGeometryError), + new DeprecatedCallable(GetSharedObserver(), &OrthancSlicesLoader::ParseSeriesGeometry), + new DeprecatedCallable(GetSharedObserver(), &OrthancSlicesLoader::OnGeometryError), NULL); } } @@ -675,8 +675,8 @@ // Tag "3004-000c" is "Grid Frame Offset Vector", which is // mandatory to read RT DOSE, but is too long to be returned by default orthanc_->GetJsonAsync("/instances/" + instanceId + "/tags?ignore-length=3004-000c", - new OrthancStone::Callable(GetSharedObserver(), &OrthancSlicesLoader::ParseInstanceGeometry), - new OrthancStone::Callable(GetSharedObserver(), &OrthancSlicesLoader::OnGeometryError), + new DeprecatedCallable(GetSharedObserver(), &OrthancSlicesLoader::ParseInstanceGeometry), + new DeprecatedCallable(GetSharedObserver(), &OrthancSlicesLoader::OnGeometryError), Operation::DownloadInstanceGeometry(instanceId)); } } @@ -694,8 +694,8 @@ state_ = State_LoadingGeometry; orthanc_->GetJsonAsync("/instances/" + instanceId + "/tags", - new OrthancStone::Callable(GetSharedObserver(), &OrthancSlicesLoader::ParseFrameGeometry), - new OrthancStone::Callable(GetSharedObserver(), &OrthancSlicesLoader::OnGeometryError), + new DeprecatedCallable(GetSharedObserver(), &OrthancSlicesLoader::ParseFrameGeometry), + new DeprecatedCallable(GetSharedObserver(), &OrthancSlicesLoader::OnGeometryError), Operation::DownloadFrameGeometry(instanceId, frame)); } } @@ -768,10 +768,10 @@ } orthanc_->GetBinaryAsync(uri, "image/png", - new OrthancStone::Callable (GetSharedObserver(), &OrthancSlicesLoader::ParseSliceImagePng), - new OrthancStone::Callable (GetSharedObserver(), &OrthancSlicesLoader::OnSliceImageError), Operation::DownloadSliceImage( @@ -804,10 +804,10 @@ } orthanc_->GetBinaryAsync(uri, "image/x-portable-arbitrarymap", - new OrthancStone::Callable (GetSharedObserver(), &OrthancSlicesLoader::ParseSliceImagePam), - new OrthancStone::Callable (GetSharedObserver(), &OrthancSlicesLoader::OnSliceImageError), Operation::DownloadSliceImage(static_cast(index), @@ -847,10 +847,10 @@ boost::lexical_cast(slice.GetFrame())); orthanc_->GetJsonAsync(uri, - new OrthancStone::Callable (GetSharedObserver(), &OrthancSlicesLoader::ParseSliceImageJpeg), - new OrthancStone::Callable (GetSharedObserver(), &OrthancSlicesLoader::OnSliceImageError), Operation::DownloadSliceImage( @@ -888,10 +888,10 @@ std::string uri = ("/instances/" + slice.GetOrthancInstanceId() + "/frames/" + boost::lexical_cast(slice.GetFrame()) + "/raw.gz"); orthanc_->GetBinaryAsync(uri, IWebService::HttpHeaders(), - new OrthancStone::Callable (GetSharedObserver(), &OrthancSlicesLoader::ParseSliceRawImage), - new OrthancStone::Callable (GetSharedObserver(), &OrthancSlicesLoader::OnSliceImageError), Operation::DownloadSliceRawImage( diff -r 6f3f1ef347a3 -r 21c2b0eee53c Framework/Deprecated/Volumes/StructureSetLoader.cpp --- a/Framework/Deprecated/Volumes/StructureSetLoader.cpp Fri Dec 06 17:05:57 2019 +0100 +++ b/Framework/Deprecated/Volumes/StructureSetLoader.cpp Sat Dec 07 18:18:07 2019 +0100 @@ -57,7 +57,7 @@ it != instances.end(); ++it) { orthanc_.PostBinaryAsyncExpectJson("/tools/lookup", *it, - new OrthancStone::Callable(GetSharedObserver(), &StructureSetLoader::OnLookupCompleted)); + new DeprecatedCallable(GetSharedObserver(), &StructureSetLoader::OnLookupCompleted)); } BroadcastMessage(GeometryReadyMessage(*this)); @@ -81,7 +81,7 @@ const std::string& instance = lookup[0]["ID"].asString(); orthanc_.GetJsonAsync("/instances/" + instance + "/tags", - new OrthancStone::Callable(GetSharedObserver(), &StructureSetLoader::OnReferencedSliceLoaded)); + new DeprecatedCallable(GetSharedObserver(), &StructureSetLoader::OnReferencedSliceLoaded)); } @@ -94,7 +94,7 @@ else { orthanc_.GetJsonAsync("/instances/" + instance + "/tags?ignore-length=3006-0050", - new OrthancStone::Callable(GetSharedObserver(), &StructureSetLoader::OnStructureSetLoaded)); + new DeprecatedCallable(GetSharedObserver(), &StructureSetLoader::OnStructureSetLoaded)); } } diff -r 6f3f1ef347a3 -r 21c2b0eee53c Framework/Messages/ICallable.h --- a/Framework/Messages/ICallable.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Framework/Messages/ICallable.h Sat Dec 07 18:18:07 2019 +0100 @@ -52,16 +52,9 @@ }; - // TODO - Remove this class - template - class MessageHandler : public ICallable - { - }; - - template - class Callable : public MessageHandler + class Callable : public ICallable { private: typedef void (TObserver::* MemberMethod) (const TMessage&); diff -r 6f3f1ef347a3 -r 21c2b0eee53c Framework/Radiography/RadiographyScene.cpp --- a/Framework/Radiography/RadiographyScene.cpp Fri Dec 06 17:05:57 2019 +0100 +++ b/Framework/Radiography/RadiographyScene.cpp Sat Dec 07 18:18:07 2019 +0100 @@ -425,7 +425,7 @@ orthanc.GetBinaryAsync( uri, headers, - new Callable + new Deprecated::DeprecatedCallable (GetSharedObserver(), &RadiographyScene::OnTagsReceived), NULL, new Orthanc::SingleValueObject(layer.GetIndex())); } @@ -444,7 +444,7 @@ orthanc.GetBinaryAsync( uri, headers, - new Callable + new Deprecated::DeprecatedCallable (GetSharedObserver(), &RadiographyScene::OnFrameReceived), NULL, new Orthanc::SingleValueObject(layer.GetIndex())); } @@ -784,7 +784,7 @@ orthanc.PostJsonAsyncExpectJson( "/tools/create-dicom", createDicomRequestContent, - new Callable + new Deprecated::DeprecatedCallable (GetSharedObserver(), &RadiographyScene::OnDicomExported), NULL, NULL); diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/DelayedCallCommand.cpp --- a/Platforms/Generic/DelayedCallCommand.cpp Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/DelayedCallCommand.cpp Sat Dec 07 18:18:07 2019 +0100 @@ -26,7 +26,7 @@ namespace Deprecated { - DelayedCallCommand::DelayedCallCommand(OrthancStone::MessageHandler* callback, // takes ownership + DelayedCallCommand::DelayedCallCommand(MessageHandler* callback, // takes ownership unsigned int timeoutInMs, Orthanc::IDynamicObject* payload /* takes ownership */, OrthancStone::NativeStoneApplicationContext& context diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/DelayedCallCommand.h --- a/Platforms/Generic/DelayedCallCommand.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/DelayedCallCommand.h Sat Dec 07 18:18:07 2019 +0100 @@ -35,14 +35,14 @@ class DelayedCallCommand : public IOracleCommand, OrthancStone::IObservable { protected: - std::auto_ptr > callback_; + std::auto_ptr > callback_; std::auto_ptr payload_; OrthancStone::NativeStoneApplicationContext& context_; boost::posix_time::ptime expirationTimePoint_; unsigned int timeoutInMs_; public: - DelayedCallCommand(OrthancStone::MessageHandler* callback, // takes ownership + DelayedCallCommand(MessageHandler* callback, // takes ownership unsigned int timeoutInMs, Orthanc::IDynamicObject* payload /* takes ownership */, OrthancStone::NativeStoneApplicationContext& context diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/OracleDelayedCallExecutor.h --- a/Platforms/Generic/OracleDelayedCallExecutor.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/OracleDelayedCallExecutor.h Sat Dec 07 18:18:07 2019 +0100 @@ -43,7 +43,7 @@ { } - virtual void Schedule(OrthancStone::MessageHandler* callback, + virtual void Schedule(MessageHandler* callback, unsigned int timeoutInMs = 1000) { oracle_.Submit(new DelayedCallCommand(callback, timeoutInMs, NULL, context_)); diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/OracleWebService.cpp --- a/Platforms/Generic/OracleWebService.cpp Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/OracleWebService.cpp Sat Dec 07 18:18:07 2019 +0100 @@ -29,13 +29,13 @@ class OracleWebService::WebServiceCachedGetCommand : public IOracleCommand, OrthancStone::IObservable { protected: - std::auto_ptr > successCallback_; + std::auto_ptr > successCallback_; std::auto_ptr payload_; boost::shared_ptr cachedMessage_; OrthancStone::NativeStoneApplicationContext& context_; public: - WebServiceCachedGetCommand(OrthancStone::MessageHandler* successCallback, // takes ownership + WebServiceCachedGetCommand(MessageHandler* successCallback, // takes ownership boost::shared_ptr cachedMessage, Orthanc::IDynamicObject* payload /* takes ownership */, OrthancStone::NativeStoneApplicationContext& context @@ -71,7 +71,7 @@ void OracleWebService::NotifyHttpSuccessLater(boost::shared_ptr cachedMessage, Orthanc::IDynamicObject* payload, // takes ownership - OrthancStone::MessageHandler* successCallback) + MessageHandler* successCallback) { oracle_.Submit(new WebServiceCachedGetCommand(successCallback, cachedMessage, payload, context_)); } diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/OracleWebService.h --- a/Platforms/Generic/OracleWebService.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/OracleWebService.h Sat Dec 07 18:18:07 2019 +0100 @@ -56,8 +56,8 @@ const HttpHeaders& headers, const std::string& body, Orthanc::IDynamicObject* payload, // takes ownership - OrthancStone::MessageHandler* successCallback, // takes ownership - OrthancStone::MessageHandler* failureCallback = NULL, // takes ownership + MessageHandler* successCallback, // takes ownership + MessageHandler* failureCallback = NULL, // takes ownership unsigned int timeoutInSeconds = 60) { oracle_.Submit(new WebServicePostCommand(successCallback, failureCallback, parameters_, uri, headers, timeoutInSeconds, body, payload, context_)); @@ -66,8 +66,8 @@ virtual void DeleteAsync(const std::string& uri, const HttpHeaders& headers, Orthanc::IDynamicObject* payload, - OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback = NULL, + MessageHandler* successCallback, + MessageHandler* failureCallback = NULL, unsigned int timeoutInSeconds = 60) { oracle_.Submit(new WebServiceDeleteCommand(successCallback, failureCallback, parameters_, uri, headers, timeoutInSeconds, payload, context_)); @@ -77,8 +77,8 @@ virtual void GetAsyncInternal(const std::string& uri, const HttpHeaders& headers, Orthanc::IDynamicObject* payload, // takes ownership - OrthancStone::MessageHandler* successCallback, // takes ownership - OrthancStone::MessageHandler* failureCallback = NULL,// takes ownership + MessageHandler* successCallback, // takes ownership + MessageHandler* failureCallback = NULL,// takes ownership unsigned int timeoutInSeconds = 60) { oracle_.Submit(new WebServiceGetCommand(successCallback, failureCallback, parameters_, uri, headers, timeoutInSeconds, payload, context_)); @@ -86,7 +86,7 @@ virtual void NotifyHttpSuccessLater(boost::shared_ptr cachedHttpMessage, Orthanc::IDynamicObject* payload, // takes ownership - OrthancStone::MessageHandler* successCallback); + MessageHandler* successCallback); }; } diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/WebServiceCommandBase.cpp --- a/Platforms/Generic/WebServiceCommandBase.cpp Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/WebServiceCommandBase.cpp Sat Dec 07 18:18:07 2019 +0100 @@ -25,8 +25,8 @@ namespace Deprecated { - WebServiceCommandBase::WebServiceCommandBase(OrthancStone::MessageHandler* successCallback, - OrthancStone::MessageHandler* failureCallback, + WebServiceCommandBase::WebServiceCommandBase(MessageHandler* successCallback, + MessageHandler* failureCallback, const Orthanc::WebServiceParameters& parameters, const std::string& url, const IWebService::HttpHeaders& headers, diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/WebServiceCommandBase.h --- a/Platforms/Generic/WebServiceCommandBase.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/WebServiceCommandBase.h Sat Dec 07 18:18:07 2019 +0100 @@ -37,8 +37,8 @@ class WebServiceCommandBase : public IOracleCommand, OrthancStone::IObservable { protected: - std::auto_ptr > successCallback_; - std::auto_ptr > failureCallback_; + std::auto_ptr > successCallback_; + std::auto_ptr > failureCallback_; Orthanc::WebServiceParameters parameters_; std::string url_; IWebService::HttpHeaders headers_; @@ -51,8 +51,8 @@ unsigned int timeoutInSeconds_; public: - WebServiceCommandBase(OrthancStone::MessageHandler* successCallback, // takes ownership - OrthancStone::MessageHandler* failureCallback, // takes ownership + WebServiceCommandBase(MessageHandler* successCallback, // takes ownership + MessageHandler* failureCallback, // takes ownership const Orthanc::WebServiceParameters& parameters, const std::string& url, const IWebService::HttpHeaders& headers, diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/WebServiceDeleteCommand.cpp --- a/Platforms/Generic/WebServiceDeleteCommand.cpp Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/WebServiceDeleteCommand.cpp Sat Dec 07 18:18:07 2019 +0100 @@ -25,8 +25,8 @@ namespace Deprecated { - WebServiceDeleteCommand::WebServiceDeleteCommand(OrthancStone::MessageHandler* successCallback, // takes ownership - OrthancStone::MessageHandler* failureCallback, // takes ownership + WebServiceDeleteCommand::WebServiceDeleteCommand(MessageHandler* successCallback, // takes ownership + MessageHandler* failureCallback, // takes ownership const Orthanc::WebServiceParameters& parameters, const std::string& url, const Deprecated::IWebService::HttpHeaders& headers, diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/WebServiceDeleteCommand.h --- a/Platforms/Generic/WebServiceDeleteCommand.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/WebServiceDeleteCommand.h Sat Dec 07 18:18:07 2019 +0100 @@ -28,8 +28,8 @@ class WebServiceDeleteCommand : public WebServiceCommandBase { public: - WebServiceDeleteCommand(OrthancStone::MessageHandler* successCallback, // takes ownership - OrthancStone::MessageHandler* failureCallback, // takes ownership + WebServiceDeleteCommand(MessageHandler* successCallback, // takes ownership + MessageHandler* failureCallback, // takes ownership const Orthanc::WebServiceParameters& parameters, const std::string& url, const IWebService::HttpHeaders& headers, diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/WebServiceGetCommand.cpp --- a/Platforms/Generic/WebServiceGetCommand.cpp Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/WebServiceGetCommand.cpp Sat Dec 07 18:18:07 2019 +0100 @@ -25,8 +25,8 @@ namespace Deprecated { - WebServiceGetCommand::WebServiceGetCommand(OrthancStone::MessageHandler* successCallback, // takes ownership - OrthancStone::MessageHandler* failureCallback, // takes ownership + WebServiceGetCommand::WebServiceGetCommand(MessageHandler* successCallback, // takes ownership + MessageHandler* failureCallback, // takes ownership const Orthanc::WebServiceParameters& parameters, const std::string& url, const IWebService::HttpHeaders& headers, diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/WebServiceGetCommand.h --- a/Platforms/Generic/WebServiceGetCommand.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/WebServiceGetCommand.h Sat Dec 07 18:18:07 2019 +0100 @@ -28,8 +28,8 @@ class WebServiceGetCommand : public WebServiceCommandBase { public: - WebServiceGetCommand(OrthancStone::MessageHandler* successCallback, // takes ownership - OrthancStone::MessageHandler* failureCallback, // takes ownership + WebServiceGetCommand(MessageHandler* successCallback, // takes ownership + MessageHandler* failureCallback, // takes ownership const Orthanc::WebServiceParameters& parameters, const std::string& url, const IWebService::HttpHeaders& headers, diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/WebServicePostCommand.cpp --- a/Platforms/Generic/WebServicePostCommand.cpp Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/WebServicePostCommand.cpp Sat Dec 07 18:18:07 2019 +0100 @@ -25,8 +25,8 @@ namespace Deprecated { - WebServicePostCommand::WebServicePostCommand(OrthancStone::MessageHandler* successCallback, // takes ownership - OrthancStone::MessageHandler* failureCallback, // takes ownership + WebServicePostCommand::WebServicePostCommand(MessageHandler* successCallback, // takes ownership + MessageHandler* failureCallback, // takes ownership const Orthanc::WebServiceParameters& parameters, const std::string& url, const Deprecated::IWebService::HttpHeaders& headers, diff -r 6f3f1ef347a3 -r 21c2b0eee53c Platforms/Generic/WebServicePostCommand.h --- a/Platforms/Generic/WebServicePostCommand.h Fri Dec 06 17:05:57 2019 +0100 +++ b/Platforms/Generic/WebServicePostCommand.h Sat Dec 07 18:18:07 2019 +0100 @@ -31,8 +31,8 @@ std::string body_; public: - WebServicePostCommand(OrthancStone::MessageHandler* successCallback, // takes ownership - OrthancStone::MessageHandler* failureCallback, // takes ownership + WebServicePostCommand(MessageHandler* successCallback, // takes ownership + MessageHandler* failureCallback, // takes ownership const Orthanc::WebServiceParameters& parameters, const std::string& url, const IWebService::HttpHeaders& headers,