]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - Server/include/plaqui/server/server.h
- Se agrega la posibilidad de pausar una planta.
[z.facultad/75.42/plaqui.git] / Server / include / plaqui / server / server.h
index 21a1958e798dd6dc6973d8c65bd28e801059a6b5..611ac232c54401cf6522d9c332cb853d0ee0ad1f 100644 (file)
@@ -47,6 +47,7 @@ namespace Server {
         */
        class Server: public TCPServer {
 
         */
        class Server: public TCPServer {
 
+               /////////////////////////////////////////////////////////////////////
                // Tipos.
 
                private:
                // Tipos.
 
                private:
@@ -54,6 +55,7 @@ namespace Server {
                        /// Lista de plantas químicas.
                        typedef std::map<std::string, Plant*> PlantList;
 
                        /// Lista de plantas químicas.
                        typedef std::map<std::string, Plant*> PlantList;
 
+               /////////////////////////////////////////////////////////////////////
                // Atributos.
 
                private:
                // Atributos.
 
                private:
@@ -64,6 +66,7 @@ namespace Server {
                        /// Mutex para las plantas.
                        Glib::Mutex plants_mutex;
 
                        /// Mutex para las plantas.
                        Glib::Mutex plants_mutex;
 
+               /////////////////////////////////////////////////////////////////////
                // Métodos.
 
                protected:
                // Métodos.
 
                protected:
@@ -117,11 +120,31 @@ namespace Server {
                         */
                        HTTPResponse* cmd_plant_get(const Command& command);
 
                         */
                        HTTPResponse* cmd_plant_get(const Command& command);
 
+                       /**
+                        * Maneja el comando plant/set.
+                        */
+                       HTTPResponse* cmd_plant_set(const Command& command);
+
+                       /**
+                        * Maneja el comando plant/set_frequency.
+                        */
+                       HTTPResponse* cmd_plant_set_frequency(const Command& command);
+
+                       /**
+                        * Maneja el comando plant/start.
+                        */
+                       HTTPResponse* cmd_plant_start(const Command& command);
+
                        /**
                         * Maneja el comando plant/stop.
                         */
                        HTTPResponse* cmd_plant_stop(const Command& command);
 
                        /**
                         * Maneja el comando plant/stop.
                         */
                        HTTPResponse* cmd_plant_stop(const Command& command);
 
+                       /**
+                        * Maneja el comando plant/remove.
+                        */
+                       HTTPResponse* cmd_plant_remove(const Command& command);
+
                public:
 
                        /**
                public:
 
                        /**
@@ -132,10 +155,11 @@ namespace Server {
                        /**
                         * Constructor.
                         *
                        /**
                         * Constructor.
                         *
-                        * \param port Puerto en el cual escuchar.
+                        * \param plant_filename Nombre del archivo con la planta a cargar.
+                        * \param port           Puerto en el cual escuchar.
                         */
                        Server(const std::string& plant_filename,
                         */
                        Server(const std::string& plant_filename,
-                                       const Connection::Port& port = 7522);
+                                       const Connection::Port& port = 7522) throw(sockerr);
 
                        /**
                         * Maneja los comandos recibidos por las conexiones.
 
                        /**
                         * Maneja los comandos recibidos por las conexiones.
@@ -146,17 +170,10 @@ namespace Server {
                        /**
                         * Se encarga de borrar una planta de la lista cuando finaliza.
                         *
                        /**
                         * Se encarga de borrar una planta de la lista cuando finaliza.
                         *
-                        * \param connection Conexión a eliminar.
+                        * \param plant Nombre de la planta a elminar.
                         */
                        void on_plant_finished(const char* plant);
 
                         */
                        void on_plant_finished(const char* plant);
 
-                       /**
-                        * Envia el estado de una planta cuando esta se actualiza.
-                        *
-                        * \param plant Planta actualizada.
-                        */
-                       void on_plant_updated(const Plant* const);
-
        };
 
 }
        };
 
 }