Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

XercesDocumentTypeWrapper.hpp

Go to the documentation of this file.
00001 /*
00002  * Copyright 1999-2004 The Apache Software Foundation.
00003  *
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  *
00008  *     http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 #if !defined(XERCESDOCUMENTTYPEWRAPPER_HEADER_GUARD_1357924680)
00017 #define XERCESDOCUMENTTYPEWRAPPER_HEADER_GUARD_1357924680
00018 
00019 
00020 
00021 #include <xalanc/XercesParserLiaison/XercesParserLiaisonDefinitions.hpp>
00022 
00023 
00024 
00025 #include <xalanc/XalanDOM/XalanDocumentType.hpp>
00026 
00027 #include <xalanc/Include/XalanMemMgrAutoPtr.hpp>
00028 
00029 #include <xalanc/XercesParserLiaison/XercesNamedNodeMapWrapper.hpp>
00030 #include <xalanc/XercesParserLiaison/XercesWrapperTypes.hpp>
00031 
00032 
00033 
00034 XALAN_CPP_NAMESPACE_BEGIN
00035 
00036 
00037 
00038 class XercesWrapperNavigator;
00039 class XercesDocumentWrapper;
00040 
00041 
00042 
00043 class XALAN_XERCESPARSERLIAISON_EXPORT XercesDocumentTypeWrapper : public XalanDocumentType
00044 {
00045 public:
00046 
00047     XercesDocumentTypeWrapper(
00048             const DOMDocumentType_Type*     theXercesDOMDocumentType,
00049             const XercesWrapperNavigator&   theNavigator);
00050 
00051     static XercesDocumentTypeWrapper*
00052     create( MemoryManagerType& theManager,
00053         const DOMDocumentType_Type*     theXercesDOMDocumentType,
00054         const XercesWrapperNavigator&   theNavigator);
00055 
00056     virtual
00057     ~XercesDocumentTypeWrapper();
00058 
00059 
00060     // These interfaces are inherited from XalanNode...
00061 
00062     virtual const XalanDOMString&
00063     getNodeName() const;
00064 
00068     virtual const XalanDOMString&
00069     getNodeValue() const;
00070 
00074     virtual NodeType
00075     getNodeType() const;
00076 
00086     virtual XalanNode*
00087     getParentNode() const;
00088 
00102     virtual const XalanNodeList*
00103     getChildNodes() const;
00104 
00110     virtual XalanNode*
00111     getFirstChild() const;
00112 
00118     virtual XalanNode*
00119     getLastChild() const;
00120 
00126     virtual XalanNode*
00127     getPreviousSibling() const;
00128 
00134     virtual XalanNode*
00135     getNextSibling() const;
00136 
00141     virtual const XalanNamedNodeMap*
00142     getAttributes() const;
00143 
00153     virtual XalanDocument*
00154     getOwnerDocument() const;
00155 
00157 
00159 
00178 #if defined(XALAN_NO_COVARIANT_RETURN_TYPE)
00179     virtual XalanNode*
00180 #else
00181     virtual XercesDocumentTypeWrapper*
00182 #endif
00183     cloneNode(bool deep) const;
00184 
00186 
00188 
00205     virtual XalanNode*
00206     insertBefore(
00207             XalanNode*  newChild,
00208             XalanNode*  refChild);
00209 
00223     virtual XalanNode*
00224     replaceChild(
00225             XalanNode*  newChild,
00226             XalanNode*  oldChild);
00227 
00235     virtual XalanNode*
00236     removeChild(XalanNode*  oldChild);
00237 
00249     virtual XalanNode*
00250     appendChild(XalanNode*  newChild);
00251 
00253 
00255 
00263     virtual bool
00264     hasChildNodes() const;
00265 
00266 
00268 
00270 
00271 
00285     virtual void
00286     setNodeValue(const XalanDOMString&  nodeValue);
00287 
00289 
00291 
00308     virtual void
00309     normalize();
00310 
00324     virtual bool
00325     isSupported(
00326             const XalanDOMString&   feature,
00327             const XalanDOMString&   version) const;
00328 
00342     virtual const XalanDOMString&
00343     getNamespaceURI() const;
00344 
00349     virtual const XalanDOMString&
00350     getPrefix() const;
00351 
00359     virtual const XalanDOMString&
00360     getLocalName() const;
00361 
00391     virtual void
00392     setPrefix(const XalanDOMString& prefix);
00393 
00394     virtual bool
00395     isIndexed() const;
00396 
00397     virtual IndexType
00398     getIndex() const;
00399 
00401 
00402     // These interfaces are inherited from XalanDocumentType...
00403 
00406 
00411     virtual const XalanDOMString&
00412     getName() const;
00413 
00419     virtual const XalanNamedNodeMap*
00420     getEntities() const;
00421 
00426     virtual const XalanNamedNodeMap*
00427     getNotations() const;
00429 
00432 
00436     virtual const XalanDOMString&
00437     getPublicId() const;
00438 
00443     virtual const XalanDOMString&
00444     getSystemId() const;
00445 
00450     virtual const XalanDOMString&
00451     getInternalSubset() const;
00452 
00458     const DOMDocumentType_Type*
00459     getXercesNode() const
00460     {
00461         return m_xercesNode;
00462     }
00463 
00465 
00466 private:
00467 
00468     // Not implemented...
00469     XercesDocumentTypeWrapper(const XercesDocumentTypeWrapper&  theSource);
00470 
00471     XercesDocumentTypeWrapper&
00472     operator=(const XercesDocumentTypeWrapper&  theSource);
00473 
00474     bool
00475     operator==(const XercesDocumentTypeWrapper&     theRHS) const;
00476 
00477     // Data members...
00478     const DOMDocumentType_Type* const   m_xercesNode;
00479 
00480     XercesNamedNodeMapWrapper           m_entities;
00481     
00482     XercesNamedNodeMapWrapper           m_notations;
00483 
00484     const XercesWrapperNavigator&       m_navigator;
00485 };
00486 
00487 
00488 
00489 XALAN_CPP_NAMESPACE_END
00490 
00491 
00492 
00493 #endif  // !defined(XERCESDOCUMENTTYPEWRAPPER_HEADER_GUARD_1357924680)

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

dot

Xalan-C++ XSLT Processor Version 1.10
Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.

Apache Logo