Remove dynamic exceptions
[anna.git] / source / ldap / Engine.cpp
index 70f9d85..1d84045 100644 (file)
@@ -1,37 +1,9 @@
-// ANNA - Anna is Not 'N' Anymore
-//
-// (c) Copyright 2005-2014 Eduardo Ramos Testillano & Francisco Ruiz Rayo
-//
-// https://bitbucket.org/testillano/anna
-//
-// 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 Google Inc. 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 //
 
 
 #include <time.h>
@@ -61,7 +33,7 @@ Engine::Engine() :
 }
 
 Session* Engine::createSession(const char* url, const char* user, const char* password, const int category)
-throw(RuntimeException) {
+noexcept(false) {
   ldap::Session* result(NULL);
   Guard guard(this, "ldap::Engine::createSession");
   url = completeURL(url);
@@ -103,7 +75,7 @@ throw(RuntimeException) {
 }
 
 Session* Engine::createSession(const char* url, const int id, const char* user, const char* password, const int category)
-throw(RuntimeException) {
+noexcept(false) {
   ldap::Session* result(NULL);
   Guard guard(this, "ldap::Engine::createSession");
   url = completeURL(url);
@@ -153,7 +125,7 @@ throw(RuntimeException) {
 }
 
 Session* Engine::findSession(const char* url, const char* user, Exception::Mode::_v emode)
-throw(RuntimeException) {
+noexcept(false) {
   Guard guard(this, "ldap::Engine::findSession");
   url = completeURL(url);
   session_iterator ii = session_find(url, user);
@@ -179,7 +151,7 @@ throw(RuntimeException) {
 }
 
 Session* Engine::findSession(const char* url, const int id, Exception::Mode::_v emode)
-throw(RuntimeException) {
+noexcept(false) {
   Guard guard(this, "ldap::Engine::findSession (int)");
   session_iterator ii = session_find(url, id);
 
@@ -203,7 +175,7 @@ throw(RuntimeException) {
 }
 
 void Engine::closeSession(Session* session)
-throw(RuntimeException) {
+noexcept(false) {
   if(session == NULL)
     return;
 
@@ -229,7 +201,7 @@ throw(RuntimeException) {
 }
 
 void Engine::do_stop()
-throw() {
+{
   LOGMETHOD(TraceMethod tttm("anna::ldap::Engine", "do_stop", ANNA_FILE_LOCATION));
 
   for(session_iterator ii = session_begin(), maxii = session_end(); ii != maxii; ii ++)
@@ -237,7 +209,7 @@ throw() {
 }
 
 xml::Node* Engine::asXML(xml::Node* parent) const
-throw() {
+{
   parent = app::Component::asXML(parent);
   xml::Node* result = parent->createChild("ldap.Engine");
   const Session* session;
@@ -252,13 +224,13 @@ throw() {
 }
 
 Engine::session_iterator Engine::session_find(const char* url, const int id)
-throw() {
+{
   return a_sessions.find(session_key(url, anna::functions::asString(id)));
 }
 
 /*static*/
 int Engine::setDebugLevel(const int level)
-throw(RuntimeException) {
+noexcept(false) {
   int result(-1);
 #ifdef LDAP_OPT_DEBUG_LEVEL
   int _level = htonl(level);
@@ -277,9 +249,8 @@ throw(RuntimeException) {
 }
 
 const char* Engine::completeURL(const char* url)
-throw() {
+{
   static const char* protocol = "ldap://";
-  static const int protocolLen = anna_strlen(protocol);
 
   if(anna_strstr(url, "://") == 0) {
     a_auxURL = protocol;
@@ -292,5 +263,5 @@ throw() {
 
 // static
 void Engine::alarmnCatcher(int)
-throw() {
+{
 }