DOMLSParser.hpp
Go to the documentation of this file.
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*
* $Id: DOMLSParser.hpp 1800006 2017-06-27 02:40:16Z scantor $
*
*/
#if !defined(XERCESC_INCLUDE_GUARD_DOMLSPARSER_HPP)
#define XERCESC_INCLUDE_GUARD_DOMLSPARSER_HPP
#include <xercesc/dom/DOMConfiguration.hpp>
#include <xercesc/dom/DOMLSParserFilter.hpp>
#include <xercesc/util/XercesDefs.hpp>
#include <xercesc/validators/common/Grammar.hpp>
XERCES_CPP_NAMESPACE_BEGIN
class DOMErrorHandler;
class DOMLSInput;
class DOMNode;
class DOMDocument;
class CDOM_EXPORT DOMLSParser
{
protected :
// -----------------------------------------------------------------------
// Hidden constructors
// -----------------------------------------------------------------------
DOMLSParser() {};
private:
// -----------------------------------------------------------------------
// Unimplemented constructors and operators
// -----------------------------------------------------------------------
DOMLSParser(const DOMLSParser &);
DOMLSParser & operator = (const DOMLSParser &);
public:
// -----------------------------------------------------------------------
// All constructors are hidden, just the destructor is available
// -----------------------------------------------------------------------
virtual ~DOMLSParser() {};
// -----------------------------------------------------------------------
// Class types
// -----------------------------------------------------------------------
enum ActionType
{
ACTION_APPEND_AS_CHILDREN = 1,
ACTION_REPLACE_CHILDREN = 2,
ACTION_INSERT_BEFORE = 3,
ACTION_INSERT_AFTER = 4,
ACTION_REPLACE = 5
};
// -----------------------------------------------------------------------
// Virtual DOMLSParser interface
// -----------------------------------------------------------------------
// -----------------------------------------------------------------------
// Getter methods
// -----------------------------------------------------------------------
virtual DOMConfiguration* getDomConfig() = 0;
virtual const DOMLSParserFilter* getFilter() const = 0;
virtual bool getAsync() const = 0;
virtual bool getBusy() const = 0;
// -----------------------------------------------------------------------
// Setter methods
// -----------------------------------------------------------------------
virtual void setFilter(DOMLSParserFilter* const filter) = 0;
// -----------------------------------------------------------------------
// Parsing methods
// -----------------------------------------------------------------------
virtual DOMDocument* parse(const DOMLSInput* source) = 0;
virtual DOMDocument* parseURI(const XMLCh* const uri) = 0;
virtual DOMDocument* parseURI(const char* const uri) = 0;
virtual DOMNode* parseWithContext(const DOMLSInput* source, DOMNode* contextNode, const ActionType action) = 0;
virtual void abort() = 0;
// -----------------------------------------------------------------------
// Non-standard Extension
// -----------------------------------------------------------------------
virtual void release() = 0;
virtual void resetDocumentPool() = 0;
virtual Grammar* loadGrammar(const DOMLSInput* source,
const Grammar::GrammarType grammarType,
const bool toCache = false) = 0;
virtual Grammar* loadGrammar(const XMLCh* const systemId,
const Grammar::GrammarType grammarType,
const bool toCache = false) = 0;
virtual Grammar* loadGrammar(const char* const systemId,
const Grammar::GrammarType grammarType,
const bool toCache = false) = 0;
virtual Grammar* getGrammar(const XMLCh* const nameSpaceKey) const = 0;
virtual Grammar* getRootGrammar() const = 0;
virtual const XMLCh* getURIText(unsigned int uriId) const = 0;
virtual void resetCachedGrammarPool() = 0;
virtual XMLFilePos getSrcOffset() const = 0;
};
XERCES_CPP_NAMESPACE_END
#endif
DOMConfiguration
The DOMConfiguration interface represents the configuration of a document and maintains a table of re...
Definition: DOMConfiguration.hpp:350
DOMLSParser::DOMLSParser
DOMLSParser()
Definition: DOMLSParser.hpp:55
DOMLSInput
This interface represents a single input source for an XML entity.
Definition: DOMLSInput.hpp:59
DOMConfiguration.hpp
DOMLSParser
DOMLSParser provides an API for parsing XML documents and building the corresponding DOM document tre...
Definition: DOMLSParser.hpp:47
DOMLSParserFilter
Definition: DOMLSParserFilter.hpp:45
XercesDefs.hpp
XMLFilePos
XMLUInt64 XMLFilePos
Definition: Xerces_autoconf_config.hpp:137
DOMErrorHandler
Basic interface for DOM error handlers.
Definition: DOMErrorHandler.hpp:46
DOMDocument
The DOMDocument interface represents the entire XML document.
Definition: DOMDocument.hpp:64
CDOM_EXPORT
#define CDOM_EXPORT
Definition: XercesDefs.hpp:166
XMLCh
uint16_t XMLCh
Definition: Xerces_autoconf_config.hpp:118
XERCES_CPP_NAMESPACE_BEGIN
#define XERCES_CPP_NAMESPACE_BEGIN
Definition: XercesDefs.hpp:112
DOMLSParser::~DOMLSParser
virtual ~DOMLSParser()
Destructor.
Definition: DOMLSParser.hpp:78
XERCES_CPP_NAMESPACE_END
#define XERCES_CPP_NAMESPACE_END
Definition: XercesDefs.hpp:113
DOMLSParser::ActionType
ActionType
A set of possible actions for the parseWithContext method.
Definition: DOMLSParser.hpp:117
DOMNode
The DOMNode interface is the primary datatype for the entire Document Object Model.
Definition: DOMNode.hpp:139
DOMLSParserFilter.hpp