Mercurial > hg > orthanc
comparison OrthancServer/LuaScripting.h @ 1437:02f5a3f5c0a0
access to the REST API from Lua
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 30 Jun 2015 18:41:33 +0200 |
parents | 6406f5493d92 |
children | f3672356c121 |
comparison
equal
deleted
inserted
replaced
1436:0a3e3be59094 | 1437:02f5a3f5c0a0 |
---|---|
33 #pragma once | 33 #pragma once |
34 | 34 |
35 #include "IServerListener.h" | 35 #include "IServerListener.h" |
36 #include "../Core/Lua/LuaContext.h" | 36 #include "../Core/Lua/LuaContext.h" |
37 #include "Scheduler/IServerCommand.h" | 37 #include "Scheduler/IServerCommand.h" |
38 #include "OrthancRestApi/OrthancRestApi.h" | |
38 | 39 |
39 namespace Orthanc | 40 namespace Orthanc |
40 { | 41 { |
41 class ServerContext; | 42 class ServerContext; |
42 | 43 |
43 class LuaScripting : public IServerListener | 44 class LuaScripting : public IServerListener |
44 { | 45 { |
45 private: | 46 private: |
47 static OrthancRestApi* GetRestApi(lua_State *state); | |
48 | |
49 static int RestApiGet(lua_State *state); | |
50 | |
46 void ApplyOnStoredInstance(const std::string& instanceId, | 51 void ApplyOnStoredInstance(const std::string& instanceId, |
47 const Json::Value& simplifiedDicom, | 52 const Json::Value& simplifiedDicom, |
48 const Json::Value& metadata, | 53 const Json::Value& metadata, |
49 const std::string& remoteAet, | 54 const std::string& remoteAet, |
50 const std::string& calledAet); | 55 const std::string& calledAet); |
59 void OnStableResource(const ServerIndexChange& change); | 64 void OnStableResource(const ServerIndexChange& change); |
60 | 65 |
61 boost::mutex mutex_; | 66 boost::mutex mutex_; |
62 LuaContext lua_; | 67 LuaContext lua_; |
63 ServerContext& context_; | 68 ServerContext& context_; |
69 OrthancRestApi* restApi_; | |
64 | 70 |
65 public: | 71 public: |
66 class Locker : public boost::noncopyable | 72 class Locker : public boost::noncopyable |
67 { | 73 { |
68 private: | 74 private: |
84 return that_.lua_; | 90 return that_.lua_; |
85 } | 91 } |
86 }; | 92 }; |
87 | 93 |
88 LuaScripting(ServerContext& context); | 94 LuaScripting(ServerContext& context); |
95 | |
96 void SetOrthancRestApi(OrthancRestApi& restApi); | |
97 | |
98 void ResetOrthancRestApi(); | |
89 | 99 |
90 virtual void SignalStoredInstance(const std::string& publicId, | 100 virtual void SignalStoredInstance(const std::string& publicId, |
91 DicomInstanceToStore& instance, | 101 DicomInstanceToStore& instance, |
92 const Json::Value& simplifiedTags); | 102 const Json::Value& simplifiedTags); |
93 | 103 |