libt2n: (gerd) fix client-connection-logic, finish wrappers, all tests are working...
[libt2n] / src / command_client.hxx
index 035e270..841609c 100644 (file)
@@ -28,12 +28,12 @@ namespace libt2n
 /// a client sending out commands to a server
 class command_client
 {
-    protected:
+    public:
         static const long long command_timeout_usec_default=90000000;
         static const long long hello_timeout_usec_default=30000000;
 
     private:
-        client_connection &c;
+        client_connection *c;
 
         long long hello_timeout_usec;
         long long command_timeout_usec;
@@ -43,12 +43,23 @@ class command_client
         bool check_hello(const std::string& hellostr);
 
     public:
-        command_client(client_connection& _c,
+        command_client(client_connection* _c,
             long long _command_timeout_usec=command_timeout_usec_default,
             long long _hello_timeout_usec=hello_timeout_usec_default);
         virtual ~command_client() {}
 
+        void replace_connection(client_connection* _c);
+
         void send_command(command* cmd, result_container &res);
+
+        void set_command_timeout_usec(long long _command_timeout_usec=command_timeout_usec_default)
+            { command_timeout_usec=_command_timeout_usec; }
+        void set_hello_timeout_usec(long long _hello_timeout_usec=hello_timeout_usec_default)
+            { hello_timeout_usec=_hello_timeout_usec; }
+        long long get_command_timeout_usec(void)
+            { return command_timeout_usec; }
+        long long get_hello_timeout_usec(void)
+            { return hello_timeout_usec; }
 };
 
 }