Move request cookie processing down to base class.
[shibboleth/xmltooling.git] / xmltooling / ElementProxy.h
index 6b5c44e..8c814b3 100644 (file)
@@ -1,5 +1,5 @@
 /*
- *  Copyright 2001-2006 Internet2
+ *  Copyright 2001-2007 Internet2
  * 
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 #ifndef __xmltooling_eleproxy_h__
 #define __xmltooling_eleproxy_h__
 
-#include <xmltooling/XMLObject.h>
-#include <xmltooling/util/XMLObjectChildrenList.h>
-
-using namespace xercesc;
+#include <xmltooling/AttributeExtensibleXMLObject.h>
+#include <xmltooling/ElementExtensibleXMLObject.h>
 
 namespace xmltooling {
 
     /**
-     * An XMLObject that exposes its children via mutable list.
+     * An XMLObject with an open content model.
      */
-    class XMLTOOL_API ElementProxy : public virtual XMLObject
+    class XMLTOOL_API ElementProxy : public virtual AttributeExtensibleXMLObject, public virtual ElementExtensibleXMLObject
     {
-    public:
+    protected:
         ElementProxy() {}
-        virtual ~ElementProxy() {}
-        
-        /**
-         * Gets a mutable list of child objects
-         * 
-         * @return  mutable list of child objects
-         */
-        virtual ListOf(XMLObject) getXMLObjects()=0;
 
-        /**
-         * Gets an immutable list of child objects
-         * 
-         * @return  immutable list of child objects
-         */
-        virtual const std::list<XMLObject*>& getXMLObjects() const=0;
+    public:
+        virtual ~ElementProxy() {}
     };
     
 };