1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- #ifndef NewsServer_H
- #define NewsServer_H
- #include <Server.h>
- #include <Thread.h>
- #include <Datei.h>
- #include <Text.h>
- #include <InitDatei.h>
- #include "Datenbank.h"
- using namespace Framework;
- using namespace Network;
- class NSKlient;
- class NewsServer : public Thread
- {
- private:
- Server *server;
- SSLServer *aServer;
- InitDatei *ini;
- NSDatenbank *db;
- CRITICAL_SECTION cs;
- RCArray< NSKlient > *klients;
- Text *fehler;
- int id;
- bool nichtPausiert;
- int empfangen;
- int gesendet;
- bool end;
- public:
- // Konstruktor
- NewsServer( InitDatei *zIni );
- // Destruktor
- virtual ~NewsServer();
- // nicht constant
- void runn();
- void thread();
- void close();
- bool serverStarten();
- bool serverPause();
- bool serverFortsetzen();
- bool serverBeenden();
- bool setMaxKlients( int mc );
- bool absturzKlient( int klientId );
- bool removeKlient( NSKlient *zKlient );
- void addGesendet( int bytes );
- void addEmpfangen( int bytes );
- // conatant
- bool istAn() const;
- Server *zServer() const;
- NSDatenbank *zDB() const;
- bool hatClients() const;
- int getId() const;
- char *getLetzterFehler() const;
- };
- class NSAKlient : public Thread
- {
- private:
- SSLSKlient *klient;
- Text *name;
- Text *passwort;
- int adminId;
- NewsServer *ns;
- public:
- // Konstruktor
- NSAKlient( SSLSKlient *klient, NewsServer *ns );
- // Destruktor
- virtual ~NSAKlient();
- // nicht constant
- void thread();
- void errorZuKlient( const char *nachricht ) const; // sendet eine Fehlernachricht zum AKlient
- };
- class NSKlient : public Thread
- {
- private:
- SKlient *klient;
- unsigned int klientNummer;
- NewsServer *ns;
- public:
- // Konstruktor
- NSKlient( SKlient *klient, NewsServer *ns );
- // Destruktor
- virtual ~NSKlient();
- // nicht constant
- void absturz();
- void thread();
- // constant
- void errorZuKlient( const char *nachricht ) const; // sendet eine Fehlernachricht zum Klient
- int getKlientNummer() const;
- };
- #endif
|