X-Git-Url: https://git.teslayout.com/public/public/public/?a=blobdiff_plain;f=example%2Fhttp%2FxmlSender%2Fmain.cpp;h=2c924ac4c0778bdb75ebbc042794039969c28bfd;hb=5a6cba5fde2b2f538a7515f8293cc0a8d9589dfa;hp=46b5d3caab05bce934cc8eed9decabd4a6f7a4ed;hpb=39033fd99e58e994a5e98c1060dcc79e0d81f9c9;p=anna.git diff --git a/example/http/xmlSender/main.cpp b/example/http/xmlSender/main.cpp index 46b5d3c..2c924ac 100644 --- a/example/http/xmlSender/main.cpp +++ b/example/http/xmlSender/main.cpp @@ -1,37 +1,9 @@ -// ANNA - Anna is Not Nothingness Anymore -// -// (c) Copyright 2005-2014 Eduardo Ramos Testillano & Francisco Ruiz Rayo -// -// http://redmine.teslayout.com/projects/anna-suite -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following disclaimer -// in the documentation and/or other materials provided with the -// distribution. -// * Neither the name of the copyright holder nor the names of its -// contributors may be used to endorse or promote products derived from -// this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// Authors: eduardo.ramos.testillano@gmail.com -// cisco.tierra@gmail.com +// ANNA - Anna is Not Nothingness Anymore // +// // +// (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo // +// // +// See project site at http://redmine.teslayout.com/projects/anna-suite // +// See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE // /* @@ -66,8 +38,8 @@ public: private: http::Response a_httpResponse; - void evRequest (ClientSocket&, const http::Request&) throw (RuntimeException) {;} - void evResponse (ClientSocket&, const http::Response&) throw (RuntimeException); + void evRequest (ClientSocket&, const http::Request&) noexcept(false) {;} + void evResponse (ClientSocket&, const http::Response&) noexcept(false); }; class MyCommunicator : public Communicator { @@ -79,26 +51,28 @@ public: } private: + using Communicator::eventBreakConnection; + MyHandler a_httpHandler; http::Request a_httpRequest; - void eventReceiveMessage (ClientSocket &, const Message&) throw (RuntimeException); - void eventBreakConnection (Server* server) throw (); - void eventStartup () throw (RuntimeException); + void eventReceiveMessage (ClientSocket &, const Message&) noexcept(false); + void eventBreakConnection (Server* server) ; + void eventStartup () noexcept(false); }; class IHTTPClient : public anna::comm::Application { public: IHTTPClient (); - Server* getServer () const throw () { return a_server; } + Server* getServer () const { return a_server; } private: MyCommunicator a_communicator; Server* a_server; - void initialize () throw (RuntimeException); - void run () throw (RuntimeException); + void initialize () noexcept(false); + void run () noexcept(false); }; using namespace std; @@ -134,19 +108,19 @@ IHTTPClient::IHTTPClient () : CommandLine& commandLine (CommandLine::instantiate ()); commandLine.add ("p", CommandLine::Argument::Mandatory, "Puerto en el que el servidor atiende respuestas."); - commandLine.add ("a", CommandLine::Argument::Mandatory, "Direccin IP Puerto en el que el servidor atiende respuestas."); + commandLine.add ("a", CommandLine::Argument::Mandatory, "Direccion IP Puerto en el que el servidor atiende respuestas."); commandLine.add ("xml", CommandLine::Argument::Optional, "Documento XML que contiene la peticion"); commandLine.add ("nocheck", CommandLine::Argument::Optional, "Indicador para que no comprueba la validaded del HTML", false); commandLine.add ("version", CommandLine::Argument::Optional, "Indica la version HTTP usada para enviar"); commandLine.add ("uri", CommandLine::Argument::Optional, "URI a usar"); - commandLine.add ("m", CommandLine::Argument::Optional, "Método HTTP a usar"); + commandLine.add ("m", CommandLine::Argument::Optional, "Metodo HTTP a usar"); commandLine.add ("xmlresponse", CommandLine::Argument::Optional, "Visualiza la respuesta como un documento XML", false); - commandLine.add ("overquota", CommandLine::Argument::Optional, "Nº de bytes a recibir sin identificar el protocolo"); + commandLine.add ("overquota", CommandLine::Argument::Optional, "Numero de bytes a recibir sin identificar el protocolo"); commandLine.add ("c", CommandLine::Argument::Optional, "Valor de la cookie"); } void IHTTPClient::initialize () - throw (RuntimeException) + noexcept(false) { CommandLine& cl (CommandLine::instantiate ()); @@ -163,13 +137,13 @@ void IHTTPClient::initialize () } void IHTTPClient::run () - throw (RuntimeException) + noexcept(false) { a_communicator.accept (); } void MyCommunicator::eventStartup () - throw (RuntimeException) + noexcept(false) { CommandLine& cl (CommandLine::instantiate ()); @@ -213,7 +187,7 @@ void MyCommunicator::eventStartup () http::Method::Type::_v type = http::Method::Type::asEnum (cl.getValue ("m")); if (type == http::Method::Type::None) { - string msg ("Método HTTP no reconocido. "); + string msg ("Metodo HTTP no reconocido. "); msg += http::Method::Type::asList (); throw RuntimeException (msg, ANNA_FILE_LOCATION); } @@ -239,7 +213,7 @@ void MyCommunicator::eventStartup () } void MyCommunicator::eventReceiveMessage (ClientSocket& clientSocket, const Message& message) - throw (RuntimeException) + noexcept(false) { LOGMETHOD (TraceMethod tm ("MyCommunicator", "eventReceiveMessage", ANNA_FILE_LOCATION)); @@ -250,14 +224,14 @@ void MyCommunicator::eventReceiveMessage (ClientSocket& clientSocket, const Mess } void MyCommunicator::eventBreakConnection (Server* server) - throw () + { - cout << "Perdida conexión con " << server->asString () << endl; + cout << "Perdida conexion con " << server->asString () << endl; requestStop (); } void MyHandler::evResponse (ClientSocket& clientSocket, const http::Response& response) - throw (RuntimeException) + noexcept(false) { const DataBlock& body = response.getBody ();