Mercurial > hg > orthanc-stone
comparison Platforms/Generic/WebServiceGetCommand.cpp @ 251:192e6e349e69 am-2
first usage of new message system (in SDL only)
author | am@osimis.io |
---|---|
date | Mon, 02 Jul 2018 18:13:46 +0200 |
parents | 5412adf19980 |
children | 9afafb192180 |
comparison
equal
deleted
inserted
replaced
250:5e642859267e | 251:192e6e349e69 |
---|---|
23 | 23 |
24 #include <Core/HttpClient.h> | 24 #include <Core/HttpClient.h> |
25 | 25 |
26 namespace OrthancStone | 26 namespace OrthancStone |
27 { | 27 { |
28 WebServiceGetCommand::WebServiceGetCommand(IWebService::ICallback& callback, | 28 WebServiceGetCommand::WebServiceGetCommand(MessageBroker& broker, |
29 IWebService::ICallback& callback, | |
29 const Orthanc::WebServiceParameters& parameters, | 30 const Orthanc::WebServiceParameters& parameters, |
30 const std::string& uri, | 31 const std::string& uri, |
31 Orthanc::IDynamicObject* payload /* takes ownership */) : | 32 Orthanc::IDynamicObject* payload /* takes ownership */) : |
32 callback_(callback), | 33 WebServiceCommandBase(broker, callback, parameters, uri, payload) |
33 parameters_(parameters), | |
34 uri_(uri), | |
35 payload_(payload) | |
36 { | 34 { |
37 } | 35 } |
38 | 36 |
39 | 37 |
40 void WebServiceGetCommand::Execute() | 38 void WebServiceGetCommand::Execute() |
43 client.SetTimeout(60); | 41 client.SetTimeout(60); |
44 client.SetMethod(Orthanc::HttpMethod_Get); | 42 client.SetMethod(Orthanc::HttpMethod_Get); |
45 success_ = client.Apply(answer_); | 43 success_ = client.Apply(answer_); |
46 } | 44 } |
47 | 45 |
48 | |
49 void WebServiceGetCommand::Commit() | |
50 { | |
51 if (success_) | |
52 { | |
53 callback_.NotifySuccess(uri_, answer_.c_str(), answer_.size(), payload_.release()); | |
54 } | |
55 else | |
56 { | |
57 callback_.NotifyError(uri_, payload_.release()); | |
58 } | |
59 } | |
60 } | 46 } |