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  

XercesAttrWrapper.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(XERCESATTRWRAPPER_HEADER_GUARD_1357924680)
00017 #define XERCESATTRWRAPPER_HEADER_GUARD_1357924680
00018 
00019 
00020 
00021 #include <xalanc/XercesParserLiaison/XercesParserLiaisonDefinitions.hpp>
00022 
00023 
00024 
00025 #include <xercesc/dom/DOMAttr.hpp>
00026 
00027 
00028 
00029 #include <xalanc/XalanDOM/XalanAttr.hpp>
00030 
00031 
00032 
00033 #include <xalanc/XercesParserLiaison/XercesNodeListWrapper.hpp>
00034 #include <xalanc/XercesParserLiaison/XercesWrapperTypes.hpp>
00035 
00036 
00037 
00038 XALAN_CPP_NAMESPACE_BEGIN
00039 
00040 
00041 
00042 class XercesWrapperNavigator;
00043 class XalanElement;
00044 
00045 
00046 
00047 class XALAN_XERCESPARSERLIAISON_EXPORT XercesAttrWrapper : public XalanAttr
00048 {
00049 public:
00050 
00051     XercesAttrWrapper(
00052             const DOMAttrType*              theXercesAttr,
00053             const XercesWrapperNavigator&   theNavigator);
00054 
00055     virtual
00056     ~XercesAttrWrapper();
00057 
00058 
00059     // These interfaces are inherited from XalanNode...
00060     virtual const XalanDOMString&
00061     getNodeName() const;
00062 
00066     virtual const XalanDOMString&
00067     getNodeValue() const;
00068 
00072     virtual NodeType
00073     getNodeType() const;
00074 
00084     virtual XalanNode*
00085     getParentNode() const;
00086 
00100     virtual const XalanNodeList*
00101     getChildNodes() const;
00102 
00108     virtual XalanNode*
00109     getFirstChild() const;
00110 
00116     virtual XalanNode*
00117     getLastChild() const;
00118 
00124     virtual XalanNode*
00125     getPreviousSibling() const;
00126 
00132     virtual XalanNode*
00133     getNextSibling() const;
00134 
00139     virtual const XalanNamedNodeMap*
00140     getAttributes() const;
00141 
00151     virtual XalanDocument*
00152     getOwnerDocument() const;
00153 
00155 
00157 
00176 #if defined(XALAN_NO_COVARIANT_RETURN_TYPE)
00177     virtual XalanNode*
00178 #else
00179     virtual XercesAttrWrapper*
00180 #endif
00181     cloneNode(bool deep) const;
00182 
00184 
00186 
00203     virtual XalanNode*
00204     insertBefore(
00205             XalanNode*  newChild,
00206             XalanNode*  refChild);
00207 
00221     virtual XalanNode*
00222     replaceChild(
00223             XalanNode*  newChild,
00224             XalanNode*  oldChild);
00225 
00233     virtual XalanNode*
00234     removeChild(XalanNode*  oldChild);
00235 
00247     virtual XalanNode*
00248     appendChild(XalanNode*  newChild);
00249 
00251 
00253 
00261     virtual bool
00262     hasChildNodes() const;
00263 
00264 
00266 
00268 
00269 
00283     virtual void
00284     setNodeValue(const XalanDOMString&  nodeValue);
00285 
00287 
00289 
00306     virtual void
00307     normalize();
00308 
00322     virtual bool
00323     isSupported(
00324             const XalanDOMString&   feature,
00325             const XalanDOMString&   version) const;
00326 
00340     virtual const XalanDOMString&
00341     getNamespaceURI() const;
00342 
00347     virtual const XalanDOMString&
00348     getPrefix() const;
00349 
00357     virtual const XalanDOMString&
00358     getLocalName() const;
00359 
00389     virtual void
00390     setPrefix(const XalanDOMString&     prefix);
00391 
00392     virtual bool
00393     isIndexed() const;
00394 
00395     virtual IndexType
00396     getIndex() const;
00397 
00399 
00400     // These interfaces are inherited from XalanAttr...
00401 
00404 
00408     virtual const XalanDOMString&
00409     getName() const;
00410 
00418     virtual bool
00419     getSpecified() const;
00420 
00427     virtual const XalanDOMString&
00428     getValue() const;
00429 
00431 
00433     
00440     virtual void
00441     setValue(const XalanDOMString&  value);
00442 
00444 
00447 
00451     virtual XalanElement*
00452     getOwnerElement() const;
00454 
00460     const DOMAttrType*
00461     getXercesNode() const
00462     {
00463         return m_xercesNode;
00464     }
00465 
00466 private:
00467 
00468     // Not implemented...
00469     XercesAttrWrapper(const XercesAttrWrapper&  theSource);
00470 
00471     XercesAttrWrapper&
00472     operator=(const XercesAttrWrapper&  theSource);
00473 
00474     bool
00475     operator==(const XercesAttrWrapper&     theRHS) const;
00476 
00477     // Data members...
00478     const DOMAttrType* const        m_xercesNode;
00479 
00480     XercesNodeListWrapper           m_children;
00481 
00482     const XercesWrapperNavigator&   m_navigator;
00483 };
00484 
00485 
00486 
00487 XALAN_CPP_NAMESPACE_END
00488 
00489 
00490 
00491 #endif  // !defined(XERCESATTRBRIDGE_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