Mercurial > hg > orthanc-stone
comparison Framework/Toolbox/BaseWebService.h @ 726:4f2416d519b4
moving layers, widgets and loaders to Deprecated namespace
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 21 May 2019 11:43:25 +0200 |
parents | 2a8ac2d426db |
children |
comparison
equal
deleted
inserted
replaced
714:d2c0e347ddc2 | 726:4f2416d519b4 |
---|---|
24 #include "IWebService.h" | 24 #include "IWebService.h" |
25 | 25 |
26 #include <string> | 26 #include <string> |
27 #include <map> | 27 #include <map> |
28 | 28 |
29 namespace OrthancStone | 29 namespace Deprecated |
30 { | 30 { |
31 // This is an intermediate of IWebService that implements some caching on | 31 // This is an intermediate of IWebService that implements some caching on |
32 // the HTTP GET requests | 32 // the HTTP GET requests |
33 class BaseWebService : public IWebService, public IObserver | 33 class BaseWebService : public IWebService, public OrthancStone::IObserver |
34 { | 34 { |
35 public: | 35 public: |
36 class CachedHttpRequestSuccessMessage | 36 class CachedHttpRequestSuccessMessage |
37 { | 37 { |
38 protected: | 38 protected: |
83 bool cacheEnabled_; | 83 bool cacheEnabled_; |
84 std::map<std::string, boost::shared_ptr<CachedHttpRequestSuccessMessage> > cache_; // TODO: this is currently an infinite cache ! | 84 std::map<std::string, boost::shared_ptr<CachedHttpRequestSuccessMessage> > cache_; // TODO: this is currently an infinite cache ! |
85 | 85 |
86 public: | 86 public: |
87 | 87 |
88 BaseWebService(MessageBroker& broker) : | 88 BaseWebService(OrthancStone::MessageBroker& broker) : |
89 IWebService(broker), | 89 IWebService(broker), |
90 IObserver(broker), | 90 IObserver(broker), |
91 cacheEnabled_(true) | 91 cacheEnabled_(true) |
92 { | 92 { |
93 } | 93 } |
102 } | 102 } |
103 | 103 |
104 virtual void GetAsync(const std::string& uri, | 104 virtual void GetAsync(const std::string& uri, |
105 const HttpHeaders& headers, | 105 const HttpHeaders& headers, |
106 Orthanc::IDynamicObject* payload /* takes ownership */, | 106 Orthanc::IDynamicObject* payload /* takes ownership */, |
107 MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback, | 107 OrthancStone::MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback, |
108 MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL, | 108 OrthancStone::MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL, |
109 unsigned int timeoutInSeconds = 60); | 109 unsigned int timeoutInSeconds = 60); |
110 | 110 |
111 protected: | 111 protected: |
112 virtual void GetAsyncInternal(const std::string& uri, | 112 virtual void GetAsyncInternal(const std::string& uri, |
113 const HttpHeaders& headers, | 113 const HttpHeaders& headers, |
114 Orthanc::IDynamicObject* payload /* takes ownership */, | 114 Orthanc::IDynamicObject* payload /* takes ownership */, |
115 MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback, | 115 OrthancStone::MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback, |
116 MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL, | 116 OrthancStone::MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL, |
117 unsigned int timeoutInSeconds = 60) = 0; | 117 unsigned int timeoutInSeconds = 60) = 0; |
118 | 118 |
119 virtual void NotifyHttpSuccessLater(boost::shared_ptr<BaseWebService::CachedHttpRequestSuccessMessage> cachedHttpMessage, | 119 virtual void NotifyHttpSuccessLater(boost::shared_ptr<BaseWebService::CachedHttpRequestSuccessMessage> cachedHttpMessage, |
120 Orthanc::IDynamicObject* payload, // takes ownership | 120 Orthanc::IDynamicObject* payload, // takes ownership |
121 MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback) = 0; | 121 OrthancStone::MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback) = 0; |
122 | 122 |
123 private: | 123 private: |
124 void NotifyHttpSuccess(const IWebService::HttpRequestSuccessMessage& message); | 124 void NotifyHttpSuccess(const IWebService::HttpRequestSuccessMessage& message); |
125 | 125 |
126 void NotifyHttpError(const IWebService::HttpRequestErrorMessage& message); | 126 void NotifyHttpError(const IWebService::HttpRequestErrorMessage& message); |