Browse Source

Abstrakte NewsServerClient Klasse hinzugefügt

Kolja Strohm 6 years ago
parent
commit
8726e9650a
1 changed files with 26 additions and 1 deletions
  1. 26 1
      Include/KSGNetwork.h

+ 26 - 1
Include/KSGNetwork.h

@@ -213,7 +213,32 @@ namespace KSGClient
     // Wird verwendet um News Oberflächen abzufragen (KSG Script Seiten)
     class NewsServerClient
     {
-
+    public:
+        // verbindet ich mit dem News Server
+        //  Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
+        virtual bool verbinde() = 0;
+        // Lädt eine KSG-Script Seite herunter uns speichert sie unter data/tmp/news/{name}
+        //  name: Der Name der Seite
+        //  Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
+        virtual bool ladeSeite( char *name ) = 0;
+        // Erhält die Verbindung aufrecht
+        //  Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
+        //  Sollte während einer bestehenden Verbindung etwa einmal alle 60 Sekunden aufgerufen werden, da sonst der Router die Verbindung automatisch trennt
+        virtual bool keepAlive() = 0;
+        // Trennt die Verbindung zum Server
+        //  Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
+        //  Sollte erst nach einem erfolgreichen Aufruf von verbinde aufgerufen werden
+        virtual bool trenne() = 0;
+        // Gibt 1 zurück, falls der Client verbunden ist, 0 sonst
+        virtual bool istVerbunden() const = 0;
+        // gibt den Letzten Fehlertext zuück
+        //  sollte erst aufgerufen werden, nachdem eine andere aufgerufene Methode fehlgeschlagen ist
+        virtual char *getLetzterFehler() const = 0;
+        // Erhöht den Reference Counter um 1 un gibt this zurück
+        virtual NewsServerClient *getThis() = 0;
+        // Verringert den Reference Counter um 1 und gibt 0 zurück.
+        //  Falls der Reference Counter nach dem Aufruf auf 0 ist löscht sich das Objekt selbst 
+        virtual NewsServerClient *release() = 0;
     };
 
     // Wird benutzt, um Accounts zu erstellen zu ändern oder zu löschen