00001 #ifndef IDOM_NamedNodeMap_HEADER_GUARD_ 00002 #define IDOM_NamedNodeMap_HEADER_GUARD_ 00003 00004 00005 /* 00006 * The Apache Software License, Version 1.1 00007 * 00008 * Copyright (c) 2001-2002 The Apache Software Foundation. All rights 00009 * reserved. 00010 * 00011 * Redistribution and use in source and binary forms, with or without 00012 * modification, are permitted provided that the following conditions 00013 * are met: 00014 * 00015 * 1. Redistributions of source code must retain the above copyright 00016 * notice, this list of conditions and the following disclaimer. 00017 * 00018 * 2. Redistributions in binary form must reproduce the above copyright 00019 * notice, this list of conditions and the following disclaimer in 00020 * the documentation and/or other materials provided with the 00021 * distribution. 00022 * 00023 * 3. The end-user documentation included with the redistribution, 00024 * if any, must include the following acknowledgment: 00025 * "This product includes software developed by the 00026 * Apache Software Foundation (http://www.apache.org/)." 00027 * Alternately, this acknowledgment may appear in the software itself, 00028 * if and wherever such third-party acknowledgments normally appear. 00029 * 00030 * 4. The names "Xerces" and "Apache Software Foundation" must 00031 * not be used to endorse or promote products derived from this 00032 * software without prior written permission. For written 00033 * permission, please contact apache\@apache.org. 00034 * 00035 * 5. Products derived from this software may not be called "Apache", 00036 * nor may "Apache" appear in their name, without prior written 00037 * permission of the Apache Software Foundation. 00038 * 00039 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 00040 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 00041 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 00042 * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR 00043 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 00044 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 00045 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF 00046 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 00047 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 00048 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 00049 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 00050 * SUCH DAMAGE. 00051 * ==================================================================== 00052 * 00053 * This software consists of voluntary contributions made by many 00054 * individuals on behalf of the Apache Software Foundation, and was 00055 * originally based on software copyright (c) 2001, International 00056 * Business Machines, Inc., http://www.ibm.com . For more information 00057 * on the Apache Software Foundation, please see 00058 * <http://www.apache.org/>. 00059 */ 00060 00061 /* 00062 * $Log: IDOM_NamedNodeMap.hpp,v $ 00063 * Revision 1.1 2002/05/11 20:13:46 bhavani 00064 * CR#CR062582# adding xercesc 1.7 file 00065 * 00066 * Revision 1.2 2002/02/04 21:11:55 tng 00067 * Remove the phrase "Experimental". 00068 * 00069 * Revision 1.1.1.1 2002/02/01 22:21:56 peiyongz 00070 * sane_include 00071 * 00072 * Revision 1.2 2001/05/11 13:25:53 tng 00073 * Copyright update. 00074 * 00075 * Revision 1.1.1.1 2001/04/03 00:14:30 andyh 00076 * IDOM 00077 * 00078 */ 00079 00080 #include <xercesc/util/XercesDefs.hpp> 00081 00082 class IDOM_Node; 00083 00095 class CDOM_EXPORT IDOM_NamedNodeMap { 00096 protected: 00097 IDOM_NamedNodeMap() {}; 00098 IDOM_NamedNodeMap(const IDOM_NamedNodeMap &other) {}; 00099 IDOM_NamedNodeMap & operator = (const IDOM_NamedNodeMap &other) {return *this;}; 00100 00101 00102 00103 public: 00106 virtual ~IDOM_NamedNodeMap() {}; 00107 00109 00112 00138 virtual IDOM_Node *setNamedItem(IDOM_Node *arg) = 0; 00139 00141 00143 00155 virtual IDOM_Node *item(unsigned int index) const = 0; 00156 00165 virtual IDOM_Node *getNamedItem(const XMLCh *name) const = 0; 00166 00173 virtual unsigned int getLength() const = 0; 00174 00176 00178 00194 virtual IDOM_Node *removeNamedItem(const XMLCh *name) = 0; 00195 00197 00199 00210 virtual IDOM_Node *getNamedItemNS(const XMLCh *namespaceURI, 00211 const XMLCh *localName) const = 0; 00212 00235 virtual IDOM_Node *setNamedItemNS(IDOM_Node *arg) = 0; 00236 00258 virtual IDOM_Node *removeNamedItemNS(const XMLCh *namespaceURI, 00259 const XMLCh *localName) = 0; 00260 00262 00263 }; 00264 00265 #endif 00266