summaryrefslogtreecommitdiffstats
path: root/libcsoap/soap-router.h
diff options
context:
space:
mode:
authorGravatar m0gg2006-11-23 15:27:32 +0000
committerGravatar m0gg2006-11-23 15:27:32 +0000
commit6457c46897d6e0c63476bf4ba4ca14b4844fac0d (patch)
treeb1f892f4f1d7cb58ff50660c73947847447a14ce /libcsoap/soap-router.h
parent06906cd337028c9e42e10916d08db64e1e22d0f1 (diff)
downloadcsoap-6457c46897d6e0c63476bf4ba4ca14b4844fac0d.tar.gz
csoap-6457c46897d6e0c63476bf4ba4ca14b4844fac0d.tar.bz2
Code cleanup
Diffstat (limited to 'libcsoap/soap-router.h')
-rw-r--r--libcsoap/soap-router.h117
1 files changed, 74 insertions, 43 deletions
diff --git a/libcsoap/soap-router.h b/libcsoap/soap-router.h
index da6199f..69f0e86 100644
--- a/libcsoap/soap-router.h
+++ b/libcsoap/soap-router.h
@@ -1,5 +1,5 @@
/******************************************************************
- * $Id: soap-router.h,v 1.10 2006/11/21 20:59:02 m0gg Exp $
+ * $Id: soap-router.h,v 1.11 2006/11/23 15:27:33 m0gg Exp $
*
* CSOAP Project: A SOAP client/server library in C
* Copyright (C) 2003 Ferhat Ayaz
@@ -25,72 +25,103 @@
#define __csoap_router_h
/**
- The router object. A router can store a set of
- services. A service is a C function.
+ *
+ * Authentication callback function for a cSOAP service.
+ *
+ */
+typedef int (*soap_auth) (struct SoapEnv *request, const char *user, const char *pass);
+
+/**
+ *
+ * The router object. A router can store a set of
+ * services. A service is a C function.
+ *
*/
-typedef struct _SoapRouter
+struct SoapRouter
{
SoapServiceNode *service_head;
SoapServiceNode *service_tail;
SoapService *default_service;
- httpd_auth auth;
- xmlDocPtr wsdl;
-} SoapRouter;
+ soap_auth auth;
+ xmlDocPtr description;
+};
#ifdef __cplusplus
extern "C" {
#endif
/**
- Creates a new router object. Create a router if
- you are implementing a soap server. Then register
- the services to this router.
- <P>A router points also to http url context.
-
- @returns Soap router
- @see soap_router_free
+ *
+ * Creates a new router object. Create a router if
+ * you are implementing a soap server. Then register
+ * the services to this router.
+ * <P>A router points also to http url context.
+ *
+ * @returns Soap router
+ *
+ * @see soap_router_free
+ *
*/
-extern SoapRouter *soap_router_new(void);
-
+extern struct SoapRouter *soap_router_new(void);
/**
- Registers a SOAP service (in this case a C function)
- to the router.
-
- @param router The router object
- @param func Function to register as a soap service
- @param method Method name to call the function from
- the client side.
- @param urn The urn for this service
+ *
+ * Registers a SOAP service (in this case a C function)
+ * to the router.
+ *
+ * @param router The router object
+ * @param func Function to register as a soap service
+ * @param method Method name to call the function from
+ * the client side.
+ * @param urn The urn for this service
+ *
*/
-extern herror_t soap_router_register_service(SoapRouter * router,
- SoapServiceFunc func,
- const char *method, const char *urn);
-
-extern herror_t soap_router_register_default_service(SoapRouter * router, SoapServiceFunc func, const char *method, const char *urn);
-
-
-extern void soap_router_register_description(SoapRouter *router, xmlDocPtr doc);
-
-extern void soap_router_register_security(SoapRouter *router, httpd_auth auth);
+extern herror_t soap_router_register_service(struct SoapRouter *router, SoapServiceFunc func, const char *method, const char *urn);
/**
- Searches for a registered soap service.
+ *
+ * Register a default service for the router.
+ *
+ */
+extern herror_t soap_router_register_default_service(struct SoapRouter * router, SoapServiceFunc func, const char *method, const char *urn);
- @param router The router object
- @param urn URN of the service
- @param method The name under which the service was registered.
+/**
+ *
+ * Register a service description for the router.
+ *
+ */
+extern void soap_router_register_description(struct SoapRouter *router, xmlDocPtr doc);
- @return The service if found, NULL otherwise.
+/**
+ *
+ * Register a security provider for the router.
+ *
*/
-extern SoapService *soap_router_find_service(SoapRouter * router, const char *urn, const char *method);
+extern void soap_router_register_security(struct SoapRouter *router, soap_auth auth);
/**
- Frees the router object.
+ *
+ * Searches for a registered soap service.
+ *
+ * @param router The router object
+ * @param urn URN of the service
+ * @param method The name under which the service was registered.
+ *
+ * @return The service if found, NULL otherwise.
+ *
+ */
+extern SoapService *soap_router_find_service(struct SoapRouter *router, const char *urn, const char *method);
- @param router The router object to free
+/**
+ *
+ * Frees the router object.
+ *
+ * @param router The router object to free
+ *
+ * @see soap_router_new
+ *
*/
-extern void soap_router_free(SoapRouter * router);
+extern void soap_router_free(struct SoapRouter * router);
#ifdef __cplusplus
}