Mercurial > hg > orthanc
comparison Plugins/Samples/Common/OrthancPluginCppWrapper.h @ 3433:caa526bb65cc
fixed C++ compatibility wrapper for OrthancPluginRegisterRestCallbackNoLock()
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 18 Jun 2019 09:10:27 +0200 |
parents | 00737cd21f40 |
children | 6503ab9489ba |
comparison
equal
deleted
inserted
replaced
3432:297ad330900c | 3433:caa526bb65cc |
---|---|
1012 | 1012 |
1013 void ChunkedRequestReaderFinalize( | 1013 void ChunkedRequestReaderFinalize( |
1014 OrthancPluginServerChunkedRequestReader* reader); | 1014 OrthancPluginServerChunkedRequestReader* reader); |
1015 | 1015 |
1016 #else | 1016 #else |
1017 | 1017 |
1018 void ChunkedRestCompatibility(OrthancPluginRestOutput* output, | 1018 OrthancPluginErrorCode ChunkedRestCompatibility(OrthancPluginRestOutput* output, |
1019 const char* url, | 1019 const char* url, |
1020 const OrthancPluginHttpRequest* request, | 1020 const OrthancPluginHttpRequest* request, |
1021 RestCallback GetHandler, | 1021 RestCallback GetHandler, |
1022 ChunkedRestCallback PostHandler, | 1022 ChunkedRestCallback PostHandler, |
1023 RestCallback DeleteHandler, | 1023 RestCallback DeleteHandler, |
1024 ChunkedRestCallback PutHandler); | 1024 ChunkedRestCallback PutHandler); |
1025 | 1025 |
1026 template< | 1026 template< |
1027 RestCallback GetHandler, | 1027 RestCallback GetHandler, |
1028 ChunkedRestCallback PostHandler, | 1028 ChunkedRestCallback PostHandler, |
1029 RestCallback DeleteHandler, | 1029 RestCallback DeleteHandler, |
1030 ChunkedRestCallback PutHandler | 1030 ChunkedRestCallback PutHandler |
1031 > | 1031 > |
1032 static void ChunkedRestCompatibility(OrthancPluginRestOutput* output, | 1032 inline OrthancPluginErrorCode ChunkedRestCompatibility(OrthancPluginRestOutput* output, |
1033 const char* url, | 1033 const char* url, |
1034 const OrthancPluginHttpRequest* request) | 1034 const OrthancPluginHttpRequest* request) |
1035 { | 1035 { |
1036 ChunkedRestCompatibility(output, url, request, GetHandler, | 1036 return ChunkedRestCompatibility(output, url, request, GetHandler, |
1037 PostHandler, DeleteHandler, PutHandler); | 1037 PostHandler, DeleteHandler, PutHandler); |
1038 } | 1038 } |
1039 #endif | 1039 #endif |
1040 } | 1040 } |
1041 | 1041 |
1042 | 1042 |
1066 Internals::ChunkedRequestReaderFinalize); | 1066 Internals::ChunkedRequestReaderFinalize); |
1067 #else | 1067 #else |
1068 LogWarning("Performance warning: The plugin was compiled against a pre-1.5.7 version " | 1068 LogWarning("Performance warning: The plugin was compiled against a pre-1.5.7 version " |
1069 "of the Orthanc SDK. Multipart transfers will be entirely stored in RAM."); | 1069 "of the Orthanc SDK. Multipart transfers will be entirely stored in RAM."); |
1070 | 1070 |
1071 OrthancPluginRegisterRestCallback( | 1071 OrthancPluginRegisterRestCallbackNoLock( |
1072 GetGlobalContext(), uri.c_str(), | 1072 GetGlobalContext(), uri.c_str(), |
1073 Internals::Protect< Internals::ChunkedRestCompatibility< | 1073 Internals::ChunkedRestCompatibility<GetHandler, PostHandler, DeleteHandler, PutHandler>); |
1074 GetHandler, PostHandler, DeleteHandler, PutHandler> >); | |
1075 #endif | 1074 #endif |
1076 } | 1075 } |
1077 }; | 1076 }; |
1078 } | 1077 } |