9 #ifndef anna_diameter_comm_LocalServer_hpp 10 #define anna_diameter_comm_LocalServer_hpp 59 std::string a_description;
61 int a_currentConnections;
72 void initializeStatisticResources() ;
73 void resetStatistics() ;
77 void lostConnection() ;
78 void newConnection() noexcept(
false);
83 void updateIncomingActivityTime() ;
84 void updateOutgoingActivityTime() ;
88 void availabilityLost() ;
89 void availabilityRecovered() ;
90 bool refreshAvailability() ;
93 void attachPlanning() ;
95 typedef int serverSession_key;
97 typedef std::map <serverSession_key, ServerSession*> serverSession_container;
98 typedef serverSession_container::value_type serverSession_value_type;
99 typedef serverSession_container::iterator serverSession_iterator;
100 typedef serverSession_container::const_iterator const_serverSession_iterator;
101 serverSession_container a_serverSessions;
103 serverSession_iterator serverSession_find(
const serverSession_key&) ;
104 serverSession_iterator serverSession_begin() {
return a_serverSessions.begin(); }
105 serverSession_iterator serverSession_end() {
return a_serverSessions.end(); }
106 static ServerSession* serverSession(serverSession_iterator ii) {
return ii->second; }
107 const_serverSession_iterator serverSession_begin()
const {
return a_serverSessions.begin(); }
108 const_serverSession_iterator serverSession_end()
const {
return a_serverSessions.end(); }
109 static const ServerSession* serverSession(const_serverSession_iterator ii) {
return ii->second; }
120 serverSession_iterator a_deliveryIterator;
145 void setDescription(
const std::string description) { a_description = description; }
171 void setMaxConnections(
int maxConnections) noexcept(
false);
226 void disable(
bool lock =
false) noexcept(
false);
232 void enable(
bool unlock =
false) noexcept(
false);
239 int getOTARequests()
const ;
246 bool idle()
const {
return (getOTARequests() == 0); }
252 void close() noexcept(
false);
299 bool send(
const Message*,
int socketId = -1 ) noexcept(
false);
300 bool send(
const Message& message,
int socketId = -1 ) noexcept(false) {
return send(&message, socketId); }
331 bool broadcast(
const Message *message) noexcept(
false);
339 std::string asString()
const ;
363 virtual void eventPeerShutdown(
const ServerSession* serverSession) ;
Definition: Exception.hpp:26
Definition: Millisecond.hpp:24
bool send(const Message &message, int socketId=-1) noexcept(false)
Definition: LocalServer.hpp:300
_v
Definition: Exception.hpp:26
Definition: Engine.hpp:102
ServerSession * getLastUsedResource() const
Definition: LocalServer.hpp:306
void setKey(const socket_t &key)
Definition: LocalServer.hpp:138
bool idle() const
Definition: LocalServer.hpp:246
Definition: ClientSocket.hpp:38
bool isAvailable() const
Definition: LocalServer.hpp:215
Definition: OriginHost.hpp:41
const socket_t & getKey() const
Definition: LocalServer.hpp:193
void setDescription(const std::string description)
Definition: LocalServer.hpp:145
void setAllowedInactivityTime(const anna::Millisecond &allowedInactivityTime)
Definition: LocalServer.hpp:179
_v
Definition: ClassCode.hpp:28
void setEngine(Engine *e)
Definition: LocalServer.hpp:185
int getCurrentConnections() const
Definition: LocalServer.hpp:203
Definition: MessageStatistics.hpp:33
Definition: Response.hpp:44
Definition: Message.hpp:45
bool broadcast(const Message &message) noexcept(false)
Definition: LocalServer.hpp:332
Definition: ServerSession.hpp:53
std::pair< std::string, int > socket_t
Definition: defines.hpp:104
Definition: Recycler.hpp:30
Definition: LocalServer.hpp:55
xml::Node Node
Definition: Node.hpp:21
virtual int readSocketId(const Message *message) const
Definition: LocalServer.hpp:320
const anna::Millisecond & getAllowedInactivityTime() const
Definition: LocalServer.hpp:210
Definition: ServerSessionReceiver.hpp:35
void resetConnectionsMargin() noexcept(false)
Definition: LocalServer.hpp:257
int getMaxConnections() const
Definition: LocalServer.hpp:198
std::pair< U24, bool > CommandId
Definition: defines.hpp:32
void setCategory(int category)
Definition: LocalServer.hpp:161
~LocalServer()
Definition: LocalServer.hpp:129
Definition: DataBlock.hpp:24
Definition: ServerSocket.hpp:44