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(XALANDEFAULTPARSEDSOURCE_HEADER_GUARD) 00017 #define XALANDEFAULTPARSEDSOURCE_HEADER_GUARD 00018 00019 00020 00021 // Base include file. Must be first. 00022 #include <xalanc/XalanTransformer/XalanTransformerDefinitions.hpp> 00023 00024 00025 00026 #include <xalanc/XalanSourceTree/XalanSourceTreeDocument.hpp> 00027 #include <xalanc/XalanSourceTree/XalanSourceTreeDOMSupport.hpp> 00028 #include <xalanc/XalanSourceTree/XalanSourceTreeParserLiaison.hpp> 00029 00030 00031 00032 #include <xalanc/XalanTransformer/XalanParsedSource.hpp> 00033 00034 00035 00036 XALAN_CPP_NAMESPACE_BEGIN 00037 00038 00039 00040 class XSLTInputSource; 00041 00042 00043 00044 class XalanDefaultParsedSourceDOMSupport : public XalanSourceTreeDOMSupport 00045 { 00046 public: 00047 00048 XalanDefaultParsedSourceDOMSupport( 00049 const XalanSourceTreeParserLiaison& theParserLiaison, 00050 const XalanSourceTreeDOMSupport& theDOMSupport); 00051 00052 virtual 00053 ~XalanDefaultParsedSourceDOMSupport(); 00054 00055 virtual void 00056 reset(); 00057 00058 // These interfaces are inherited from DOMSupport... 00059 00060 virtual const XalanDOMString& 00061 getUnparsedEntityURI( 00062 const XalanDOMString& theName, 00063 const XalanDocument& theDocument) const; 00064 00065 virtual bool 00066 isNodeAfter( 00067 const XalanNode& node1, 00068 const XalanNode& node2) const; 00069 00070 private: 00071 00072 // Not implemented... 00073 XalanDefaultParsedSourceDOMSupport(const XalanDefaultParsedSourceDOMSupport&); 00074 00075 XalanDefaultParsedSourceDOMSupport& 00076 operator=(const XalanDefaultParsedSourceDOMSupport&); 00077 00078 00079 // Data members... 00080 const XalanSourceTreeDOMSupport& m_domSupport; 00081 }; 00082 00083 00084 00085 class XALAN_TRANSFORMER_EXPORT XalanDefaultParsedSourceHelper : public XalanParsedSourceHelper 00086 { 00087 public: 00088 00089 XalanDefaultParsedSourceHelper(const XalanSourceTreeDOMSupport& theSourceDOMSupport, 00090 MemoryManagerType& theManager XALAN_DEFAULT_MEMMGR); 00091 00092 static XalanDefaultParsedSourceHelper* 00093 create(const XalanSourceTreeDOMSupport& theSourceDOMSupport, 00094 MemoryManagerType& theManager); 00095 00096 ~XalanDefaultParsedSourceHelper(); 00097 00098 virtual DOMSupport& 00099 getDOMSupport(); 00100 00101 virtual XMLParserLiaison& 00102 getParserLiaison(); 00103 00104 private: 00105 00106 // Not implemented... 00107 XalanDefaultParsedSourceHelper(const XalanDefaultParsedSourceHelper&); 00108 00109 XalanDefaultParsedSourceHelper& 00110 operator=(const XalanDefaultParsedSourceHelper&); 00111 00112 00113 // Data members... 00114 XalanSourceTreeParserLiaison m_parserLiaison; 00115 00116 XalanDefaultParsedSourceDOMSupport m_domSupport; 00117 }; 00118 00119 00120 00125 class XALAN_TRANSFORMER_EXPORT XalanDefaultParsedSource : public XalanParsedSource 00126 { 00127 public: 00128 00129 XalanDefaultParsedSource( 00130 const InputSourceType& theInputSource, 00131 bool fValidate = false, 00132 ErrorHandlerType* theErrorHandler = 0, 00133 EntityResolverType* theEntityResolver = 0, 00134 const XalanDOMChar* theExternalSchemaLocation = 0, 00135 const XalanDOMChar* theExternalNoNamespaceSchemaLocation = 0, 00136 bool fPoolAllTextNodes = XalanSourceTreeDocument::getPoolAllTextNodes(), 00137 MemoryManagerType& theManager XALAN_DEFAULT_MEMMGR); 00138 00139 static XalanDefaultParsedSource* 00140 create( 00141 MemoryManagerType& theManager, 00142 const InputSourceType& theInputSource, 00143 bool fValidate = false, 00144 ErrorHandlerType* theErrorHandler = 0, 00145 EntityResolverType* theEntityResolver = 0, 00146 const XalanDOMChar* theExternalSchemaLocation = 0, 00147 const XalanDOMChar* theExternalNoNamespaceSchemaLocation = 0, 00148 bool fPoolAllTextNodes = XalanSourceTreeDocument::getPoolAllTextNodes()); 00149 00150 virtual 00151 ~XalanDefaultParsedSource(); 00152 00153 virtual XalanDocument* 00154 getDocument() const; 00155 00156 virtual XalanParsedSourceHelper* 00157 createHelper(MemoryManagerType& theManager XALAN_DEFAULT_CONSTRACTOR_MEMORY_MGR) const; 00158 00159 virtual const XalanDOMString& 00160 getURI() const; 00161 00162 private: 00163 00164 // Not implemented... 00165 XalanDefaultParsedSource(const XalanDefaultParsedSource&); 00166 00167 XalanDefaultParsedSource& 00168 operator=(const XalanDefaultParsedSource&); 00169 00170 00171 // Data members... 00172 XalanSourceTreeParserLiaison m_parserLiaison; 00173 00174 XalanSourceTreeDOMSupport m_domSupport; 00175 00176 XalanSourceTreeDocument* m_parsedSource; 00177 00178 XalanDOMString m_uri; 00179 }; 00180 00181 00182 00183 XALAN_CPP_NAMESPACE_END 00184 00185 00186 00187 #endif // XALANDEFAULTPARSEDSOURCE_HEADER_GUARD 00188 00189 00190
Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.
Xalan-C++ XSLT Processor Version 1.10 |
|