-// 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 //
#ifndef anna_comm_Network_hpp
@return La instancia del dispositivo que coincide con la direccion IP recibida como parametro.
*/
- Device* find(const in_addr_t& address) throw();
+ Device* find(const in_addr_t& address) ;
/**
Devuelve un iterador al comienzo de la lista de dispositivos de red.
\return un iterador al comienzo de la lista de dispositivos de red.
*/
- const_device_iterator device_begin() const throw() { return a_devices.begin(); }
+ const_device_iterator device_begin() const { return a_devices.begin(); }
/**
Devuelve un iterador al final de la lista de dispositivos de red.
\return un iterador al final de la lista de dispositivos de red.
*/
- const_device_iterator device_end() const throw() { return a_devices.end(); }
+ const_device_iterator device_end() const { return a_devices.end(); }
/**
Devuelve un puntero al elemento sobre el que se encuentra el iterador pasado como
\return un puntero al elemento sobre el que se encuentra el iterador pasado como
parametro.
*/
- static const Device* device(const_device_iterator ii) throw() { return *ii; }
+ static const Device* device(const_device_iterator ii) { return *ii; }
/**
Devuelve un iterador al comienzo de la lista de dispositivos de red.
\return un iterador al comienzo de la lista de dispositivos de red.
*/
- device_iterator device_begin() throw() { return a_devices.begin(); }
+ device_iterator device_begin() { return a_devices.begin(); }
/**
Devuelve un iterador al final de la lista de dispositivos de red.
\return un iterador al final de la lista de dispositivos de red.
*/
- device_iterator device_end() throw() { return a_devices.end(); }
+ device_iterator device_end() { return a_devices.end(); }
/**
Devuelve un puntero al elemento sobre el que se encuentra el iterador pasado como
\return un puntero al elemento sobre el que se encuentra el iterador pasado como
parametro.
*/
- static Device* device(device_iterator ii) throw() { return *ii; }
+ static Device* device(device_iterator ii) { return *ii; }
/**
Realiza una busqueda secuencial entre todas las maquinas y devuelve la instancia de la
@return La instancia de la maquina asociada al nombre recibido.
*/
- Host* find_host(const char* name) throw();
+ Host* find_host(const char* name) ;
/**
Realiza una busqueda secuencial entre todas las maquinas y devuelve la instancia de la
@return La instancia de la maquina asociada al nombre recibido.
*/
- Host* find_host(const std::string& name) throw() { return find_host(name.c_str()); }
+ Host* find_host(const std::string& name) { return find_host(name.c_str()); }
/**
* Resuelve el nombre de la maquina recibido como parametro y devuelve la instancia
*
* \see man gethostbyname.
*/
- Host* resolve(const char* hostname) throw(RuntimeException);
+ Host* resolve(const char* hostname) noexcept(false);
/**
* Resuelve el nombre de la maquina recibido como parametro y devuelve la instancia
*
* \see man gethostbyname.
*/
- Host* resolve(const std::string& hostname) throw(RuntimeException) { return resolve(hostname.c_str()); }
+ Host* resolve(const std::string& hostname) noexcept(false) { return resolve(hostname.c_str()); }
/**
Devuelve un iterador al comienzo de la lista de maquinas no modificables.
\return Un iterador al comienzo de la lista de maquinas no modificables.
*/
- const_host_iterator host_begin() const throw() { return a_hosts.begin(); }
+ const_host_iterator host_begin() const { return a_hosts.begin(); }
/**
Devuelve un iterador al final de la lista de maquinas no modificables.
\return Un iterador al final de la lista de maquinas no modificables.
*/
- const_host_iterator host_end() const throw() { return a_hosts.end(); }
+ const_host_iterator host_end() const { return a_hosts.end(); }
/**
Devuelve un puntero al elemento sobre el que se encuentra el iterador pasado como
\return un puntero al elemento sobre el que se encuentra el iterador pasado como
parametro.
*/
- static const Host* host(const_host_iterator ii) throw() { return *ii; }
+ static const Host* host(const_host_iterator ii) { return *ii; }
/**
Devuelve un iterador al comienzo de la lista de maquinas no modificables.
\return Un iterador al comienzo de la lista de maquinas no modificables.
*/
- host_iterator host_begin() throw() { return a_hosts.begin(); }
+ host_iterator host_begin() { return a_hosts.begin(); }
/**
Devuelve un iterador al final de la lista de maquinas no modificables.
\return Un iterador al final de la lista de maquinas no modificables.
*/
- host_iterator host_end() throw() { return a_hosts.end(); }
+ host_iterator host_end() { return a_hosts.end(); }
/**
Devuelve un puntero al elemento sobre el que se encuentra el iterador pasado como
\return un puntero al elemento sobre el que se encuentra el iterador pasado como
parametro.
*/
- static Host* host(host_iterator ii) throw() { return *ii; }
+ static Host* host(host_iterator ii) { return *ii; }
/**
Crea la instancia de un anna::comm::Server disponible para conectar con la
\warning Con modo de puerto unico, si ya existe un proceso definido sobre esa misma IP:port retorna la misma instancia.
*/
Server* createServer(const char* ip, const int remotePort, const bool autoRecovery, TransportFactory* transportFactory = NULL, const Port::_v mode = Port::Multiple, const DoConnect::_v doConnect = DoConnect::Yes)
- throw(RuntimeException);
+ noexcept(false);
/**
Crea la instancia de un anna::comm::Server disponible para conectar con la
\warning Con modo de puerto unico, si ya existe un proceso definido sobre esa misma IP:port retorna la misma instancia.
*/
Server* createServer(const char* ip, const int remotePort, const bool autoRecovery, ReceiverFactory& receiverFactory, TransportFactory* transportFactory = NULL, const Port::_v mode = Port::Multiple, const DoConnect::_v doConnect = DoConnect::Yes)
- throw(RuntimeException);
+ noexcept(false);
// /**
// Devuelve la instancia del anna::comm::Server asociado a la IP y puerto recibidos.
// \return La instancia de comm::Server asociado al IP y puerto recibido.
// \warning El anna::comm::Server devuelto puede ser NULL.
// */
-// Server* findServer (const char* ip, const int remotePort) throw (RuntimeException);
+// Server* findServer (const char* ip, const int remotePort) noexcept(false);
/**
Crea la instancia de un anna::comm::Server disponible para conectar con la
\warning Con modo de puerto unico, si ya existe un proceso definido sobre esa misma IP:port retorna la misma instancia.
*/
Server* resolveServer(const char* hostname, const int remotePort, const bool autoRecovery, TransportFactory* transportFactory = NULL, const Port::_v mode = Port::Multiple, const DoConnect::_v doConnect = DoConnect::Yes)
- throw(RuntimeException);
+ noexcept(false);
/**
Crea la instancia de un anna::comm::Server disponible para conectar con la
\warning Con modo de puerto unico, si ya existe un proceso definido sobre esa misma IP:port retorna la misma instancia.
*/
Server* resolveServer(const char* hostname, const int remotePort, const bool autoRecovery, ReceiverFactory& receiverFactory, TransportFactory* transportFactory = NULL, const Port::_v mode = Port::Multiple, const DoConnect::_v doConnect = DoConnect::Yes)
- throw(RuntimeException);
+ noexcept(false);
/**
* \param port Puerto de la dirección de red.
* \return la INetAddress correspondiente a la IP y puerto recibidos como parámetro.
*/
- INetAddress getINetAddress(const char* ip, const int port) throw(RuntimeException);
+ INetAddress getINetAddress(const char* ip, const int port) noexcept(false);
/**
* Obtiene la INetAddress correspondiente a la IP y puerto recibidos como parámetro.
* \param port Puerto de la dirección de red.
* \return la INetAddress correspondiente a la IP y puerto recibidos como parámetro.
*/
- INetAddress getINetAddress(const std::string& ip, const int port) throw(RuntimeException);
+ INetAddress getINetAddress(const std::string& ip, const int port) noexcept(false);
/**
\param parent Nodo XML del que dependende la informacion.
@return Una cadena con la informacin referente a esta instancia.
*/
- xml::Node* asXML(xml::Node* parent) const throw();
+ xml::Node* asXML(xml::Node* parent) const ;
private:
host_container a_hosts;