#ifndef Datenbank_H #define Datenbank_H #include #include #include using namespace Framework; using namespace sql; namespace Admin_Recht { const int PSStarten = 3; const int PSBeenden = 4; const int PSPausieren = 5; const int PSMCChange = 6; const int KSGCUpdate = 7; } class PSDatenbank { private: Datenbank *datenbank; CRITICAL_SECTION cs; int ref; public: // Konstruktor PSDatenbank( InitDatei *zIni ); // Destruktor ~PSDatenbank(); // nicht constant void lock(); void unlock(); int istAdministrator( const char *name, const char *passwort ); bool adminHatRecht( int id, int recht ); bool proveKlient( int num, int sNum ); Text *getKlientKey( int cId ); void unregisterKlient( int num, int sNum ); bool setServerStatus( int id, int status ); bool setMaxClients( int id, int maxC ); bool serverIstNichtPausiert( int id ); Result getSystemListe(); Result getDateiListe( int system, int gruppe ); Result getDateiListeOhneOrdner( int system, int gruppe ); Result getDeletedFiles( int system, int gruppe ); Text *getSystemName( int system ); Text *getDateiGruppeName( int gruppe ); bool supportedDateiGruppe( int server, int gruppe ); bool istDateigruppeStatusUpdate( int server, int gruppe ); bool setDateiGruppe( int server, int gruppe, int version ); bool setDateiGruppe( int server, int gruppe, bool update ); bool dateiGruppeUpdateFertig( int server, int gruppe ); int getDateiGruppePatchServer( int client, int gruppe ); bool getPatchServerPortIp( int server, int *port, Text *zIp ); Result getGruppeIds(); Result getDateiGruppeListe(); int getDateiGruppeVersion( int gruppe ); // constant Text *getLetzterFehler() const; // Reference Counting PSDatenbank *getThis(); PSDatenbank *release(); }; #endif