ANNA Suite  2020b
Multipurpose development suite for Telco applications
LocalConnection.hpp
Go to the documentation of this file.
1 // ANNA - Anna is Not Nothingness Anymore //
2 // //
3 // (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo //
4 // //
5 // See project site at http://redmine.teslayout.com/projects/anna-suite //
6 // See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE //
7 
8 
9 #ifndef anna_comm_internal_LocalConnection_hpp
10 #define anna_comm_internal_LocalConnection_hpp
11 
12 namespace anna {
13 
14 namespace xml {
15 class Node;
16 }
17 
18 namespace comm {
19 
20 class ServerSocket;
21 class ClientSocket;
22 
23 namespace handler {
24 class ServerSocket;
25 }
26 
32 public:
36  LocalConnection() : a_serverSocket(NULL), a_clientSocket(NULL) {;}
37 
43  ServerSocket* getServerSocket() const { return a_serverSocket; }
44 
49  ClientSocket* getClientSocket() { return a_clientSocket; }
50 
55  std::string asString() const ;
56 
62  xml::Node* asXML(xml::Node* parent) const noexcept(false);
63 
68  static const char* className() { return "anna::comm::LocalConnection"; }
69 
70 private:
71  ServerSocket* a_serverSocket;
72  ClientSocket* a_clientSocket;
73 
74  void setServerSocket(ServerSocket* serverSocket) { a_serverSocket = serverSocket; }
75  void setClientSocket(ClientSocket* clientSocket) { a_clientSocket = clientSocket; }
76 
77  friend class ServerSocket;
78  friend class handler::ServerSocket;
79 };
80 
81 }
82 }
83 
84 #endif
85 
static const char * className()
Definition: LocalConnection.hpp:68
Definition: Node.hpp:56
Definition: LocalConnection.hpp:31
Definition: ServerSocket.hpp:24
Definition: ClientSocket.hpp:38
ServerSocket * getServerSocket() const
Definition: LocalConnection.hpp:43
Definition: ServerSocket.hpp:37
xml::Node Node
Definition: Node.hpp:21
ClientSocket * getClientSocket()
Definition: LocalConnection.hpp:49
Definition: app.hpp:12
LocalConnection()
Definition: LocalConnection.hpp:36