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(XERCESNOTATIONWRAPPER_HEADER_GUARD_1357924680) 00017 #define XERCESNOTATIONWRAPPER_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/XalanNotation.hpp> 00028 00029 00030 00031 #include <xalanc/XercesParserLiaison/XercesWrapperTypes.hpp> 00032 00033 00034 00035 XALAN_CPP_NAMESPACE_BEGIN 00036 00037 00038 00039 class XercesWrapperNavigator; 00040 00041 00042 00043 class XALAN_XERCESPARSERLIAISON_EXPORT XercesNotationWrapper : public XalanNotation 00044 { 00045 public: 00046 00047 XercesNotationWrapper( 00048 const DOMNotationType* theXercesDOMNotation, 00049 const XercesWrapperNavigator& theNavigator); 00050 00051 static XercesNotationWrapper* 00052 create( MemoryManagerType& theManager, 00053 const DOMNotationType* theXercesDOMNotation, 00054 const XercesWrapperNavigator& theNavigator); 00055 00056 virtual 00057 ~XercesNotationWrapper(); 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 XercesNotationWrapper* 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 XalanNotation... 00403 00411 virtual const XalanDOMString& 00412 getPublicId() const; 00413 00421 virtual const XalanDOMString& 00422 getSystemId() const; 00423 00429 const DOMNotationType* 00430 getXercesNode() const 00431 { 00432 return m_xercesNode; 00433 } 00434 00435 private: 00436 00437 // Not implemented... 00438 XercesNotationWrapper(const XercesNotationWrapper& theSource); 00439 00440 XercesNotationWrapper& 00441 operator=(const XercesNotationWrapper& theSource); 00442 00443 bool 00444 operator==(const XercesNotationWrapper& theRHS) const; 00445 00446 // Data members... 00447 const DOMNotationType* const m_xercesNode; 00448 00449 const XercesWrapperNavigator& m_navigator; 00450 }; 00451 00452 00453 00454 XALAN_CPP_NAMESPACE_END 00455 00456 00457 00458 #endif // !defined(XERCESNOTATIONWRAPPER_HEADER_GUARD_1357924680)
Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.
Xalan-C++ XSLT Processor Version 1.10 |
|