## Xalan-C++ API Documentation

### The Xalan C++ XSLT Processor Version 1.9

Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

# XercesEntityWrapper.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(XERCESENTITYWRAPPER_HEADER_GUARD_1357924680)
    00017 #define XERCESENTITYWRAPPER_HEADER_GUARD_1357924680
    00018
    00019
    00020
    00021 #include <xalanc/XercesParserLiaison/XercesParserLiaisonDefinitions.hpp>
    00022
    00023
    00024 #include <xalanc/Include/XalanMemMgrAutoPtr.hpp>
    00025
    00026
    00027 #include <xalanc/XalanDOM/XalanEntity.hpp>
    00028
    00029
    00030
    00031 #include <xalanc/XercesParserLiaison/XercesNodeListWrapper.hpp>
    00032 #include <xalanc/XercesParserLiaison/XercesWrapperTypes.hpp>
    00033
    00034
    00035
    00036 XALAN_CPP_NAMESPACE_BEGIN
    00037
    00038
    00039
    00040 class XercesWrapperNavigator;
    00041
    00042
    00043
    00044 class XALAN_XERCESPARSERLIAISON_EXPORT XercesEntityWrapper : public XalanEntity
    00045 {
    00046 public:
    00047
    00048     XercesEntityWrapper(
    00049             const DOMEntityType*            theXercesDOMEntity,
    00050             const XercesWrapperNavigator&   theNavigator);
    00051
    00052     static XercesEntityWrapper*
    00053     create( MemoryManagerType& theManager,
    00054             const DOMEntityType*            theXercesDOMEntity,
    00055             const XercesWrapperNavigator&   theNavigator);
    00056
    00057     virtual
    00058     ~XercesEntityWrapper();
    00059
    00060
    00061     // These interfaces are inherited from XalanNode...
    00062
    00063     virtual const XalanDOMString&
    00064     getNodeName() const;
    00065
    00069     virtual const XalanDOMString&
    00070     getNodeValue() const;
    00071
    00075     virtual NodeType
    00076     getNodeType() const;
    00077
    00087     virtual XalanNode*
    00088     getParentNode() const;
    00089
    00103     virtual const XalanNodeList*
    00104     getChildNodes() const;
    00105
    00111     virtual XalanNode*
    00112     getFirstChild() const;
    00113
    00119     virtual XalanNode*
    00120     getLastChild() const;
    00121
    00127     virtual XalanNode*
    00128     getPreviousSibling() const;
    00129
    00135     virtual XalanNode*
    00136     getNextSibling() const;
    00137
    00142     virtual const XalanNamedNodeMap*
    00143     getAttributes() const;
    00144
    00154     virtual XalanDocument*
    00155     getOwnerDocument() const;
    00156
    00158
    00160
    00179 #if defined(XALAN_NO_COVARIANT_RETURN_TYPE)
    00180     virtual XalanNode*
    00181 #else
    00182     virtual XercesEntityWrapper*
    00183 #endif
    00184     cloneNode(bool deep) const;
    00185
    00187
    00189
    00206     virtual XalanNode*
    00207     insertBefore(
    00208             XalanNode*  newChild,
    00209             XalanNode*  refChild);
    00210
    00224     virtual XalanNode*
    00225     replaceChild(
    00226             XalanNode*  newChild,
    00227             XalanNode*  oldChild);
    00228
    00236     virtual XalanNode*
    00237     removeChild(XalanNode*  oldChild);
    00238
    00250     virtual XalanNode*
    00251     appendChild(XalanNode*  newChild);
    00252
    00254
    00256
    00264     virtual bool
    00265     hasChildNodes() const;
    00266
    00267
    00269
    00271
    00272
    00286     virtual void
    00287     setNodeValue(const XalanDOMString&      nodeValue);
    00288
    00290
    00292
    00309     virtual void
    00310     normalize();
    00311
    00325     virtual bool
    00326     isSupported(
    00327             const XalanDOMString&   feature,
    00328             const XalanDOMString&   version) const;
    00329
    00343     virtual const XalanDOMString&
    00344     getNamespaceURI() const;
    00345
    00350     virtual const XalanDOMString&
    00351     getPrefix() const;
    00352
    00360     virtual const XalanDOMString&
    00361     getLocalName() const;
    00362
    00392     virtual void
    00393     setPrefix(const XalanDOMString& prefix);
    00394
    00395     virtual bool
    00396     isIndexed() const;
    00397
    00398     virtual IndexType
    00399     getIndex() const;
    00400
    00402
    00403     // These interfaces are inherited from XalanEntity...
    00404
    00412     virtual const XalanDOMString&
    00413     getPublicId() const;
    00414
    00422     virtual const XalanDOMString&
    00423     getSystemId() const;
    00424
    00430     virtual const XalanDOMString&
    00431     getNotationName() const;
    00432
    00438     const DOMEntityType*
    00439     getXercesNode() const
    00440     {
    00441         return m_xercesNode;
    00442     }
    00443
    00444 private:
    00445
    00446     // Not implemented...
    00447     XercesEntityWrapper(const XercesEntityWrapper&  theSource);
    00448
    00449     XercesEntityWrapper&
    00450     operator=(const XercesEntityWrapper&        theSource);
    00451
    00452     bool
    00453     operator==(const XercesEntityWrapper&       theRHS) const;
    00454
    00455     // Data members...
    00456     const DOMEntityType* const      m_xercesNode;
    00457
    00458     const XercesWrapperNavigator&   m_navigator;
    00459
    00460     XercesNodeListWrapper           m_children;
    00461 };
    00462
    00463
    00464
    00465 XALAN_CPP_NAMESPACE_END
    00466
    00467
    00468
    00469 #endif  // !defined(XERCESENTITYWRAPPER_HEADER_GUARD_1357924680)

Interpreting class diagrams

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

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