Xerces-C++ 3.1.3

- Main Page
- Related Pages
- Classes
- Files

- File List
- File Members

DOMLSParser.hpp
Go to the documentation of this file.
1 /*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18 /*
19 * $Id: DOMLSParser.hpp 832686 2009-11-04 08:55:59Z borisk $
20 *
21 */
22
23 #if !defined(XERCESC_INCLUDE_GUARD_DOMLSPARSER_HPP)
24 #define XERCESC_INCLUDE_GUARD_DOMLSPARSER_HPP
25
26 #include <xercesc/dom/DOMConfiguration.hpp>
27 #include <xercesc/dom/DOMLSParserFilter.hpp>
28 #include <xercesc/util/XercesDefs.hpp>
29 #include <xercesc/validators/common/Grammar.hpp>
30
31 XERCES_CPP_NAMESPACE_BEGIN
32
33
34 class DOMErrorHandler;
35 class DOMLSInput;
36 class DOMNode;
37 class DOMDocument;
38
47 class CDOM_EXPORT DOMLSParser
48 {
49 protected :
50 // -----------------------------------------------------------------------
51 // Hidden constructors
52 // -----------------------------------------------------------------------
55 DOMLSParser() {};
57
58 private:
59 // -----------------------------------------------------------------------
60 // Unimplemented constructors and operators
61 // -----------------------------------------------------------------------
64 DOMLSParser(const DOMLSParser &);
65 DOMLSParser & operator = (const DOMLSParser &);
67
68 public:
69 // -----------------------------------------------------------------------
70 // All constructors are hidden, just the destructor is available
71 // -----------------------------------------------------------------------
78 virtual ~DOMLSParser() {};
80
81 // -----------------------------------------------------------------------
82 // Class types
83 // -----------------------------------------------------------------------
117 enum ActionType
118 {
119 ACTION_APPEND_AS_CHILDREN = 1,
120 ACTION_REPLACE_CHILDREN = 2,
121 ACTION_INSERT_BEFORE = 3,
122 ACTION_INSERT_AFTER = 4,
123 ACTION_REPLACE = 5
124 };
126
127 // -----------------------------------------------------------------------
128 // Virtual DOMLSParser interface
129 // -----------------------------------------------------------------------
132
133 // -----------------------------------------------------------------------
134 // Getter methods
135 // -----------------------------------------------------------------------
136
377 virtual DOMConfiguration* getDomConfig() = 0;
378
388 virtual const DOMLSParserFilter* getFilter() const = 0;
389
397 virtual bool getAsync() const = 0;
398
406 virtual bool getBusy() const = 0;
407
408 // -----------------------------------------------------------------------
409 // Setter methods
410 // -----------------------------------------------------------------------
431 virtual void setFilter(DOMLSParserFilter* const filter) = 0;
432
433 // -----------------------------------------------------------------------
434 // Parsing methods
435 // -----------------------------------------------------------------------
463 virtual DOMDocument* parse(const DOMLSInput* source) = 0;
464
492 virtual DOMDocument* parseURI(const XMLCh* const uri) = 0;
493
521 virtual DOMDocument* parseURI(const char* const uri) = 0;
522
590 virtual DOMNode* parseWithContext(const DOMLSInput* source, DOMNode* contextNode, const ActionType action) = 0;
591
600 virtual void abort() = 0;
602
603 // -----------------------------------------------------------------------
604 // Non-standard Extension
605 // -----------------------------------------------------------------------
614 virtual void release() = 0;
615
639 virtual void resetDocumentPool() = 0;
640
666 virtual Grammar* loadGrammar(const DOMLSInput* source,
667 const Grammar::GrammarType grammarType,
668 const bool toCache = false) = 0;
669
693 virtual Grammar* loadGrammar(const XMLCh* const systemId,
694 const Grammar::GrammarType grammarType,
695 const bool toCache = false) = 0;
696
720 virtual Grammar* loadGrammar(const char* const systemId,
721 const Grammar::GrammarType grammarType,
722 const bool toCache = false) = 0;
723
730 virtual Grammar* getGrammar(const XMLCh* const nameSpaceKey) const = 0;
731
737 virtual Grammar* getRootGrammar() const = 0;
738
745 virtual const XMLCh* getURIText(unsigned int uriId) const = 0;
746
750 virtual void resetCachedGrammarPool() = 0;
751
757 virtual XMLFilePos getSrcOffset() const = 0;
758
760
761 };
762
763
764 XERCES_CPP_NAMESPACE_END
765
766 #endif