Samchon Framework for CPP
1.0.0
|
#include <ExternalServer.hpp>
Public Member Functions | |
ExternalServer (base::ExternalSystemArrayBase *systemArray) | |
virtual void | connect () |
Public Member Functions inherited from samchon::templates::external::ExternalSystem | |
ExternalSystem () | |
ExternalSystem (base::ExternalSystemArrayBase *systemArray) | |
ExternalSystem (base::ExternalSystemArrayBase *systemArray, std::shared_ptr< protocol::ClientDriver > driver) | |
virtual | ~ExternalSystem ()=default |
virtual void | construct (std::shared_ptr< library::XML > xml) override |
Construct data of the Entity from an XML object. More... | |
virtual auto | key () const -> std::string |
auto | getName () const -> std::string |
void | close () |
virtual void | sendData (std::shared_ptr< protocol::Invoke > invoke) override |
virtual void | replyData (std::shared_ptr< protocol::Invoke > invoke) override |
virtual auto | CHILD_TAG () const -> std::string override |
A tag name of children. More... | |
virtual auto | toXML () const -> std::shared_ptr< library::XML > override |
Get an XML object represents the EntityGroup. More... | |
Public Member Functions inherited from samchon::protocol::EntityGroup< Container, T, Key > | |
auto | find (const typename child_type::key_type &key) -> typename container_type::iterator |
Get iterator to element. More... | |
auto | find (const typename child_type::key_type &key) const -> typename container_type::const_iterator |
Get const iterator to element. More... | |
auto | has (const typename child_type::key_type &key) const -> bool |
Indicates whether a container has an object having the specified identifier. More... | |
auto | count (const typename child_type::key_type &key) const -> size_t |
Count elements with a specific key. More... | |
auto | get (const typename child_type::key_type &key) -> typename container_type::value_type & |
Access the element by specified identifier(key). More... | |
auto | get (const typename child_type::key_type &key) const -> const typename container_type::value_type & |
Access the const element by specified identifier(key). More... | |
Public Member Functions inherited from samchon::protocol::IProtocol | |
virtual void | replyData (std::shared_ptr< Invoke >)=0 |
virtual void | sendData (std::shared_ptr< Invoke >)=0 |
Protected Member Functions | |
virtual auto | createServerConnector () -> protocol::ServerConnector * |
Protected Member Functions inherited from samchon::protocol::EntityGroup< Container, T, Key > | |
virtual auto | createChild (std::shared_ptr< library::XML >) -> child_type *=0 |
Factory method of a child Entity. More... | |
Additional Inherited Members | |
Protected Attributes inherited from samchon::templates::external::ExternalSystem | |
std::string | name |
An external server driver.
The ExternalServer is an abstract class, derived from the ExternalSystem class, connecting to remote, external server. Extends this ExternalServer class and overrides the createServerConnector() method following which protocol the external server uses.
An external system driver.
The ExternalSystem class represents an external system, connected and interact with this system. ExternalSystem takes full charge of network communication with the remote, external system have connected. Replied Invoke messages from the external system is shifted to and processed in, children elements of this class, ExternalSystemRole objects.
The ExternalSystem class can be a bridge for logical proxy. In framework within user, which external system is connected with this system, it's not important. Only interested in user's perspective is which can be done.
By using the logical proxy, user dont't need to know which role is belonged to which system. Just access to a role directly from ExternalSystemArray.getRole. Sends and receives Invoke message via the role.
Definition at line 25 of file ExternalServer.hpp.
|
inline |
Construct from parent ExternalSystemArray.
systemArray | The parent ExternalSystemArray object. |
Definition at line 43 of file ExternalServer.hpp.
|
inlineprotectedvirtual |
Factory method creating IServerConnector object.
The createServerConnector() is an abstract method creating IServerConnector object. Overrides and returns one of them, considering which templates the external system follows:
Definition at line 63 of file ExternalServer.hpp.
Referenced by connect().
|
inlinevirtual |
Connect to external server.
Definition at line 75 of file ExternalServer.hpp.
References createServerConnector(), and samchon::protocol::EntityGroup< Container, T, Key >::get().
Referenced by samchon::templates::external::ExternalServerArray< System >::connect().