X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=xmltooling%2Fexceptions.h;h=c04c8702c3022b69c29447d592795fce35a89ed3;hb=bd570e15d3fa3562af4e625d2de48475f4bea9d0;hp=ce032e1655e041375417699fab132055be08614c;hpb=5cb314df178f78c6fa7b9826c2c5a5298ec7a473;p=shibboleth%2Fcpp-xmltooling.git diff --git a/xmltooling/exceptions.h b/xmltooling/exceptions.h index ce032e1..c04c870 100644 --- a/xmltooling/exceptions.h +++ b/xmltooling/exceptions.h @@ -1,33 +1,38 @@ -/* - * Copyright 2001-2007 Internet2 - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at +/** + * Licensed to the University Corporation for Advanced Internet + * Development, Inc. (UCAID) under one or more contributor license + * agreements. See the NOTICE file distributed with this work for + * additional information regarding copyright ownership. + * + * UCAID licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the + * License at * - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, + * either express or implied. See the License for the specific + * language governing permissions and limitations under the License. */ /** - * @file exceptions.h + * @file xmltooling/exceptions.h * - * Exception classes + * Exception classes. */ #ifndef __xmltooling_exceptions_h__ #define __xmltooling_exceptions_h__ +#include + #include #include #include #include -#include /** * Declares a derived exception class @@ -43,7 +48,7 @@ class linkage name : public base { \ public: \ XMLTOOLING_DOXYGEN(Constructor) \ - name(const char* msg=NULL, const xmltooling::params& p=xmltooling::params()) : base(msg,p) {} \ + name(const char* msg=nullptr, const xmltooling::params& p=xmltooling::params()) : base(msg,p) {} \ XMLTOOLING_DOXYGEN(Constructor) \ name(const char* msg, const xmltooling::namedparams& p) : base(msg,p) {} \ XMLTOOLING_DOXYGEN(Constructor) \ @@ -147,7 +152,7 @@ namespace xmltooling { * @param msg error message * @param p an ordered set of positional parameter strings */ - XMLToolingException(const char* msg=NULL, const params& p=params()); + XMLToolingException(const char* msg=nullptr, const params& p=params()); /** * Constructs an exception using a message and named parameters. @@ -240,7 +245,7 @@ namespace xmltooling { * Returns the parameter property with the designated position (based from one). * * @param index position to access - * @return the parameter property or NULL + * @return the parameter property or nullptr */ const char* getProperty(unsigned int index) const; @@ -248,7 +253,7 @@ namespace xmltooling { * Returns the parameter property with the designated name. * * @param name named parameter to access - * @return the parameter property or NULL + * @return the parameter property or nullptr */ const char* getProperty(const char* name) const; @@ -276,6 +281,14 @@ namespace xmltooling { */ std::string toString() const; + /** + * Returns a set of query string name/value pairs, URL-encoded, representing the + * exception's type, message, and parameters. + * + * @return the query string representation + */ + std::string toQueryString() const; + private: std::string m_msg; mutable std::string m_processedmsg;