]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - Server/include/plaqui/server/httpresponse.h
Se mejora el manejo de errores. Ahora con el codigo de error va una descripcion
[z.facultad/75.42/plaqui.git] / Server / include / plaqui / server / httpresponse.h
index 462c0829c879a81ca95e503720bed9ec7353fd37..09ff21d02d7f5b849cb7aa2183e95a481934082e 100644 (file)
@@ -30,6 +30,7 @@
 
 #include "plaqui/server/httperror.h"
 #include "plaqui/server/httpmessage.h"
+#include <socket++/sockstream.h>
 #include <string>
 
 namespace PlaQui {
@@ -39,6 +40,7 @@ namespace Server {
        /// Respuesta HTTP.
        class HTTPResponse: public HTTPMessage {
 
+               /////////////////////////////////////////////////////////////////////
                // Tipos.
 
                public:
@@ -50,6 +52,7 @@ namespace Server {
                                MISSING_HTTP_RESPONSE_CODE
                        } Error;
 
+               /////////////////////////////////////////////////////////////////////
                // Atributos.
 
                //protected: FIXME - hacer privado con get/set?
@@ -61,6 +64,7 @@ namespace Server {
                        /// Descripción del código (razón).
                        std::string reason;
 
+               /////////////////////////////////////////////////////////////////////
                // Métodos.
 
                public:
@@ -73,7 +77,8 @@ namespace Server {
                        /**
                         * Constructor.
                         */
-                       HTTPResponse(const std::string& version = "1.1");
+                       HTTPResponse(const std::string& body = "",
+                                       const std::string& version = "1.1");
 
                        /**
                         * Constructor.
@@ -96,13 +101,14 @@ namespace Server {
                         * Obtiene los datos de la respuesta HTTP desde un texto.
                         */
                        friend std::istream& operator>>(std::istream& is,
-                                       HTTPResponse& resp) throw(Error, std::ios::failure);
+                                       HTTPResponse& resp)
+                               throw(Error, sockerr, std::ios::failure);
 
                        /**
                         * Convierte la respuesta HTTP en texto.
                         */
                        friend std::ostream& operator<<(std::ostream& os,
-                                       const HTTPResponse& resp);
+                                       const HTTPResponse& resp) throw(sockerr);
 
        };