diff -r 000000000000 -r ba25891c3a9e secureswitools/swisistools/source/xmlparser/xerces/include/xercesc/dom/DOMXPathExpression.hpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/secureswitools/swisistools/source/xmlparser/xerces/include/xercesc/dom/DOMXPathExpression.hpp Thu Dec 17 08:51:10 2009 +0200 @@ -0,0 +1,124 @@ +/* +* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ +#ifndef DOMXPathExpression_HEADER_GUARD_ +#define DOMXPathExpression_HEADER_GUARD_ + +/* + * 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. + */ + +#include + +XERCES_CPP_NAMESPACE_BEGIN + +class DOMNode; +/** + * The DOMXPathExpression interface represents a parsed and resolved XPath expression. + * @since DOM Level 3 + */ +class CDOM_EXPORT DOMXPathExpression +{ + +protected: + // ----------------------------------------------------------------------- + // Hidden constructors + // ----------------------------------------------------------------------- + /** @name Hidden constructors */ + //@{ + DOMXPathExpression() {}; + //@} + +private: + // ----------------------------------------------------------------------- + // Unimplemented constructors and operators + // ----------------------------------------------------------------------- + /** @name Unimplemented constructors and operators */ + //@{ + DOMXPathExpression(const DOMXPathExpression &); + DOMXPathExpression& operator = (const DOMXPathExpression&); + //@} + +public: + // ----------------------------------------------------------------------- + // All constructors are hidden, just the destructor is available + // ----------------------------------------------------------------------- + /** @name Destructor */ + //@{ + /** + * Destructor + * + */ + virtual ~DOMXPathExpression() {}; + //@} + + // ----------------------------------------------------------------------- + // Virtual DOMDocument interface + // ----------------------------------------------------------------------- + /** @name Functions introduced in DOM Level 3 */ + //@{ + + /** + * Evaluates this XPath expression and returns a result. + * @param contextNode of type DOMNode The context is context + * node for the evaluation of this XPath expression. + * If the XPathEvaluator was obtained by casting the Document then this must + * be owned by the same document and must be a DOMDocument, DOMElement, + * DOMAttribute, DOMText, DOMCDATASection, + * DOMComment, DOMProcessingInstruction, or + * XPathNamespace. If the context node is a DOMText or a + * DOMCDATASection, then the context is interpreted as the whole logical + * text node as seen by XPath, unless the node is empty in which case it may not + * serve as the XPath context. + * @param type of type unsigned short If a specific type is specified, then the result + * will be coerced to return the specified type relying on XPath conversions and fail + * if the desired coercion is not possible. This must be one of the type codes of XPathResult. + * @param result of type void* The result specifies a specific result object which + * may be reused and returned by this method. If this is specified as nullor the + * implementation does not reuse the specified result, a new result object will be constructed + * and returned. + * For XPath 1.0 results, this object will be of type XPathResult. + * @return void* The result of the evaluation of the XPath expression. + * For XPath 1.0 results, this object will be of type XPathResult. + * @exception XPathException + * TYPE_ERR: Raised if the result cannot be converted to return the specified type. + * @exception DOMException + * WRONG_DOCUMENT_ERR: The DOMNode is from a document that is not supported by + * the XPathEvaluator that created this DOMXPathExpression. + * NOT_SUPPORTED_ERR: The Node is not a type permitted as an XPath context node or the + * request type is not permitted by this DOMXPathExpression. + */ + + virtual void* evaluate(DOMNode *contextNode, unsigned short type, void* result) const = 0; + //@} +}; + +XERCES_CPP_NAMESPACE_END + +#endif