X-Git-Url: https://git.teslayout.com/public/public/public/?p=anna.git;a=blobdiff_plain;f=include%2Fanna%2Fldap%2FSession.hpp;fp=include%2Fanna%2Fldap%2FSession.hpp;h=fc8090fbf469e37eef8c34315a9280c2d79302fe;hp=a84b5be1b10544e9334f5fa1162bb5ed67f465e5;hb=5a6cba5fde2b2f538a7515f8293cc0a8d9589dfa;hpb=af9c86ffb0e28d35ad94d99c5f77e41578c972b4 diff --git a/include/anna/ldap/Session.hpp b/include/anna/ldap/Session.hpp index a84b5be..fc8090f 100644 --- a/include/anna/ldap/Session.hpp +++ b/include/anna/ldap/Session.hpp @@ -83,49 +83,49 @@ public: Devuelve la direccion del servidor LDAP. Coincidira con la indicada en ldap::Engine::createSession. \return La direccion del servidor LDAP. Coincidira con la indicada en ldap::Engine::createSession. */ - const std::string& getURL() const throw() { return a_url; } + const std::string& getURL() const { return a_url; } /** Devuelve el usuario de esta sesion. Coincidira con la indicada en ldap::Engine::createSession. \return El usuario de esta sesion. Coincidira con la indicada en ldap::Engine::createSession. */ - const std::string& getUser() const throw() { return a_user; } + const std::string& getUser() const { return a_user; } /** Devuelve el password de esta sesion. Coincidira con la indicada en ldap::Engine::createSession. \return El password de esta sesion. Coincidira con la indicada en ldap::Engine::createSession. */ - const std::string& getPassword() const throw() { return a_password; } + const std::string& getPassword() const { return a_password; } /** Devuelve la categoria de esta sesion. Coincidira con la indicada en ldap::Engine::createSession. \return La categoria de esta sesion. Coincidira con la indicada en ldap::Engine::createSession. */ - int getCategory() const throw() { return a_category; } + int getCategory() const { return a_category; } /** * Devuelve la clave externa con la que fué creada esta sesión. */ - int getExternalID() const throw() { return a_externalID; } + int getExternalID() const { return a_externalID; } /** Devuelve el manejador usado para conectar con el servidor LDAP. \warning Exclusivamente uso interno. */ - void* getLDAP() throw() { return a_ldap; } + void* getLDAP() { return a_ldap; } /** * Devuelve el fd asociado a esta sesión de LDAP. * \return el fd asociado a esta sesión de LDAP. * \warning Las operaciones sobre este fd podrían influir negativamente en el sistema. */ - int getDangerousFileDescriptor() const throw(RuntimeException); + int getDangerousFileDescriptor() const noexcept(false); /** Devuelve el modo de interpretar las referencias establecido en esta sesion. \return El modo de interpretar las referencias establecido en esta sesion. */ - Option::Defer::_v getDefer() const throw() { return a_defer; } + Option::Defer::_v getDefer() const { return a_defer; } /** Devuelve \em true si la biblioteca LDAP realiza de forma automatica el siguimiento de las referencias @@ -133,26 +133,26 @@ public: \return \em true si la biblioteca LDAP realiza de forma automatica el siguimiento de las referencias retornadas por los servidores LDAP o \em false en otro caso. */ - Option::Referral::_v getReferral() const throw() { return a_referral; } + Option::Referral::_v getReferral() const { return a_referral; } /** Devuelve el estado de esta sesion. \return El estado de esta sesion. */ - State::_v getState() const throw() { return a_state; } + State::_v getState() const { return a_state; } /** * Devuelve el periodo de espera establecido para las peticiones del tipo \em v. * \return el periodo de espera establecido para las peticiones del tipo \em v. */ - const Millisecond &getTimeout(const ClassCode::_v v) const throw() { return a_timeouts [v]; } + const Millisecond &getTimeout(const ClassCode::_v v) const { return a_timeouts [v]; } /** * Devuelve el valor establecido en #setNetworkTimeout * \return Los miligundos establecidos por #setNetworkTimeout. * \warning El valor retornado sólo tendrá valided si #hasNetworkTimeout devolvió \em true. */ - Millisecond getNetworkTimeout() const throw() { + Millisecond getNetworkTimeout() const { Millisecond result(1000 * a_networkTimeout.tv_sec); return Millisecond(result + a_networkTimeout.tv_usec / 1000); } @@ -161,7 +161,7 @@ public: * Devuelve \em true si se estableció el tiempo de espera de conexión o \em false en otro caso. * \return \em true si se estableció el tiempo de espera de conexión o \em false en otro caso. */ - bool hasNetworkTimeout() const throw() { return a_networkTimeout.tv_sec != -1; } + bool hasNetworkTimeout() const { return a_networkTimeout.tv_sec != -1; } /** Solicita la conexion al servidor asociado a esta sesion. @@ -169,25 +169,25 @@ public: \warning Solo deberia invocarse directamente este metodo en caso de que el #eventResponse notifique no ha sido posible contactar con el servidor indicado. */ - void bind() throw(RuntimeException); + void bind() noexcept(false); /** Devuelve \em true si la sesion esta conectada al servidor LDAP o \em false en otro caso. \return \em true si la sesion esta conectada al servidor LDAP o \em false en otro caso. */ - bool isBound() const throw() { return a_state == State::Bound; } + bool isBound() const { return a_state == State::Bound; } /** Establece el modo de interpretar las referencias. \param defer Indica el modo de interpretar las referencias. */ - void setOption(const Option::Defer::_v defer) throw() { a_defer = defer; } + void setOption(const Option::Defer::_v defer) { a_defer = defer; } /** Establece el modo en que la biblioteca LDAP actua a la hora de realizar el siguimiento de las referencias. \param referral Indica el modo de realizar el seguimiento de las referncias. */ - void setOption(const Option::Referral::_v referral) throw() { a_referral = referral; } + void setOption(const Option::Referral::_v referral) { a_referral = referral; } /** * Establece el periodo de tiempo máximo que esperará la conexión a un servidor LDAP antes de considerar que @@ -198,7 +198,7 @@ public: * \see http://manpages.courier-mta.org/htmlman3/ldap_get_option.3.html * \warning Sólo tiene efecto antes de invocar al #bind, por lo que habrá que desactivar la auto conexión, para establecer el valor. */ - void setNetworkTimeout(const Millisecond &timeout) throw() { a_networkTimeout.tv_sec = timeout / 1000; a_networkTimeout.tv_usec = (timeout % 1000) * 1000; } + void setNetworkTimeout(const Millisecond &timeout) { a_networkTimeout.tv_sec = timeout / 1000; a_networkTimeout.tv_usec = (timeout % 1000) * 1000; } /** * Elimina el tiempo asignado en #setNetworkTimeout. @@ -206,7 +206,7 @@ public: * \see http://manpages.courier-mta.org/htmlman3/ldap_get_option.3.html * \warning Sólo tiene efecto antes de invocar al #bind */ - void clearNetworkTimeout() throw() { a_networkTimeout.tv_sec = -1; a_networkTimeout.tv_usec = 0; } + void clearNetworkTimeout() { a_networkTimeout.tv_sec = -1; a_networkTimeout.tv_usec = 0; } /** Establece el tiempo de espera maximo antes de considerar fallida una peticion LDAP. @@ -216,7 +216,7 @@ public: Los temporizadores correspondientes las peticiones LDAP se activaran automaticamente al invocar a los distintos métodos de esta clase. */ - void setTimeout(const ClassCode::_v v, const Millisecond &millisecond) throw() { a_timeouts [v] = millisecond; } + void setTimeout(const ClassCode::_v v, const Millisecond &millisecond) { a_timeouts [v] = millisecond; } /** Envia la peticion recibida como parametro al servidor con el que estamos conectados mediante esta @@ -231,7 +231,7 @@ public: \return La instancia de la respuesta LDAP asociada la peticion realizada. \warning Solo se podra hacer uso de este metodo cuando el metodo #isBound devuelva \em true. */ - const Response* send(const Request* request) throw(RuntimeException); + const Response* send(const Request* request) noexcept(false); /** Envia la peticion recibida como parametro al servidor con el que estamos conectados mediante esta @@ -246,7 +246,7 @@ public: \return La instancia de la respuesta LDAP asociada la peticion realizada. \warning Solo se podra hacer uso de este metodo cuando el metodo #isBound devuelva \em true. */ - const Response* send(const Request& request) throw(RuntimeException) { return send(&request); } + const Response* send(const Request& request) noexcept(false) { return send(&request); } /** * Desconecta este cliente LDAP del servidor LDAP. @@ -255,20 +255,20 @@ public: * \warning Después de invocar a este método habría que volver a invocar a ldap::Session::bind y esperar la conexión * antes de volver a usar esta sessión. */ - void unbind() throw(RuntimeException); + void unbind() noexcept(false); /** Devuelve una cadena con la informacion relevante sobre esta instancia. \return Una cadena con la informacion relevante sobre esta instancia. */ - std::string asString() const throw(); + std::string asString() const ; /** Devuelve un documento XML con la informacion relevante sobre esta instancia. \param parent Nodo XML del que colgar la informacion referente a esta instancia. \return Un documento XML con la informacion relevante sobre esta instancia. */ - xml::Node* asXML(xml::Node* parent) const throw(); + xml::Node* asXML(xml::Node* parent) const ; protected: /** @@ -284,14 +284,14 @@ protected: Una vez que se ha notificado la caida de la sesion, el nucleo de ANNA.ldap genera un ldap::Session::eventResponse para cada una de las peticiones que hay pendientes de contestar. */ - virtual void eventServerShutdown() throw() {;} + virtual void eventServerShutdown() {;} /** Metodo-manejador de las respuestas provenientes del servidor LDAP. \param response Objeto que contiene la respuesta correspondiente a la peticion LDAP realizada. */ - virtual void eventResponse(const Response& response) throw(RuntimeException) = 0; + virtual void eventResponse(const Response& response) noexcept(false) = 0; /** Metodo-manejador de los errores provenientes del servidor LDAP. @@ -299,7 +299,7 @@ protected: \param disconnect Incicador que informa al nivel de aplicación sobre cómo actuará la ANNA.ldap para recuperar este error, si vale \em true la conexión se cerrará o \em false en otro caso. */ - virtual void eventResponseError(const ResultCode& resultCode, const bool disconnect) throw() {;} + virtual void eventResponseError(const ResultCode& resultCode, const bool disconnect) {;} /** * Método-manejador que se invoca cuando alguno de los mensajes intermedios requeridos para formar @@ -307,11 +307,11 @@ protected: * \param response Objeto que contiene la respuesta correspondiente a la peticion LDAP realizada. */ - virtual void eventIntermediateResponseError(const Response& response) throw() {;} + virtual void eventIntermediateResponseError(const Response& response) {;} private: struct SortById { - static IdMessage value(const Response*) throw(); + static IdMessage value(const Response*) ; }; typedef SortedVector response_container; typedef response_container::iterator response_iterator; @@ -338,28 +338,28 @@ private: */ std::string a_keymap; - void apply() throw(RuntimeException); - void receiveBind(const IdMessage, HandleMessage) throw(RuntimeException); - void receiveEntry(const IdMessage, HandleMessage) throw(RuntimeException); - void receiveReference(const IdMessage, HandleMessage) throw(RuntimeException); - void receiveResult(const IdMessage, HandleMessage) throw(RuntimeException); - void expireResponse(Response*) throw(); + void apply() noexcept(false); + void receiveBind(const IdMessage, HandleMessage) noexcept(false); + void receiveEntry(const IdMessage, HandleMessage) noexcept(false); + void receiveReference(const IdMessage, HandleMessage) noexcept(false); + void receiveResult(const IdMessage, HandleMessage) noexcept(false); + void expireResponse(Response*) ; - void finalize() throw(); + void finalize() ; - response_iterator response_begin() throw() { return a_responses.begin(); } - response_iterator response_end() throw() { return a_responses.end(); } - void response_add(Response* response) throw(); - void response_erase(Response* response) throw(); - Response* response_find(const IdMessage idMessage) throw(RuntimeException); + response_iterator response_begin() { return a_responses.begin(); } + response_iterator response_end() { return a_responses.end(); } + void response_add(Response* response) ; + void response_erase(Response* response) ; + Response* response_find(const IdMessage idMessage) noexcept(false); - static Response* response(response_iterator ii) throw() { return response_container::data(ii); } + static Response* response(response_iterator ii) { return response_container::data(ii); } - const_response_iterator response_begin() const throw() { return a_responses.begin(); } - const_response_iterator response_end() const throw() { return a_responses.end(); } - static const Response* response(const_response_iterator ii) throw() { return response_container::data(ii); } + const_response_iterator response_begin() const { return a_responses.begin(); } + const_response_iterator response_end() const { return a_responses.end(); } + static const Response* response(const_response_iterator ii) { return response_container::data(ii); } - static const char* asText(const State::_v) throw(); + static const char* asText(const State::_v) ; friend class Timer; friend class Engine;