From edef31d0626a510400b9025c559c7d46fb036514 Mon Sep 17 00:00:00 2001 From: snowdrop Date: Tue, 8 Jun 2004 12:54:09 +0000 Subject: added soap_env_add_custom() --- libcsoap/soap-env.h | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) (limited to 'libcsoap/soap-env.h') diff --git a/libcsoap/soap-env.h b/libcsoap/soap-env.h index 5cb0f57..5f29c14 100644 --- a/libcsoap/soap-env.h +++ b/libcsoap/soap-env.h @@ -1,5 +1,5 @@ /****************************************************************** - * $Id: soap-env.h,v 1.4 2004/05/14 09:27:52 snowdrop Exp $ + * $Id: soap-env.h,v 1.5 2004/06/08 12:54:09 snowdrop Exp $ * * CSOAP Project: A SOAP client/server library in C * Copyright (C) 2003 Ferhat Ayaz @@ -158,6 +158,17 @@ SoapEnv *soap_env_new_from_doc(xmlDocPtr doc); SoapEnv *soap_env_new_from_buffer(const char* buffer); +/* --------------------------------------------------- */ +/* XML Serializer functions and typedefs */ +/* --------------------------------------------------- */ + +typedef void (*XmlSerializerCallback) + (void* /*obj*/, const char * /*root_element_name*/, + void (*OnStartElement)(const char* element_name, int attr_count, char **keys, char **values, void* userData), + void (*OnCharacters)(const char* element_name, const char* chars, void* userData), + void (*OnEndElement)(const char* element_name, void* userData), + void* /* userdata*/); + /* ------------------------------------------------------ */ /* XML build and stack function */ @@ -186,6 +197,17 @@ soap_env_add_item(SoapEnv* env, const char *type, const char *name, const char *value); +/** + Serialize and adds obj to the envelope. + TODO: Document this function ! +
+ Important: + + */ +void +soap_env_add_custom(SoapEnv* env, void *obj, XmlSerializerCallback cb, + const char *type, const char *name); + /** Same as soap_env_add_item() with c style arguments like in printf(). "value" is the format string. @@ -284,6 +306,9 @@ int soap_env_find_methodname(SoapEnv *env, char *methodname); + + + #endif -- cgit v1.1-32-gdbae