1 #include <samchon/protocol/SystemRole.hpp> 3 #include <samchon/library/XML.hpp> 12 SystemRole::SystemRole()
19 this->
name = xml->getProperty(
"name");
22 if(xml->has(
"listenerArray") ==
false || xml->get(
"listenerArray")->at(0)->has(
"listener") ==
false)
25 shared_ptr<XMLList> &xmlList = xml->get(
"listenerArray")->at(0)->get(
"listener");
26 for(
size_t i = 0; i < xmlList->size(); i++)
27 listeners.insert(xmlList->at(i)->getValue());
54 xml->setProperty(
"name",
name);
58 shared_ptr<XML> listenerArray(
new XML());
59 listenerArray->setTag(
"listenerArray");
63 shared_ptr<XML> listener(
new XML());
64 listener->setTag(
"listener");
65 listener->setValue(*it);
67 listenerArray->push_back(listener);
69 xml->push_back(listenerArray);
An entity, a standard data class.
virtual auto key() const -> std::string override
Get a key that can identify the Entity uniquely.
virtual auto toXML() const -> std::shared_ptr< library::XML >
Get an XML object represents the Entity.
std::set< std::string > listeners
Listeners belongs to the role.
std::string name
A name representing the role.
Package of network protocol and libraries.
auto hasListener(const std::string &) const -> bool
Test whether has a listener in the role.
An interface of Invoke message chain.
XML is a class representing xml object.
virtual auto TAG() const -> std::string override
A tag name when represented by XML.
virtual void construct(std::shared_ptr< library::XML >) override
Construct data of the Entity from an XML object.
virtual auto toXML() const -> std::shared_ptr< library::XML > override
Get an XML object represents the Entity.