diff options
Diffstat (limited to 'moses')
-rw-r--r-- | moses/ExportInterface.cpp | 2 | ||||
-rw-r--r-- | moses/parameters/ServerOptions.h | 1 | ||||
-rw-r--r-- | moses/server/Translator.h | 13 |
3 files changed, 11 insertions, 5 deletions
diff --git a/moses/ExportInterface.cpp b/moses/ExportInterface.cpp index a6cb97918..705b1b3fb 100644 --- a/moses/ExportInterface.cpp +++ b/moses/ExportInterface.cpp @@ -154,7 +154,7 @@ run_as_server() xmlrpc_c::registry myRegistry; xmlrpc_c::methodPtr const - translator(new MosesServer::Translator(sopts.num_threads)), + translator(new MosesServer::Translator(sopts)), updater(new MosesServer::Updater), optimizer(new MosesServer::Optimizer); diff --git a/moses/parameters/ServerOptions.h b/moses/parameters/ServerOptions.h index e9889f8d4..aa5f47018 100644 --- a/moses/parameters/ServerOptions.h +++ b/moses/parameters/ServerOptions.h @@ -1,4 +1,5 @@ // -*- mode: c++; cc-style: gnu -*- +#pragma once #include <string> #include "moses/Parameter.h" namespace Moses diff --git a/moses/server/Translator.h b/moses/server/Translator.h index 4a6f889e8..21288e542 100644 --- a/moses/server/Translator.h +++ b/moses/server/Translator.h @@ -2,6 +2,8 @@ #pragma once #include "moses/ThreadPool.h" +#include "moses/parameters/ServerOptions.h" +#include "session.h" #include <xmlrpc-c/base.hpp> #include <xmlrpc-c/registry.hpp> #include <xmlrpc-c/server_abyss.hpp> @@ -11,16 +13,19 @@ namespace MosesServer { class - // MosesServer:: - Translator : public xmlrpc_c::method +Translator : public xmlrpc_c::method { + Moses::ServerOptions m_server_options; public: - Translator(size_t numThreads = 10); - + Translator(Moses::ServerOptions const& sopts); + void execute(xmlrpc_c::paramList const& paramList, xmlrpc_c::value * const retvalP); + + Session const& get_session(uint64_t session_id); private: Moses::ThreadPool m_threadPool; + SessionCache m_session_cache; }; } |