FDO .NET API Reference Feature Data Objects

mgXmlCopyHandler.h

Go to the documentation of this file.
00001 /*
00002 * Copyright (C) 2004-2006  Autodesk, Inc.
00003 * 
00004 * This library is free software; you can redistribute it and/or
00005 * modify it under the terms of version 2.1 of the GNU Lesser
00006 * General Public License as published by the Free Software Foundation.
00007 * 
00008 * This library is distributed in the hope that it will be useful,
00009 * but WITHOUT ANY WARRANTY; without even the implied warranty of
00010 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00011 * Lesser General Public License for more details.
00012 * 
00013 * You should have received a copy of the GNU Lesser General Public
00014 * License along with this library; if not, write to the Free Software
00015 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
00016 *
00017 */
00018 
00019 #pragma once
00020 
00021 #include "Common\Xml\mgXmlSaxHandler.h"
00022 
00023 class FdoXmlCopyHandler;
00024 
00025 BEGIN_NAMESPACE_OSGEO_COMMON
00026 public __gc class DictionaryElementCollection;
00027 END_NAMESPACE_OSGEO_COMMON
00028 
00029 BEGIN_NAMESPACE_OSGEO_COMMON_XML
00030 public __gc class XmlWriter;
00031 public __gc class XmlAttributeCollection;
00032 
00033 /// \ingroup (OSGeoFDOCommonXml)
00034 /// \brief
00035 /// XmlCopyHandler can be used to copy a set of elements from one XML
00036 /// document to another. It can be created and set as the SAX Handler for an XML Reader
00037 /// on the document to copy from. An XML Writer to the document to copy to is 
00038 /// passed to one of the Create methods below. The elements to copy will be inserted
00039 /// at the XML writer's current position.
00040 public __gc __sealed class XmlCopyHandler : public NAMESPACE_OSGEO_COMMON_XML::XmlSaxHandler
00041 {
00042 public:
00043     /// \brief
00044     /// Constructs a Copy Handler. When attached (as the SAX Handler) to 
00045     /// an XmlReader, this object copies all sub-elements of the current element
00046     /// being parsed.
00047     /// 
00048     /// \param writer 
00049     /// Input the sub-elements are written to this XML writer.
00050     /// 
00051     /// \return
00052     /// Returns XmlCopyHandler
00053     /// 
00054     XmlCopyHandler( NAMESPACE_OSGEO_COMMON_XML:: XmlWriter* writer );
00055 
00056     /// \brief
00057     /// Constructs a Copy Handler. When attached (as the SAX Handler) to 
00058     /// a XmlReader, this object copies the current element
00059     /// being parsed, plus all of its sub-elements. 
00060     /// 
00061     /// \param writer 
00062     /// Input the sub-elements are written to this XML writer.
00063     /// \param resourceLocation 
00064     /// Input current element's Universal Resource Indicator
00065     /// \param name 
00066     /// Input the unqualified name of the current element (doesn't include namespace)
00067     /// \param qualifiedName 
00068     /// Input the qualified name of the current element(includes namespace)
00069     /// \param attributes 
00070     /// Input the attributes for the current element. 
00071     /// <p><b>Note:</b> If the 
00072     /// current element will become the root element in the destination 
00073     /// document, the caller is responsible for including all required xmlns: namespace
00074     /// declarations in the atts list.
00075     /// \param namespaces 
00076     /// Input list of XML namespace declarations to write to the 
00077     /// destination document.
00078     /// 
00079     /// \return
00080     /// Returns XmlCopyHandler
00081     /// 
00082     NAMESPACE_OSGEO_COMMON_XML::XmlCopyHandler(NAMESPACE_OSGEO_COMMON_XML::XmlWriter* writer, String* resourceLocation, String* name,  String* qualifiedName,  XmlAttributeCollection* attributes, DictionaryElementCollection* namespaces);
00083         
00084     /// \brief
00085     /// Constructs a CopyHandler based on an unmanaged instance of the object
00086     /// 
00087     /// \param unmanaged 
00088     /// Input A Pointer to the unmanaged object.
00089     /// 
00090     /// \param autoDelete 
00091     /// Input Indicates if the constructed object should be automatically deleted 
00092     /// once it no longer referenced.
00093     /// 
00094     XmlCopyHandler(System::IntPtr unmanaged, System::Boolean autoDelete);
00095 
00096 /// \cond DOXYGEN-IGNORE
00097 public private:
00098     inline FdoXmlCopyHandler* GetImpObj();
00099 /// \endcond
00100 };
00101 
00102 END_NAMESPACE_OSGEO_COMMON_XML
00103 
00104 

Comments or suggestions? Send us feedback.