1 #ifndef SERVER_ABYSS_HPP_INCLUDED
2 #define SERVER_ABYSS_HPP_INCLUDED
4 #include "xmlrpc-c/base.hpp"
16 constrOpt & registryPtr (xmlrpc_c::registryPtr const& arg);
17 constrOpt & registryP (const xmlrpc_c::registry * const& arg);
18 constrOpt & socketFd (xmlrpc_socket const& arg);
19 constrOpt & portNumber (uint const& arg);
20 constrOpt & logFileName (std::string const& arg);
21 constrOpt & keepaliveTimeout (uint const& arg);
22 constrOpt & keepaliveMaxConn (uint const& arg);
23 constrOpt & timeout (uint const& arg);
24 constrOpt & dontAdvertise (bool const& arg);
25 constrOpt & uriPath (std::string const& arg);
26 constrOpt & chunkResponse (bool const& arg);
29 xmlrpc_c::registryPtr registryPtr;
30 const xmlrpc_c::registry * registryP;
31 xmlrpc_socket socketFd;
33 std::string logFileName;
34 uint keepaliveTimeout;
35 uint keepaliveMaxConn;
47 bool keepaliveTimeout;
48 bool keepaliveMaxConn;
56 serverAbyss(constrOpt const& opt);
59 xmlrpc_c::registry const& registry,
60 unsigned int const portNumber = 8080,
61 std::string const& logFileName = "",
62 unsigned int const keepaliveTimeout = 0,
63 unsigned int const keepaliveMaxConn = 0,
64 unsigned int const timeout = 0,
65 bool const dontAdvertise = false,
66 bool const socketBound = false,
67 xmlrpc_socket const socketFd = 0
78 runConn(int const socketFd);
81 // The user has the choice of supplying the registry by plain pointer
82 // (and managing the object's existence himself) or by autoObjectPtr
83 // (with automatic management). 'registryPtr' exists here only to
84 // maintain a reference count in the case that the user supplied an
85 // autoObjectPtr. The object doesn't reference the C++ registry
86 // object except during construction, because the C registry is the
88 xmlrpc_c::registryPtr registryPtr;
93 setAdditionalServerParms(constrOpt const& opt);
96 initialize(constrOpt const& opt);
101 server_abyss_set_handlers(TServer * const srvP,
102 xmlrpc_c::registry const& registry,
103 std::string const& uriPath = "/RPC2");
106 server_abyss_set_handlers(TServer * const srvP,
107 const xmlrpc_c::registry * const registryP,
108 std::string const& uriPath = "/RPC2");
111 server_abyss_set_handlers(TServer * const srvP,
112 xmlrpc_c::registryPtr const registryPtr,
113 std::string const& uriPath = "/RPC2");