Remove dynamic exceptions
[anna.git] / source / http / wims20 / Abstract.cpp
index 008dd96..b2a214e 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 <anna/core/tracing/Logger.hpp>
@@ -68,7 +40,7 @@ http::wims20::Abstract::~Abstract() {
 
 /* Calcula la parte fija de la URI, se invoca desde el constructor. */
 const string& http::wims20::Abstract::calculeFixedPart()
-throw(RuntimeException) {
+noexcept(false) {
   if(a_serviceID.empty() == true) {
     string msg(asString());
     msg += " | ServiceID can not be NULL";
@@ -91,7 +63,7 @@ throw(RuntimeException) {
 }
 
 const string& http::wims20::Abstract::calculeShortFixedPart()
-throw(RuntimeException) {
+noexcept(false) {
   string::size_type pos = a_domain.find("http://");
 
   if(pos == string::npos) {
@@ -115,7 +87,7 @@ throw(RuntimeException) {
 }
 
 void http::wims20::Abstract::other_level_add(const std::string& otherLevel)
-throw(RuntimeException) {
+noexcept(false) {
   if(a_otherLevels == NULL)
     a_otherLevels = new other_level_container;
 
@@ -129,7 +101,7 @@ throw(RuntimeException) {
 
 /*virtual*/
 void http::wims20::Abstract::clearOtherLevels()
-throw() {
+{
   if(hasOtherLevels()) {
     for(other_level_iterator ii = other_level_begin(), maxii = other_level_end(); ii != maxii; ii ++)
       destroyString(otherLevel(ii));
@@ -139,7 +111,7 @@ throw() {
 }
 
 void http::wims20::Abstract::parameter_set(const std::string& name, const std::string& value)
-throw(RuntimeException) {
+noexcept(false) {
   bool exists = false;
 
   if(a_parameters == NULL)
@@ -172,7 +144,7 @@ throw(RuntimeException) {
 }
 
 void http::wims20::Abstract::clearParameters()
-throw() {
+{
   if(hasParameters()) {
     for(parameter_iterator ii = parameter_begin(), maxii = parameter_end(); ii != maxii; ii ++) {
       destroyString(parameter_name(ii));
@@ -184,7 +156,7 @@ throw() {
 }
 
 string http::wims20::Abstract::asString() const
-throw() {
+{
   string result("http::wims20::");
   result += a_whatis;
   result += " { Domain: ";
@@ -222,7 +194,7 @@ throw() {
 
 /*static*/
 void http::wims20::Abstract::appendWithSlash(std::string& target, const std::string& other)
-throw() {
+{
   const char* str = target.c_str();
 
   if(str [anna_strlen(str) - 1] != '/')