First cut at signing support.
[shibboleth/cpp-xmltooling.git] / xmltooling / io / AbstractXMLObjectMarshaller.h
index beed4b3..7d1928d 100644 (file)
@@ -36,15 +36,14 @@ namespace xmltooling {
         virtual ~AbstractXMLObjectMarshaller() {}\r
 \r
         /**\r
-         * @see Marshaller::marshall(XMLObject*,DOMDocument*)\r
+         * @see Marshaller::marshall(XMLObject*,DOMDocument*,const MarshallingContext*)\r
          */\r
-        DOMElement* marshall(XMLObject* xmlObject, DOMDocument* document=NULL) const;\r
+        DOMElement* marshall(XMLObject* xmlObject, DOMDocument* document=NULL, MarshallingContext* ctx=NULL) const;\r
 \r
         /**\r
-         * @see Marshaller::marshall(XMLObject*,DOMElement*)\r
+         * @see Marshaller::marshall(XMLObject*,DOMElement*,const MarshallingContext*)\r
          */\r
-        DOMElement* marshall(XMLObject* xmlObject, DOMElement* parentElement) const;\r
-    \r
+        DOMElement* marshall(XMLObject* xmlObject, DOMElement* parentElement, MarshallingContext* ctx=NULL) const;\r
         \r
     protected:\r
         AbstractXMLObjectMarshaller();\r
@@ -70,9 +69,12 @@ namespace xmltooling {
          * \r
          * @param xmlObject the XMLObject to marshall\r
          * @param targetElement the Element into which the XMLObject is marshalled into\r
+         * @param ctx           optional marshalling context\r
+         * \r
          * @throws MarshallingException thrown if there is a problem marshalling the object\r
+         * @throws SignatureException thrown if a problem occurs during signature creation \r
          */\r
-        void marshallInto(XMLObject& xmlObject, DOMElement* targetElement) const;\r
+        void marshallInto(XMLObject& xmlObject, DOMElement* targetElement, MarshallingContext* ctx) const;\r
     \r
         /**\r
          * Creates an xsi:type attribute, corresponding to the given type of the XMLObject, on the DOM element.\r