X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/bcbe297964b0ad7393385f1dd240448c340ed5ed..0949257d7ae221c05b1bc35f7d05528f187cc42c:/Server/src/httprequest.cpp?ds=inline diff --git a/Server/src/httprequest.cpp b/Server/src/httprequest.cpp index d62b785..1da38a7 100644 --- a/Server/src/httprequest.cpp +++ b/Server/src/httprequest.cpp @@ -39,7 +39,8 @@ namespace Server { HTTPRequest::~HTTPRequest(void) { #ifdef DEBUG - cerr << __FILE__ << ": destructor." << endl; + cerr << __FILE__ << "(" << __LINE__ << ")" + << ": destructor." << endl; #endif // DEBUG } @@ -47,7 +48,8 @@ HTTPRequest::HTTPRequest(const string& uri, const HTTPMethod& method, const string& query, const string& body, const string& version): HTTPMessage(body, version), method(method), uri(uri), query(query) { #ifdef DEBUG - cerr << __FILE__ << ": uri = " << uri << " | " + cerr << __FILE__ << "(" << __LINE__ << ")" + << ": uri = " << uri << " | " << "method = " << method_str() << " | " << "query = " << query << " | " << "body.length = " << body.length() << " | " @@ -66,18 +68,20 @@ string HTTPRequest::method_str(void) const { } istream& operator>>(istream& is, HTTPRequest& req) - throw(HTTPError, ios::failure) { + throw(HTTPError, sockerr, ios::failure) { #ifdef DEBUG - cerr << __FILE__ << ": operator>>()" << endl; + cerr << __FILE__ << "(" << __LINE__ << ")" + << ": operator>>()" << endl; #endif // DEBUG char buf[BUFSIZ]; // Obtengo primera línea (request) if (!is.getline(buf, BUFSIZ)) { - // No hay más líneas. - throw ios::failure("socket closed"); + // Fin de archivo. + throw ios::failure("eof"); } #ifdef DEBUG - cerr << __FILE__ << ":\tRecibiendo linea: " << buf << endl; + cerr << __FILE__ << "(" << __LINE__ << ")" + << ":\tRecibiendo linea: " << buf << endl; #endif // DEBUG String line(buf); // Si es la primera línea, es el request. @@ -144,9 +148,10 @@ istream& operator>>(istream& is, HTTPRequest& req) return is; } -ostream& operator<<(ostream& os, const HTTPRequest& req) { +ostream& operator<<(ostream& os, const HTTPRequest& req) throw(sockerr) { #ifdef DEBUG - cerr << __FILE__ << ": operator<<()" << endl; + cerr << __FILE__ << "(" << __LINE__ << ")" + << ": operator<<()" << endl; #endif // DEBUG os << req.method_str() << " " << req.uri; if (req.query.length()) {