9 #ifndef anna_diameter_comm_Entity_hpp 10 #define anna_diameter_comm_Entity_hpp 62 std::vector<Server*> a_servers;
64 std::string a_description;
66 std::vector<Server*>::iterator a_deliveryIterator;
67 Server *a_lastUsedResource;
78 void availabilityLost() ;
79 void availabilityRecovered() ;
80 bool refreshAvailability() ;
81 void assertReady() noexcept(
false);
83 void childIdle()
const ;
89 std::string a_socketListLiteral;
90 std::string a_primarySocketLiteral;
91 std::string a_secondarySocketLiteral;
97 void updateIncomingActivityTime() ;
98 void updateOutgoingActivityTime() ;
101 void close(
bool destroy) noexcept(
false);
114 Entity(
int maxServers = 2) : a_maxServers(maxServers) { initialize(); }
137 void setDescription(
const std::string &description) { a_description = description; }
166 void addServer(
const socket_t & serverId) noexcept(
false);
173 bool bind() noexcept(
false);
180 void raiseAutoRecovery(
bool autoRecovery =
true) noexcept(
false);
272 bool send(
const Message *message) noexcept(
false);
343 virtual int readSocketId(
const Message *message,
int maxClientSessions)
const ;
355 bool broadcast(
const Message *message) noexcept(
false);
380 int getOTARequests()
const ;
387 bool idle()
const {
return (getOTARequests() == 0); }
390 std::vector<Server*>::iterator
begin() {
return a_servers.begin(); }
391 std::vector<Server*>::iterator
end() {
return a_servers.end(); }
392 std::vector<Server*>::const_iterator
begin()
const {
return a_servers.begin(); }
393 std::vector<Server*>::const_iterator
end()
const {
return a_servers.end(); }
417 socket_v getAddressPortList()
const ;
435 bool hidden()
const ;
447 std::string asString()
const ;
464 virtual void eventPeerShutdown(
const ClientSession* clientSession) ;
int getNumberOfServers() const
Definition: Entity.hpp:407
Entity(int maxServers=2)
Definition: Entity.hpp:114
void close() noexcept(false)
Definition: Entity.hpp:400
Definition: Millisecond.hpp:24
Engine * getEngine() const
Definition: Entity.hpp:157
std::vector< Server * >::const_iterator end() const
Definition: Entity.hpp:393
Definition: Engine.hpp:102
void setDescription(const std::string &description)
Definition: Entity.hpp:137
void setCategory(int category)
Definition: Entity.hpp:195
void setEngine(Engine *e)
Definition: Entity.hpp:151
Definition: Server.hpp:54
std::vector< Server * >::const_iterator begin() const
Definition: Entity.hpp:392
void setBalance(bool balance)
Definition: Entity.hpp:217
bool broadcast(const Message &message) noexcept(false)
Definition: Entity.hpp:356
Definition: OriginHost.hpp:41
bool isAvailable() const
Definition: Entity.hpp:362
_v
Definition: Entity.hpp:57
Definition: Entity.hpp:57
bool getBalance() const
Definition: Entity.hpp:224
const std::string & getDescription() const
Definition: Entity.hpp:144
_v
Definition: ClassCode.hpp:28
SessionBasedModelsType::_v getSessionBasedModelsType() const
Definition: Entity.hpp:285
Definition: Response.hpp:44
std::vector< Server * >::iterator end()
Definition: Entity.hpp:391
Definition: Message.hpp:45
void setMaxServers(int maxServers)
Definition: Entity.hpp:122
Definition: ClientSession.hpp:51
std::pair< std::string, int > socket_t
Definition: defines.hpp:104
bool isDeprecated() const
Definition: Entity.hpp:367
void setDeprecated(bool deprecated=true)
Definition: Entity.hpp:372
bool idle() const
Definition: Entity.hpp:387
xml::Node Node
Definition: Node.hpp:21
bool send(const Message &message) noexcept(false)
Definition: Entity.hpp:273
int getMaxServerss() const
Definition: Entity.hpp:412
std::vector< Server * >::iterator begin()
Definition: Entity.hpp:390
int getCategory() const
Definition: Entity.hpp:202
std::vector< socket_t > socket_v
Definition: defines.hpp:109
Definition: Entity.hpp:50
Definition: DataBlock.hpp:24
void setSessionBasedModelsType(const SessionBasedModelsType::_v sessionBasedModelsType)
Definition: Entity.hpp:279
Definition: Entity.hpp:57
int getMaxServers() const
Definition: Entity.hpp:129
Server * getLastUsedResource() const
Definition: Entity.hpp:208