Moved DOM methods up the tree, add copy c'tors, KeyInfo sample
[shibboleth/xmltooling.git] / xmltooling / AbstractAttributeExtensibleXMLObject.h
index e474ff8..09bfb7c 100644 (file)
 /**\r
  * @file AbstractAttributeExtensibleXMLObject.h\r
  * \r
- * An abstract implementation of a DOM-caching AttributeExtensibleXMLObject \r
+ * An abstract implementation of an AttributeExtensibleXMLObject \r
  */\r
 \r
-#if !defined(__xmltooling_absattrextxmlobj_h__)\r
+#ifndef __xmltooling_absattrextxmlobj_h__\r
 #define __xmltooling_absattrextxmlobj_h__\r
 \r
 #include <map>\r
 namespace xmltooling {\r
 \r
     /**\r
-     * An abstract implementation of a DOM-caching AttributeExtensibleXMLObject.\r
+     * An abstract implementation of an AttributeExtensibleXMLObject.\r
      */\r
-    class XMLTOOL_API AbstractAttributeExtensibleXMLObject : public virtual AttributeExtensibleXMLObject, public virtual AbstractDOMCachingXMLObject\r
+    class XMLTOOL_API AbstractAttributeExtensibleXMLObject : public virtual AttributeExtensibleXMLObject, public virtual AbstractXMLObject\r
     {\r
     public:\r
         virtual ~AbstractAttributeExtensibleXMLObject();\r
         \r
-        /**\r
-         * @see AttributeExtensibleXMLObject::getAttribute()\r
-         */\r
         virtual const XMLCh* getAttribute(QName& qualifiedName) const {\r
             std::map<QName,XMLCh*>::const_iterator i=m_attributeMap.find(qualifiedName);\r
             return (i==m_attributeMap.end()) ? NULL : i->second;\r
         }\r
         \r
-        /**\r
-         * @see AttributeExtensibleXMLObject::setAttribute()\r
-         */\r
         virtual void setAttribute(QName& qualifiedName, const XMLCh* value);\r
     \r
      protected:\r
         AbstractAttributeExtensibleXMLObject() {}\r
 \r
+        /** Copy constructor. */\r
+        AbstractAttributeExtensibleXMLObject(const AbstractAttributeExtensibleXMLObject& src);\r
+\r
+        /** Map of arbitrary attributes. */\r
         std::map<QName,XMLCh*> m_attributeMap;\r
     };\r
     \r