annotate Framework/Toolbox/IWebService.h @ 700:059e1fd05fd6 refactor-viewport-controller

Introduced the ViewportController that sits between the application and the Scene2D to handle the trackers and measuring tools. This is a work in progress. The Scene2D is no longer an observable. Message sending is managed by the ViewportController. Move some refs to shared and weak to prevent lifetime issues.
author Benjamin Golinvaux <bgo@osimis.io>
date Sun, 19 May 2019 16:26:17 +0200
parents f0008c55e5f7
children 4f2416d519b4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
57
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1 /**
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
2 * Stone of Orthanc
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
3 * Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
4 * Department, University Hospital of Liege, Belgium
439
b70e9be013e4 preparing for 2019
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 417
diff changeset
5 * Copyright (C) 2017-2019 Osimis S.A., Belgium
57
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
6 *
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
7 * This program is free software: you can redistribute it and/or
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
8 * modify it under the terms of the GNU Affero General Public License
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
9 * as published by the Free Software Foundation, either version 3 of
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
10 * the License, or (at your option) any later version.
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
11 *
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful, but
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
13 * WITHOUT ANY WARRANTY; without even the implied warranty of
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
15 * Affero General Public License for more details.
251
192e6e349e69 first usage of new message system (in SDL only)
am@osimis.io
parents: 212
diff changeset
16 *
57
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
17 * You should have received a copy of the GNU Affero General Public License
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
18 * along with this program. If not, see <http://www.gnu.org/licenses/>.
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
19 **/
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
20
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
21
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
22 #pragma once
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
23
251
192e6e349e69 first usage of new message system (in SDL only)
am@osimis.io
parents: 212
diff changeset
24 #include "../../Framework/Messages/IObserver.h"
299
3897f9f28cfa backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents: 288
diff changeset
25 #include "../../Framework/Messages/ICallable.h"
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
26
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
27 #include <Core/IDynamicObject.h>
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
28 #include <Core/Logging.h>
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
29
57
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
30 #include <string>
299
3897f9f28cfa backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents: 288
diff changeset
31 #include <map>
57
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
32
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
33 namespace OrthancStone
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
34 {
288
8c8da145fefa renamings and doc
am@osimis.io
parents: 269
diff changeset
35 // The IWebService performs HTTP requests.
8c8da145fefa renamings and doc
am@osimis.io
parents: 269
diff changeset
36 // Since applications can run in native or WASM environment and, since
8c8da145fefa renamings and doc
am@osimis.io
parents: 269
diff changeset
37 // in a WASM environment, the WebService is asynchronous, the IWebservice
8c8da145fefa renamings and doc
am@osimis.io
parents: 269
diff changeset
38 // also implements an asynchronous interface: you must schedule a request
8c8da145fefa renamings and doc
am@osimis.io
parents: 269
diff changeset
39 // and you'll be notified when the response/error is ready.
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
40 class IWebService : public boost::noncopyable
269
0dfa83535cd7 indentation
am@osimis.io
parents: 268
diff changeset
41 {
0dfa83535cd7 indentation
am@osimis.io
parents: 268
diff changeset
42 protected:
0dfa83535cd7 indentation
am@osimis.io
parents: 268
diff changeset
43 MessageBroker& broker_;
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
44
269
0dfa83535cd7 indentation
am@osimis.io
parents: 268
diff changeset
45 public:
417
aee3d7941c9b preparing to load images using DICOMweb
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
46 typedef std::map<std::string, std::string> HttpHeaders;
257
9afafb192180 using PAM
am@osimis.io
parents: 252
diff changeset
47
643
f0008c55e5f7 getting rid of MessageType enumeration
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 440
diff changeset
48 class HttpRequestSuccessMessage : public IMessage
299
3897f9f28cfa backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents: 288
diff changeset
49 {
643
f0008c55e5f7 getting rid of MessageType enumeration
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 440
diff changeset
50 ORTHANC_STONE_MESSAGE(__FILE__, __LINE__);
f0008c55e5f7 getting rid of MessageType enumeration
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 440
diff changeset
51
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
52 private:
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
53 const std::string& uri_;
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
54 const void* answer_;
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
55 size_t answerSize_;
417
aee3d7941c9b preparing to load images using DICOMweb
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
56 const HttpHeaders& answerHeaders_;
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
57 const Orthanc::IDynamicObject* payload_;
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
58
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
59 public:
301
547e1cf7aa7b cleanup
am@osimis.io
parents: 300
diff changeset
60 HttpRequestSuccessMessage(const std::string& uri,
309
14ef1227120f web services: better handling of failures
am@osimis.io
parents: 301
diff changeset
61 const void* answer,
14ef1227120f web services: better handling of failures
am@osimis.io
parents: 301
diff changeset
62 size_t answerSize,
417
aee3d7941c9b preparing to load images using DICOMweb
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
63 const HttpHeaders& answerHeaders,
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
64 const Orthanc::IDynamicObject* payload) :
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
65 uri_(uri),
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
66 answer_(answer),
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
67 answerSize_(answerSize),
417
aee3d7941c9b preparing to load images using DICOMweb
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
68 answerHeaders_(answerHeaders),
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
69 payload_(payload)
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
70 {
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
71 }
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
72
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
73 const std::string& GetUri() const
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
74 {
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
75 return uri_;
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
76 }
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
77
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
78 const void* GetAnswer() const
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
79 {
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
80 return answer_;
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
81 }
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
82
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
83 size_t GetAnswerSize() const
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
84 {
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
85 return answerSize_;
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
86 }
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
87
417
aee3d7941c9b preparing to load images using DICOMweb
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
88 const HttpHeaders& GetAnswerHttpHeaders() const
aee3d7941c9b preparing to load images using DICOMweb
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
89 {
aee3d7941c9b preparing to load images using DICOMweb
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
90 return answerHeaders_;
aee3d7941c9b preparing to load images using DICOMweb
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
91 }
aee3d7941c9b preparing to load images using DICOMweb
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
92
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
93 bool HasPayload() const
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
94 {
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
95 return payload_ != NULL;
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
96 }
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
97
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
98 const Orthanc::IDynamicObject& GetPayload() const;
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
99 };
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
100
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
101
643
f0008c55e5f7 getting rid of MessageType enumeration
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 440
diff changeset
102 class HttpRequestErrorMessage : public IMessage
299
3897f9f28cfa backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents: 288
diff changeset
103 {
643
f0008c55e5f7 getting rid of MessageType enumeration
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 440
diff changeset
104 ORTHANC_STONE_MESSAGE(__FILE__, __LINE__);
f0008c55e5f7 getting rid of MessageType enumeration
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 440
diff changeset
105
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
106 private:
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
107 const std::string& uri_;
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
108 const Orthanc::IDynamicObject* payload_;
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
109
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
110 public:
301
547e1cf7aa7b cleanup
am@osimis.io
parents: 300
diff changeset
111 HttpRequestErrorMessage(const std::string& uri,
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
112 const Orthanc::IDynamicObject* payload) :
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
113 uri_(uri),
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
114 payload_(payload)
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
115 {
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
116 }
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
117
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
118 const std::string& GetUri() const
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
119 {
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
120 return uri_;
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
121 }
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
122
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
123 bool HasPayload() const
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
124 {
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
125 return payload_ != NULL;
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
126 }
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
127
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
128 const Orthanc::IDynamicObject& GetPayload() const;
299
3897f9f28cfa backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents: 288
diff changeset
129 };
3897f9f28cfa backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents: 288
diff changeset
130
3897f9f28cfa backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents: 288
diff changeset
131
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
132 IWebService(MessageBroker& broker) :
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
133 broker_(broker)
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
134 {
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
135 }
251
192e6e349e69 first usage of new message system (in SDL only)
am@osimis.io
parents: 212
diff changeset
136
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
137
269
0dfa83535cd7 indentation
am@osimis.io
parents: 268
diff changeset
138 virtual ~IWebService()
0dfa83535cd7 indentation
am@osimis.io
parents: 268
diff changeset
139 {
0dfa83535cd7 indentation
am@osimis.io
parents: 268
diff changeset
140 }
251
192e6e349e69 first usage of new message system (in SDL only)
am@osimis.io
parents: 212
diff changeset
141
434
3a8bcc45c221 moved the HTTP cache from OrthancApiClient to BaseWebService (not implemented yet in WASM)
am@osimis.io
parents: 417
diff changeset
142 virtual void EnableCache(bool enable) = 0;
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
143
299
3897f9f28cfa backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents: 288
diff changeset
144 virtual void GetAsync(const std::string& uri,
417
aee3d7941c9b preparing to load images using DICOMweb
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
145 const HttpHeaders& headers,
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
146 Orthanc::IDynamicObject* payload /* takes ownership */,
301
547e1cf7aa7b cleanup
am@osimis.io
parents: 300
diff changeset
147 MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback,
309
14ef1227120f web services: better handling of failures
am@osimis.io
parents: 301
diff changeset
148 MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL,
14ef1227120f web services: better handling of failures
am@osimis.io
parents: 301
diff changeset
149 unsigned int timeoutInSeconds = 60) = 0;
299
3897f9f28cfa backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents: 288
diff changeset
150
300
b4abaeb783b1 messaging refactoring almost complete: works fine in native
am@osimis.io
parents: 299
diff changeset
151 virtual void PostAsync(const std::string& uri,
417
aee3d7941c9b preparing to load images using DICOMweb
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
152 const HttpHeaders& headers,
300
b4abaeb783b1 messaging refactoring almost complete: works fine in native
am@osimis.io
parents: 299
diff changeset
153 const std::string& body,
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
154 Orthanc::IDynamicObject* payload /* takes ownership */,
301
547e1cf7aa7b cleanup
am@osimis.io
parents: 300
diff changeset
155 MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback,
309
14ef1227120f web services: better handling of failures
am@osimis.io
parents: 301
diff changeset
156 MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL,
14ef1227120f web services: better handling of failures
am@osimis.io
parents: 301
diff changeset
157 unsigned int timeoutInSeconds = 60) = 0;
299
3897f9f28cfa backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents: 288
diff changeset
158
315
aad37d0b6407 Added LayerWidget::RemoveLayer + DELETE commands in WebService
am@osimis.io
parents: 309
diff changeset
159 virtual void DeleteAsync(const std::string& uri,
417
aee3d7941c9b preparing to load images using DICOMweb
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
160 const HttpHeaders& headers,
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 315
diff changeset
161 Orthanc::IDynamicObject* payload /* takes ownership */,
315
aad37d0b6407 Added LayerWidget::RemoveLayer + DELETE commands in WebService
am@osimis.io
parents: 309
diff changeset
162 MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback,
aad37d0b6407 Added LayerWidget::RemoveLayer + DELETE commands in WebService
am@osimis.io
parents: 309
diff changeset
163 MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL,
aad37d0b6407 Added LayerWidget::RemoveLayer + DELETE commands in WebService
am@osimis.io
parents: 309
diff changeset
164 unsigned int timeoutInSeconds = 60) = 0;
269
0dfa83535cd7 indentation
am@osimis.io
parents: 268
diff changeset
165 };
57
d20e25cfcf3a IWebService
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
166 }