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

epp_UnspecTest.h

Go to the documentation of this file.
00001 /************************************************************************
00002 * EPP RTK C++
00003 * Copyright (C) 2001 Global Name Registry 
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 *                       GNR Ltd.
00023 *                       125 High Holborn
00024 *                       London WC1V 6QA
00025 *                       United Kingdom
00026 ************************************************************************/
00027 
00028 #ifndef __EPP_UNSPECTEST_H
00029 #define __EPP_UNSPECTEST_H
00030 
00031 #include "config.h"
00032 #include <domtools/dom_output.h>
00033 #include <domtools/dom_tools.h>
00034 #include "unspec/epp_Weather.h"
00035 #include "data/epp_eppXMLbase.h"
00036 #include "data/epp_XMLException.h"
00037 
00038 namespace eppobject { namespace epp {
00039    
00040    class epp_UnspecTest : public epp_Unspec {
00041     public:
00042       epp_Weather_ref m_weather;
00043       
00044     public:
00045       epp_UnspecTest() {};
00046 
00047       virtual ~epp_UnspecTest() {};
00048       
00049       epp_Weather_ref getResponseData()
00050    {
00051       return m_weather;
00052    }
00053       
00054       virtual eppobject::epp::epp_string toXML()
00055    {
00056       domtools::xml_string_output xmltext;
00057       xmltext.setWhitespace(false);
00058       
00059       xmltext.putTag("weatherforecast", "");
00060       
00061       return xmltext.getString();
00062    };
00063       
00064       virtual void fromXML(const eppobject::epp::epp_string & xml)
00065    {
00066       m_weather.ref(new epp_Weather());
00067       DOM_Document doc = createDOM_Document(xml);
00068       
00069       DOM_Node todayNode = domtools::getSingleTag(doc, "today");
00070       if(!todayNode.isNull())
00071         {
00072       string today;
00073       domtools::getNodeData(todayNode, today);
00074       m_weather->m_today.ref(new epp_string(today));
00075         }
00076 
00077       DOM_Node tomorrowNode = domtools::getSingleTag(doc, "tomorrow");
00078       if(!tomorrowNode.isNull())
00079         {
00080       string tomorrow;
00081       domtools::getNodeData(tomorrowNode, tomorrow);
00082       m_weather->m_tomorrow.ref(new epp_string(tomorrow));
00083         }
00084 
00085    };
00086    };
00087    
00088    typedef refcnt_ptr<epp_UnspecTest> epp_UnspecTest_ref;
00089    
00090 }}
00091 
00092 #endif

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