Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

epp_XMLException.h

Go to the documentation of this file.
00001 /************************************************************************
00002 * EPP RTK C++
00003 * Copyright (C) 2001, 2002 The Global Name Registry, Limited 
00004 * 
00005 * This library is free software; you can redistribute it and/or modify it
00006 * under the terms of the GNU Lesser General Public License as published
00007 * by the Free Software Foundation; either version 2.1 of the License, or
00008 * (at your option) any later version.
00009 *
00010 * This library is distributed in the hope that it will be useful, but
00011 * WITHOUT ANY WARRANTY; without even the implied warranty of
00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013 * Lesser General Public License for more details.
00014 *
00015 * You should have received a copy of the GNU Lesser General Public
00016 * License along with this library; if not, write to the Free Software
00017 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00018 *
00019 * Contact information:  epprtk@gnr.com
00020 *
00021 *                       EPP RTK
00022 *                       The Global Name Registry, Limited
00023 *                       125 High Holborn
00024 *                       London WC1V 6QA
00025 *                       United Kingdom
00026 ************************************************************************/
00027 
00028 #ifndef __EPP_XMLEXCEPTION_H
00029 #define __EPP_XMLEXCEPTION_H
00030 
00036 #include "epp_eppdata.h"
00037 #include <exception>
00038 #include <string>
00039 
00040 namespace eppobject { namespace epp {
00041 
00043    class epp_XMLException : public exception {
00044       
00045     public:
00046       epp_string_ref m_error_message; 
00048 
00049       epp_XMLException() {};
00050       
00052       virtual ~epp_XMLException() {};
00053 
00055       epp_XMLException(const epp_string & data) throw()
00056    {
00057       m_error_message.ref(new epp_string(data));
00058    };
00059       
00062       virtual epp_string getString()
00063    {
00064       if(m_error_message == NULL)
00065         return "";
00066       else
00067         return *m_error_message;
00068    };
00069       
00071       epp_XMLException(const string file, const int lineno, const epp_string & data) throw()
00072    {
00073       string error_message;
00074       char buf[10];
00075       sprintf(buf,"%d",lineno);
00076       error_message = file;
00077       error_message += ":";
00078       error_message += buf;
00079       error_message += ": ";
00080       error_message += data;
00081       m_error_message.ref(new epp_string(error_message));
00082    };
00083    };
00084    
00085 }};
00086 
00087 #endif

Generated on Fri Mar 22 15:48:44 2002 for epprtk c++ by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001