]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - Server/src/controlserver.cpp
Se agregan un par de mutex porque el server se muere con segmentation fault
[z.facultad/75.42/plaqui.git] / Server / src / controlserver.cpp
index 8789af1df4649630dad67e9db431c9d75266321d..0587bc17f052d0d69e9cfdaf79b1aae9b108ce4a 100644 (file)
 #include "plaqui/server/request.h"
 #include <cstring>
 #include <sstream>
 #include "plaqui/server/request.h"
 #include <cstring>
 #include <sstream>
+#ifdef DEBUG
+#      include <iostream>
+#endif // DEBUG
 
 
-using namespace PlaQui::Server;
+PlaQui::Server::ControlServer::~ControlServer(void) {
+#ifdef DEBUG
+       std::cerr << __FILE__ << ": destructor." << std::endl;
+#endif // DEBUG
+}
 
 
-ControlServer::ControlServer(const sockbuf::sockdesc& sd):
-               Connection(sd) {
+PlaQui::Server::ControlServer::ControlServer(const sockbuf::sockdesc& sd):
+               ServerConnection(sd) {
 #ifdef DEBUG
 #ifdef DEBUG
-       std::cerr << "Compilado el " << __DATE__ << std::endl;
        std::cerr << __FILE__ << ": sd = " << sd.sock << std::endl;
 #endif // DEBUG
 }
 
        std::cerr << __FILE__ << ": sd = " << sd.sock << std::endl;
 #endif // DEBUG
 }
 
-void ControlServer::real_run(void) {
+void PlaQui::Server::ControlServer::real_run(void) {
        // FIXME se tiene que ir a la clase para poder frenarlo desde afuera.
        bool stop = false;
        char buf[BUFFER_SIZE];
        // FIXME se tiene que ir a la clase para poder frenarlo desde afuera.
        bool stop = false;
        char buf[BUFFER_SIZE];
@@ -50,7 +56,7 @@ void ControlServer::real_run(void) {
                bool is_first = true;
                while (!stop && socket.getline(buf, BUFFER_SIZE)) {
 #ifdef DEBUG
                bool is_first = true;
                while (!stop && socket.getline(buf, BUFFER_SIZE)) {
 #ifdef DEBUG
-                       std::cerr << "Reciviendo linea: " << buf << std::endl;
+                       std::cerr << "Recibiendo linea: " << buf << std::endl;
 #endif // DEBUG
                        int len = strlen(buf);
                        // Si tiene un retorno de carro, lo elimina.
 #endif // DEBUG
                        int len = strlen(buf);
                        // Si tiene un retorno de carro, lo elimina.
@@ -78,7 +84,8 @@ void ControlServer::real_run(void) {
                                // Si es la primera, no pasa nada, sigue esperando un request.
                        }
                }
                                // Si es la primera, no pasa nada, sigue esperando un request.
                        }
                }
-               // Manda mensaje a la planta.
+               // TODO: Manda mensaje a la planta.
+               //signal_command_received().emit(request);
                //dispatch_command(parse_command(sstr.str()));
 #ifdef DEBUG
                std::cerr << "Request: " << std::endl;
                //dispatch_command(parse_command(sstr.str()));
 #ifdef DEBUG
                std::cerr << "Request: " << std::endl;