DOMUserDataHandler.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$
*/
#if !defined(XERCESC_INCLUDE_GUARD_DOMUSERDATAHANDLER_HPP)
#define XERCESC_INCLUDE_GUARD_DOMUSERDATAHANDLER_HPP
#include <xercesc/util/XercesDefs.hpp>
#include <xercesc/dom/DOMNode.hpp>
XERCES_CPP_NAMESPACE_BEGIN
class CDOM_EXPORT DOMUserDataHandler {
protected:
// -----------------------------------------------------------------------
// Hidden constructors
// -----------------------------------------------------------------------
DOMUserDataHandler() {};
private:
// -----------------------------------------------------------------------
// Unimplemented constructors and operators
// -----------------------------------------------------------------------
DOMUserDataHandler(const DOMUserDataHandler &);
DOMUserDataHandler & operator = (const DOMUserDataHandler &);
public:
// -----------------------------------------------------------------------
// All constructors are hidden, just the destructor is available
// -----------------------------------------------------------------------
virtual ~DOMUserDataHandler() {};
// -----------------------------------------------------------------------
// Class Types
// -----------------------------------------------------------------------
enum DOMOperationType {
NODE_CLONED = 1,
NODE_IMPORTED = 2,
NODE_DELETED = 3,
NODE_RENAMED = 4,
NODE_ADOPTED = 5
};
// -----------------------------------------------------------------------
// Virtual DOMUserDataHandler interface
// -----------------------------------------------------------------------
virtual void handle(DOMOperationType operation,
const XMLCh* const key,
void* data,
const DOMNode* src,
DOMNode* dst) = 0;
};
XERCES_CPP_NAMESPACE_END
#endif
DOMNode.hpp
XercesDefs.hpp
CDOM_EXPORT
#define CDOM_EXPORT
Definition XercesDefs.hpp:166
XERCES_CPP_NAMESPACE_BEGIN
#define XERCES_CPP_NAMESPACE_BEGIN
Definition XercesDefs.hpp:112
XERCES_CPP_NAMESPACE_END
#define XERCES_CPP_NAMESPACE_END
Definition XercesDefs.hpp:113
XMLCh
char16_t XMLCh
Definition Xerces_autoconf_config.hpp:120
DOMNode
The DOMNode interface is the primary datatype for the entire Document Object Model.
Definition DOMNode.hpp:139
DOMUserDataHandler
When associating an object to a key on a node using setUserData the application can provide a handler...
Definition DOMUserDataHandler.hpp:40
DOMUserDataHandler::DOMOperationType
DOMOperationType
Operation Type.
Definition DOMUserDataHandler.hpp:98
DOMUserDataHandler::DOMUserDataHandler
DOMUserDataHandler()
Definition DOMUserDataHandler.hpp:47
DOMUserDataHandler::~DOMUserDataHandler
virtual ~DOMUserDataHandler()
Destructor.
Definition DOMUserDataHandler.hpp:70
DOMUserDataHandler::handle
virtual void handle(DOMOperationType operation, const XMLCh *const key, void *data, const DOMNode *src, DOMNode *dst)=0
This method is called whenever the node for which this handler is registered is imported or cloned.