GlobalObjects
Lade ...
Suche ...
Keine Treffer
glo::ServerThread Klassenreferenz

Ein Objekt dieser Klasse dient als Schnittstelle zwischen Manager und Base bzw. PrivateBase. Mehr ...

#include <GloServerThread.h>

Klassendiagramm für glo::ServerThread:

Öffentliche Methoden

 ServerThread (Server::TcpServerReceiverTransmitter *pTcpServerReceiverTransmitter)
 
 ~ServerThread ()
 
virtual int assignDBManager (OrderMsg *pOrderMsg) override
 
ManagerDBManager ()
 
Server::TcpServerReceiverTransmittergetTcpServerReceiverTransmitter ()
 
virtual int takeOverResult (OrderMsg *pOrderMsg) override
 
bool operator== (const ServerThread &rT) const
 
bool operator!= (const ServerThread &rT) const
 
- Öffentliche Methoden geerbt von glo::Communicator
 Communicator ()
 
virtual ~Communicator ()
 
std::string getClientName () const
 
const std::string & getClientNameAsRef ()
 
unsigned int getCommunicatorID () const
 
virtual void setClientName (const std::string &rstrClientName)
 
virtual void setCommunicatorID (unsigned int uiID)
 
bool operator== (const Communicator &rT) const
 
bool operator!= (const Communicator &rT) const
 
- Öffentliche Methoden geerbt von eut::RepeatingThread
 RepeatingThread ()
 
virtual ~RepeatingThread ()
 
virtual void cancel ()
 
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

virtual void processServerMsg (OrderMsg *pOrderMsg) const override
 
virtual int sendToDBManager (OrderMsg *pOrderMsg) const override
 
- Geschützte Methoden geerbt von glo::Communicator
virtual void work () override
 
- Geschützte Methoden geerbt von eut::RepeatingThread
ORDER getOrder ()
 
STATUS getStatus ()
 
void setStatus (STATUS eStatus)
 
void threadWork ()
 
void toOrder (ORDER eOrder)
 

Private Methoden

 ServerThread ()
 
 ServerThread (const ServerThread &)
 
ServerThreadoperator= (ServerThread &)
 

Private Attribute

Managerm_pDBManager
 
Server::TcpServerReceiverTransmitterm_pTcpServerReceiverTransmitter
 

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 glo::Communicator
unsigned int m_uiOrderCounter
 

Ausführliche Beschreibung

Ein Objekt dieser Klasse dient als Schnittstelle zwischen Manager und Base bzw. PrivateBase.

Sendet Informationen des Manager an verbundne Clients.

Gegenstelle ist über die TCP-Kommunikatoren der ClientThread.

Siehe auch
ClientThread
Autor
Helmut Jakoby

Beschreibung der Konstruktoren und Destruktoren

◆ ServerThread() [1/3]

glo::ServerThread::ServerThread ( )
private

Der Standard-Konstruktor steht nicht zur Verfügung.

◆ ServerThread() [2/3]

glo::ServerThread::ServerThread ( Server::TcpServerReceiverTransmitter * pTcpServerReceiverTransmitter)

Konstruktor mit Parameterübergabe.

Parameter
[in]pTcpServerReceiverTransmitterWird benötigt, weil über diesen die TCP-Kommunikation abgewickelt wird.
Achtung
Die Verantwortung über den Server::TcpServerReceiverTransmitter verbleibt bei der aufrufenden Instanz. Objekte dieser Klasse entfernen pTcpServerReceiverTransmitter nicht aus dem Speicher.
Ausnahmebehandlung
eut::ErrorNExceptionBei einem Fehler wird eine Exception geworfen.

◆ ~ServerThread()

glo::ServerThread::~ServerThread ( )

Destruktor.

◆ ServerThread() [3/3]

glo::ServerThread::ServerThread ( const ServerThread & )
private

Der Copy-Konstruktor steht niccht zur Verfügung.

Dokumentation der Elementfunktionen

◆ assignDBManager()

virtual int glo::ServerThread::assignDBManager ( OrderMsg * pOrderMsg)
overridevirtual

Versendet einen Auftrag an den Manager und wartet auf Antwort.

Parameter
[in]pOrderMsgDer Auftrag für den Manager.
Rückgabe
Ein Rückgabewert < 0 zeigt einen Fehler an.

Erneute Implementation von glo::Communicator.

◆ DBManager()

Manager * glo::ServerThread::DBManager ( )

Liefert Zeiger auf seinen Manager.

Achtung
Die aufrufende Instanz darf das gelieferte Objekt nicht aus dem Speicher entfernen.

◆ getTcpServerReceiverTransmitter()

Server::TcpServerReceiverTransmitter * glo::ServerThread::getTcpServerReceiverTransmitter ( )

Liefert Zeiger auf seinen TcpServerReceiverTransmitter, welcher die Pakete empfängt bzw. versendet.

Achtung
Die aufrufende Instanz darf das gelieferte Objekt nicht aus dem Speicher entfernen.

◆ operator!=()

bool glo::ServerThread::operator!= ( const ServerThread & rT) const

Vergleichsoperator.

Parameter
[in]rTDas mit diesem zu vergleichende Objekt.

◆ operator=()

ServerThread & glo::ServerThread::operator= ( ServerThread & )
private

Der Zuweisungsoperator steht nicht zur Verfügung.

◆ operator==()

bool glo::ServerThread::operator== ( const ServerThread & rT) const

Vergleichsoperator.

Parameter
[in]rTDas mit diesem zu vergleichende Objekt.

◆ processServerMsg()

virtual void glo::ServerThread::processServerMsg ( OrderMsg * pOrderMsg) const
overrideprotectedvirtual

Verarbeitet einen Auftrag, z.B. vom Manager oder einen Auftrag zum übermitteln einer Informationen von überwachten Objekten indem der Auftrag bzw. die Information über TcpServerReceiverTransmitter an den Client versendet wird

Parameter
[in]pOrderMsgDer zu versendende Auftrag.
Zu beachten
Es wird nicht die gleiche Methode der Oberklasse aufgerufen.

Erneute Implementation von glo::Communicator.

◆ sendToDBManager()

virtual int glo::ServerThread::sendToDBManager ( OrderMsg * pOrderMsg) const
overrideprotectedvirtual

Übergibt einen Auftrag direkt an den Manager.

Parameter
[in]pOrderMsgDer Auftrag für den Manager.
Rückgabe
Ein Rückgabewert < 0 zeigt einen Fehler an.

Implementiert glo::Communicator.

◆ takeOverResult()

virtual int glo::ServerThread::takeOverResult ( OrderMsg * pOrderMsg)
overridevirtual

Übernimmt eine Nachricht in seine Nachrichten-Queue um diese zu verarbeiten.

Parameter
[in]pOrderMsgDie abzuarbeitende Nachricht.
Rückgabe
Ein Rückgabewert < 0 zeigt einen Fehler an.

Erneute Implementation von glo::Communicator.

Dokumentation der Datenelemente

◆ m_pDBManager

Manager* glo::ServerThread::m_pDBManager
private

Der Zeiger auf den Manager.

◆ m_pTcpServerReceiverTransmitter

Server::TcpServerReceiverTransmitter* glo::ServerThread::m_pTcpServerReceiverTransmitter
private

Der TcpServerReceiverTransmitter, welcher die Pakete empfängt bzw. versendet.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei: