CppServer  1.0.0.0
C++ Server Library
push_server.h
Go to the documentation of this file.
1 
9 #ifndef CPPSERVER_NANOMSG_PUSH_SERVER_H
10 #define CPPSERVER_NANOMSG_PUSH_SERVER_H
11 
12 #include "server.h"
13 
14 namespace CppServer {
15 namespace Nanomsg {
16 
18 
27 class PushServer : public Server
28 {
29 public:
31 
35  explicit PushServer(const std::string& address, bool threading = true)
36  : Server(CppServer::Nanomsg::Domain::Std, CppServer::Nanomsg::Protocol::Pull, address, threading)
37  {}
38  PushServer(const PushServer&) = delete;
39  PushServer(PushServer&&) = default;
40  virtual ~PushServer() = default;
41 
42  PushServer& operator=(const PushServer&) = delete;
43  PushServer& operator=(PushServer&&) = default;
44 
45 private:
46  using Server::Send;
47  using Server::TrySend;
48 };
49 
52 } // namespace Nanomsg
53 } // namespace CppServer
54 
55 #endif // CPPSERVER_NANOMSG_PUSH_SERVER_H
Nanomsg server.
Definition: server.h:29
size_t Send(const void *buffer, size_t size)
Send data to the client.
Definition: server.cpp:157
PushServer(const std::string &address, bool threading=true)
Initialize server with a given endpoint address.
Definition: push_server.h:35
C++ Server project definitions.
Definition: asio.h:24
PushServer & operator=(const PushServer &)=delete
Nanomsg server definition.
Nanomsg push server.
Definition: push_server.h:27
Protocol
Nanomsg protocol.
Definition: nanomsg.h:56
This socket is used to receive a message from a cluster of nodes. Send operation is not implemented o...
Domain
Nanomsg domain.
Definition: nanomsg.h:41
Standard full-blown socket.
virtual ~PushServer()=default
size_t TrySend(const void *buffer, size_t size)
Try to send data to the client in non-blocking mode.
Definition: server.cpp:173