Mercurial > hg > orthanc
comparison OrthancServer/OrthancRestApi/OrthancRestSystem.cpp @ 1632:eb8fbcf008b5
fix build with plugins disabled
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 21 Sep 2015 14:05:06 +0200 |
parents | 0d074f5f6069 |
children | de1413733c97 |
comparison
equal
deleted
inserted
replaced
1631:0d074f5f6069 | 1632:eb8fbcf008b5 |
---|---|
63 result["Version"] = ORTHANC_VERSION; | 63 result["Version"] = ORTHANC_VERSION; |
64 | 64 |
65 result["StorageAreaPlugin"] = Json::nullValue; | 65 result["StorageAreaPlugin"] = Json::nullValue; |
66 result["DatabaseBackendPlugin"] = Json::nullValue; | 66 result["DatabaseBackendPlugin"] = Json::nullValue; |
67 | 67 |
68 #if ORTHANC_PLUGINS_ENABLED == 1 | |
69 result["PluginsEnabled"] = true; | |
68 const OrthancPlugins& plugins = OrthancRestApi::GetContext(call).GetPlugins(); | 70 const OrthancPlugins& plugins = OrthancRestApi::GetContext(call).GetPlugins(); |
69 | 71 |
70 if (plugins.HasStorageArea()) | 72 if (plugins.HasStorageArea()) |
71 { | 73 { |
72 std::string p = plugins.GetStorageAreaLibrary().GetPath(); | 74 std::string p = plugins.GetStorageAreaLibrary().GetPath(); |
76 if (plugins.HasDatabaseBackend()) | 78 if (plugins.HasDatabaseBackend()) |
77 { | 79 { |
78 std::string p = plugins.GetDatabaseBackendLibrary().GetPath(); | 80 std::string p = plugins.GetDatabaseBackendLibrary().GetPath(); |
79 result["DatabaseBackendPlugin"] = boost::filesystem::canonical(p).string(); | 81 result["DatabaseBackendPlugin"] = boost::filesystem::canonical(p).string(); |
80 } | 82 } |
83 #else | |
84 result["PluginsEnabled"] = false; | |
85 #endif | |
81 | 86 |
82 call.GetOutput().AnswerJson(result); | 87 call.GetOutput().AnswerJson(result); |
83 } | 88 } |
84 | 89 |
85 static void GetStatistics(RestApiGetCall& call) | 90 static void GetStatistics(RestApiGetCall& call) |
148 | 153 |
149 v.append("explorer.js"); | 154 v.append("explorer.js"); |
150 | 155 |
151 if (OrthancRestApi::GetContext(call).HasPlugins()) | 156 if (OrthancRestApi::GetContext(call).HasPlugins()) |
152 { | 157 { |
158 #if ORTHANC_PLUGINS_ENABLED == 1 | |
153 std::list<std::string> plugins; | 159 std::list<std::string> plugins; |
154 OrthancRestApi::GetContext(call).GetPlugins().GetManager().ListPlugins(plugins); | 160 OrthancRestApi::GetContext(call).GetPlugins().GetManager().ListPlugins(plugins); |
155 | 161 |
156 for (std::list<std::string>::const_iterator | 162 for (std::list<std::string>::const_iterator |
157 it = plugins.begin(); it != plugins.end(); ++it) | 163 it = plugins.begin(); it != plugins.end(); ++it) |
158 { | 164 { |
159 v.append(*it); | 165 v.append(*it); |
160 } | 166 } |
167 #endif | |
161 } | 168 } |
162 | 169 |
163 call.GetOutput().AnswerJson(v); | 170 call.GetOutput().AnswerJson(v); |
164 } | 171 } |
165 | 172 |
169 if (!OrthancRestApi::GetContext(call).HasPlugins()) | 176 if (!OrthancRestApi::GetContext(call).HasPlugins()) |
170 { | 177 { |
171 return; | 178 return; |
172 } | 179 } |
173 | 180 |
181 #if ORTHANC_PLUGINS_ENABLED == 1 | |
174 const PluginsManager& manager = OrthancRestApi::GetContext(call).GetPlugins().GetManager(); | 182 const PluginsManager& manager = OrthancRestApi::GetContext(call).GetPlugins().GetManager(); |
175 std::string id = call.GetUriComponent("id", ""); | 183 std::string id = call.GetUriComponent("id", ""); |
176 | 184 |
177 if (manager.HasPlugin(id)) | 185 if (manager.HasPlugin(id)) |
178 { | 186 { |
206 c = plugins.GetProperty(id.c_str(), _OrthancPluginProperty_OrthancExplorer); | 214 c = plugins.GetProperty(id.c_str(), _OrthancPluginProperty_OrthancExplorer); |
207 v["ExtendsOrthancExplorer"] = (c != NULL); | 215 v["ExtendsOrthancExplorer"] = (c != NULL); |
208 | 216 |
209 call.GetOutput().AnswerJson(v); | 217 call.GetOutput().AnswerJson(v); |
210 } | 218 } |
219 #endif | |
211 } | 220 } |
212 | 221 |
213 | 222 |
214 static void GetOrthancExplorerPlugins(RestApiGetCall& call) | 223 static void GetOrthancExplorerPlugins(RestApiGetCall& call) |
215 { | 224 { |
216 std::string s = "// Extensions to Orthanc Explorer by the registered plugins\n\n"; | 225 std::string s = "// Extensions to Orthanc Explorer by the registered plugins\n\n"; |
217 | 226 |
218 if (OrthancRestApi::GetContext(call).HasPlugins()) | 227 if (OrthancRestApi::GetContext(call).HasPlugins()) |
219 { | 228 { |
229 #if ORTHANC_PLUGINS_ENABLED == 1 | |
220 const OrthancPlugins& plugins = OrthancRestApi::GetContext(call).GetPlugins(); | 230 const OrthancPlugins& plugins = OrthancRestApi::GetContext(call).GetPlugins(); |
221 const PluginsManager& manager = plugins.GetManager(); | 231 const PluginsManager& manager = plugins.GetManager(); |
222 | 232 |
223 std::list<std::string> lst; | 233 std::list<std::string> lst; |
224 manager.ListPlugins(lst); | 234 manager.ListPlugins(lst); |
231 { | 241 { |
232 s += "/**\n * From plugin: " + *it + " (version " + manager.GetPluginVersion(*it) + ")\n **/\n\n"; | 242 s += "/**\n * From plugin: " + *it + " (version " + manager.GetPluginVersion(*it) + ")\n **/\n\n"; |
233 s += std::string(tmp) + "\n\n"; | 243 s += std::string(tmp) + "\n\n"; |
234 } | 244 } |
235 } | 245 } |
246 #endif | |
236 } | 247 } |
237 | 248 |
238 call.GetOutput().AnswerBuffer(s, "application/javascript"); | 249 call.GetOutput().AnswerBuffer(s, "application/javascript"); |
239 } | 250 } |
240 | 251 |