Mercurial > hg > orthanc-wsi
annotate ViewerPlugin/OrthancPluginConnection.cpp @ 334:f011fc199b6a default tip
back to mainline
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 18 Oct 2024 15:44:18 +0200 |
parents | 0683312e21ba |
children |
rev | line source |
---|---|
194 | 1 /** |
2 * Orthanc - A Lightweight, RESTful DICOM Store | |
3 * Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics | |
4 * Department, University Hospital of Liege, Belgium | |
312
0683312e21ba
updated copyright, as Orthanc Team now replaces Osimis
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
309
diff
changeset
|
5 * Copyright (C) 2017-2023 Osimis S.A., Belgium |
0683312e21ba
updated copyright, as Orthanc Team now replaces Osimis
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
309
diff
changeset
|
6 * Copyright (C) 2024-2024 Orthanc Team SRL, Belgium |
309
7020852a8fa9
updated year to 2024
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
260
diff
changeset
|
7 * Copyright (C) 2021-2024 Sebastien Jodogne, ICTEAM UCLouvain, Belgium |
194 | 8 * |
9 * This program is free software: you can redistribute it and/or | |
10 * modify it under the terms of the GNU Affero General Public License | |
11 * as published by the Free Software Foundation, either version 3 of | |
12 * the License, or (at your option) any later version. | |
13 * | |
14 * This program is distributed in the hope that it will be useful, but | |
15 * WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
17 * Affero General Public License for more details. | |
18 * | |
19 * You should have received a copy of the GNU Affero General Public License | |
20 * along with this program. If not, see <http://www.gnu.org/licenses/>. | |
21 **/ | |
22 | |
23 | |
260 | 24 #include "../Framework/PrecompiledHeadersWSI.h" |
194 | 25 #include "OrthancPluginConnection.h" |
26 | |
235 | 27 #include "../Resources/Orthanc/Plugins/OrthancPluginCppWrapper.h" |
194 | 28 |
29 #include <OrthancException.h> | |
30 | |
196
b0bd22077cd8
sharing code with orthanc-stone
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
194
diff
changeset
|
31 namespace OrthancWSI |
194 | 32 { |
33 void OrthancPluginConnection::RestApiGet(std::string& result, | |
34 const std::string& uri) | |
35 { | |
36 OrthancPlugins::MemoryBuffer buffer; | |
37 | |
38 if (buffer.RestApiGet(uri, false)) | |
39 { | |
40 buffer.ToString(result); | |
41 } | |
42 else | |
43 { | |
44 throw Orthanc::OrthancException(Orthanc::ErrorCode_UnknownResource); | |
45 } | |
46 } | |
47 | |
48 | |
49 void OrthancPluginConnection::RestApiPost(std::string& result, | |
50 const std::string& uri, | |
51 const std::string& body) | |
52 { | |
53 OrthancPlugins::MemoryBuffer buffer; | |
54 | |
55 if (buffer.RestApiPost(uri, body.c_str(), body.size(), false)) | |
56 { | |
57 buffer.ToString(result); | |
58 } | |
59 else | |
60 { | |
61 throw Orthanc::OrthancException(Orthanc::ErrorCode_UnknownResource); | |
62 } | |
63 } | |
64 | |
65 | |
66 void OrthancPluginConnection::RestApiPut(std::string& result, | |
67 const std::string& uri, | |
68 const std::string& body) | |
69 { | |
70 OrthancPlugins::MemoryBuffer buffer; | |
71 | |
72 if (buffer.RestApiPut(uri, body.c_str(), body.size(), false)) | |
73 { | |
74 buffer.ToString(result); | |
75 } | |
76 else | |
77 { | |
78 throw Orthanc::OrthancException(Orthanc::ErrorCode_UnknownResource); | |
79 } | |
80 } | |
81 | |
82 | |
83 void OrthancPluginConnection::RestApiDelete(const std::string& uri) | |
84 { | |
85 OrthancPlugins::MemoryBuffer buffer; | |
86 | |
87 if (!::OrthancPlugins::RestApiDelete(uri, false)) | |
88 { | |
89 throw Orthanc::OrthancException(Orthanc::ErrorCode_UnknownResource); | |
90 } | |
91 } | |
92 } |