GlobalObjects
|
Der Client, welcher mit einem GloServer kommuniziert. Mehr ...
#include <GloClient.h>
Öffentliche Methoden | |
Client (ClientThread *pParentClientThread, const std::string &rstrHostname, unsigned int uiPort, int iAdressFamily, int iSocketType, int iProtocol, int iSecTimeOut) | |
virtual | ~Client () |
virtual int | disconnectServer () |
virtual void | processServerMessage (tcp::Message *pTcpMessage) |
int | sendOrder (OrderMsg *pOrderMsg) |
void | setWsaeConnResetGloServerCallBack (CallBack *pCallBack) |
Öffentliche Methoden geerbt von tcp::Client | |
Client (const std::string &rsHostname, unsigned int uiPort, int iAdressFamily, int iSocketType, int iProtocol, int iSecTimeOut) | |
Client (const std::string &rsHostname, unsigned int uiPort, int iAdressFamily, int iSocketType, int iProtocol, unsigned int uiDataSize, int iSecTimeOut) | |
int | acceptServerMessage (Message *pTcpServerMessage) |
virtual void | cancel () override |
int | connectServer () |
std::string | getHostName () const |
int | getPeerName (std::string &rsIPAdress, unsigned int &ruiPort) const |
int | getSocketAdrFromString (SOCKADDR_IN *Socketadress, const std::string &rsHostnameOrIp) const |
ActionCode | getWaitingServerMsgActionCode () const |
bool | isServerConnected () const |
virtual int | send (char *pszRawMsg, unsigned int uiRawMsgSize, unsigned int uiMessageID=0, int iActionCode=0, const std::string &rsInfo="") |
virtual int | send (Message *pTcpMessage) override |
virtual void | setDataSize (unsigned int uiDataSize) override |
Öffentliche Methoden geerbt von tcp::TcpMain | |
TcpMain (unsigned int uiPort, int iAdressFamily, int iSocketType, int iProtocol, int iSecTimeOut) | |
TcpMain (unsigned int uiPort, int iAdressFamily, int iSocketType, int iProtocol, unsigned int uiDataSize, int iSecTimeOut) | |
virtual | ~TcpMain () |
unsigned int | getDataSize () const |
SOCKET | getMainSocket () const |
unsigned int | getPortNum () const |
void | setTimeOutSec (int iSecTimeOut) |
int | TimeOutSec () |
Öffentliche Methoden geerbt von eut::RepeatingThread | |
RepeatingThread () | |
virtual | ~RepeatingThread () |
virtual void | finishBreak () |
int | getBreakCounter () |
bool | isInExclusiveAccess () const |
void | setExclusiveAccess () |
void | signalInput () |
virtual int | start () |
RepeatingThread::STATUS | status () const |
virtual void | takeABreak () |
bool | testCancel () |
void | unsetExclusiveAccess () |
void | waitForInput () |
Geschützte Methoden | |
Client () | |
Client (unsigned int, int, int, int, int) | |
Client (const std::string &, unsigned int, int, int, int, int) | |
Client (const std::string &, unsigned int, int, int, int, unsigned int, int) | |
Geschützte Methoden geerbt von tcp::Client | |
Client () | |
Client (unsigned int, int, int, int, int) | |
virtual ClientReceiver * | generateNewReceiver () |
virtual Transmitter * | generateNewTransmitter () |
virtual int | syncDataSize () |
virtual void | work () override |
Geschützte Methoden geerbt von tcp::TcpMain | |
TcpMain () | |
void | setWSACleanup () const |
int | startWinsock () const |
Geschützte Methoden geerbt von eut::RepeatingThread | |
ORDER | getOrder () |
STATUS | getStatus () |
void | setStatus (STATUS eStatus) |
void | threadWork () |
void | toOrder (ORDER eOrder) |
Private Methoden | |
Client (const Client &) | |
Client & | operator= (const Client &) |
Private Attribute | |
OrderMsg * | m_pCurrentOrder |
ClientThread * | m_pParentClientThread |
CallBack * | m_pWsaeConnResetGloServerCallBack |
Weitere Geerbte Elemente | |
Öffentliche Typen geerbt von eut::RepeatingThread | |
enum | EuTHREADERROR { EuTHREAD_ERR_NO_THREAD = -10301 , EuTHREAD_ERR_THREAD_ALREADY_WORKING = -10302 , EuTHREAD_ERR_THREAD_BREAK_COUNT_LESS_THAN_ZERO = -10303 , EuTHREAD_ERR_UNKNOWN = -10400 } |
Fehlerbereich = -10301 bis -10400 Mehr ... | |
enum | ORDER { eUNDEFINED , eDO_WORK , eEXIT } |
enum | STATUS { eAT_THE_START , eWORKING , ePAUSING , eENDING , eCOMPLETED } |
Öffentliche Attribute geerbt von eut::RepeatingThread | |
std::string | m_strDebugInfo |
Geschützte Attribute geerbt von tcp::Client | |
ClientReceiver * | m_pReceiver |
Transmitter * | m_pTransmitter |
Geschützte Attribute geerbt von tcp::TcpMain | |
int | m_iAdressFamily |
int | m_iProtocol |
int | m_iSecTimeOut |
int | m_iSocketType |
SOCKET | m_MainSocket |
unsigned int | m_uiDataSize |
unsigned int | m_uiServerPort |
Der Client, welcher mit einem GloServer kommuniziert.
|
protected |
Dieser Konstruktor steht nicht zur Verfügung.
|
protected |
Dieser Konstruktor steht nicht zur Verfügung.
|
protected |
Dieser Konstruktor steht nicht zur Verfügung.
|
protected |
Dieser Konstruktor steht nicht zur Verfügung.
glo::Client::Client | ( | ClientThread * | pParentClientThread, |
const std::string & | rstrHostname, | ||
unsigned int | uiPort, | ||
int | iAdressFamily, | ||
int | iSocketType, | ||
int | iProtocol, | ||
int | iSecTimeOut ) |
Der Konstruktor startet den Client, ist aber noch nicht mit dem Server aus rstrHostname verbunden.
[in] | pParentClientThread | Die Rückreferenz auf den instanziierenden ClientThread. |
[in] | rstrHostname | Der Hostname oder IP-Adresse (z.B. "LOCALHOST" oder "192.168.2.102"). |
[in] | uiPort | Der Port des Servers. |
[in] | iAdressFamily | Die Socket-AdressFamily um einen Socket zu instanziieren (i.d.R. AF_INET). |
[in] | iSocketType | Der Socket-Typ (i.d.R. SOCK_STREAM). |
[in] | iProtocol | Das Socket-Protokol (i.d.R. 0). |
[in] | iSecTimeOut | Die Zeit bis ein Warten auf eine Verbindung bzw. warten auf Daten abgebrochen wird. |
eut::ErrorNException | Bei einem Fehler wird eine Exception geworfen. |
|
virtual |
Destruktor.
Erneute Implementation von tcp::Client.
|
private |
Der Copy-Konstruktor steht nicht zur Verfügung.
|
virtual |
Es wird die Verbindung zu dem Server beendet.
Wenn ein evtl. ausstehender Auftrag vorhanden ist, wird dieser mit einer Fehlermeldung ERR_SERVER_CONNECTION_BROKEN an den m_pParentClientThread übermittelt.
Erneute Implementation von tcp::Client.
Der Zuweisungsoperator steht nicht zur Verfügung.
|
virtual |
Verarbeitet eine Nachricht vom Server. Wenn es eine Antwort auf einen Auftrag ist, wird der Auftrag um die Informationen vom Server erweitert. Wenn eine Information, wird ein Auftrag generiert. So oder so, der Auftrag wird an den m_pParentClientThread übermittelt.
[in] | pTcpMessage | Die zu verarbeitende Nachricht vom Server. |
eut::ErrorNException | Bei einem Fehler wird eine Exception geworfen. |
Erneute Implementation von tcp::Client.
int glo::Client::sendOrder | ( | OrderMsg * | pOrderMsg | ) |
Konvertiert den Auftrag in einen streambaren Puffer und sendet diesen an den Server.
[in] | pOrderMsg | Der zu versendende Auftrag. |
void glo::Client::setWsaeConnResetGloServerCallBack | ( | CallBack * | pCallBack | ) |
Setzt m_pWsaeConnResetGloServerCallBack.
[in] | pCallBack | Wenn ein gültiges Objekt, wird bei einem Verbindungsabbruch zum GloServer CallBack::notify(glo::NotifyNote&) mit entsprechender glo::NotifyNote aufgerufen. |
|
private |
|
private |
Der Client-Thread ist Elternobjekt (dieser instanziiert ein Objekt dieser Klasse) und muss im Zugriff sein wegen der Anworten des Servers.
|
private |
Wenn gesetzt, wird bei einem Verbindungsabbruch zum GloServer CallBack::notify(glo::NotifyNote&) mit entsprechender glo::NotifyNote aufgerufen.