Mercurial > hg > orthanc
comparison OrthancServer/LuaScripting.h @ 2609:f7a84b551ee4 jobs
switch Lua to new jobs engine
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Sat, 19 May 2018 16:29:00 +0200 |
parents | 878b59270859 |
children | 2f3007bf0708 |
comparison
equal
deleted
inserted
replaced
2608:25225f0b4f33 | 2609:f7a84b551ee4 |
---|---|
32 | 32 |
33 | 33 |
34 #pragma once | 34 #pragma once |
35 | 35 |
36 #include "IServerListener.h" | 36 #include "IServerListener.h" |
37 | |
38 #include "ServerJobs/LuaJobManager.h" | |
39 | |
37 #include "../Core/Lua/LuaContext.h" | 40 #include "../Core/Lua/LuaContext.h" |
38 #include "Scheduler/IServerCommand.h" | |
39 | 41 |
40 namespace Orthanc | 42 namespace Orthanc |
41 { | 43 { |
42 class ServerContext; | 44 class ServerContext; |
43 | 45 |
57 void ApplyOnStoredInstance(const std::string& instanceId, | 59 void ApplyOnStoredInstance(const std::string& instanceId, |
58 const Json::Value& simplifiedDicom, | 60 const Json::Value& simplifiedDicom, |
59 const Json::Value& metadata, | 61 const Json::Value& metadata, |
60 const DicomInstanceToStore& instance); | 62 const DicomInstanceToStore& instance); |
61 | 63 |
62 IServerCommand* ParseOperation(const std::string& operation, | 64 size_t ParseOperation(LuaJobManager::Lock& lock, |
63 const Json::Value& parameters); | 65 const std::string& operation, |
66 const Json::Value& parameters); | |
64 | 67 |
65 void InitializeJob(); | 68 void InitializeJob(); |
66 | 69 |
67 void SubmitJob(const std::string& description); | 70 void SubmitJob(const std::string& description); |
68 | 71 |
69 void OnStableResource(const ServerIndexChange& change); | 72 void OnStableResource(const ServerIndexChange& change); |
70 | 73 |
71 boost::recursive_mutex mutex_; | 74 boost::recursive_mutex mutex_; |
72 LuaContext lua_; | 75 LuaContext lua_; |
73 ServerContext& context_; | 76 ServerContext& context_; |
77 LuaJobManager jobManager_; | |
74 | 78 |
75 public: | 79 public: |
76 class Locker : public boost::noncopyable | 80 class Locker : public boost::noncopyable |
77 { | 81 { |
78 private: | 82 private: |