diff options
| author | Nicolas Clapies <nclapies@entrouvert.com> | 2004-05-05 17:05:18 +0000 |
|---|---|---|
| committer | Nicolas Clapies <nclapies@entrouvert.com> | 2004-05-05 17:05:18 +0000 |
| commit | b57e1b705be534e86a4273e036ab7c94f38ff2d0 (patch) | |
| tree | 04193bfe1982e26ffcaf50fe61361a1bf324f55a /python/protocols | |
| parent | 288995dd19a0a5eb1af0d32ffe867a0e37a59a8a (diff) | |
| download | lasso-b57e1b705be534e86a4273e036ab7c94f38ff2d0.tar.gz lasso-b57e1b705be534e86a4273e036ab7c94f38ff2d0.tar.xz lasso-b57e1b705be534e86a4273e036ab7c94f38ff2d0.zip | |
update of LogoutRequest LogoutResponse classes
Diffstat (limited to 'python/protocols')
| -rw-r--r-- | python/protocols/py_logout_request.c | 42 | ||||
| -rw-r--r-- | python/protocols/py_logout_request.h | 2 | ||||
| -rw-r--r-- | python/protocols/py_logout_response.c | 77 | ||||
| -rw-r--r-- | python/protocols/py_logout_response.h | 5 |
4 files changed, 110 insertions, 16 deletions
diff --git a/python/protocols/py_logout_request.c b/python/protocols/py_logout_request.c index e6ead2ea..fde13d34 100644 --- a/python/protocols/py_logout_request.c +++ b/python/protocols/py_logout_request.c @@ -44,8 +44,8 @@ PyObject *LassoLogoutRequest_wrap(LassoLogoutRequest *request) { PyObject *logout_request_new(PyObject *self, PyObject *args) { const xmlChar *providerID; const xmlChar *nameIdentifier; - const xmlChar *nameQualifier = NULL; - const xmlChar *format = NULL; + const xmlChar *nameQualifier; + const xmlChar *format; LassoNode *request; @@ -56,8 +56,42 @@ PyObject *logout_request_new(PyObject *self, PyObject *args) { } else return NULL; - request = lasso_logout_request_new(providerID, nameIdentifier, - nameQualifier, format); + request = lasso_logout_request_new(providerID, + nameIdentifier, nameQualifier, format); + + return (LassoLogoutRequest_wrap(LASSO_LOGOUT_REQUEST(request))); +} + +PyObject *logout_request_new_from_soap(PyObject *self, PyObject *args) { + const xmlChar *soap_buffer; + + LassoNode *request; + + if (CheckArgs(args, "S:logout_request_new_from_soap")) { + if(!PyArg_ParseTuple(args, (char *) "s:logout_request_new_from_soap", + &soap_buffer)) + return NULL; + } + else return NULL; + + request = lasso_logout_request_new_from_soap(soap_buffer); + + return (LassoLogoutRequest_wrap(LASSO_LOGOUT_REQUEST(request))); +} + +PyObject *logout_request_new_from_query(PyObject *self, PyObject *args) { + const xmlChar *query; + + LassoNode *request; + + if (CheckArgs(args, "S:logout_request_new_from_query")) { + if(!PyArg_ParseTuple(args, (char *) "s:logout_request_new_from_query", + &query)) + return NULL; + } + else return NULL; + + request = lasso_logout_request_new_from_query(query); return (LassoLogoutRequest_wrap(LASSO_LOGOUT_REQUEST(request))); } diff --git a/python/protocols/py_logout_request.h b/python/protocols/py_logout_request.h index 4357767f..38cf1e46 100644 --- a/python/protocols/py_logout_request.h +++ b/python/protocols/py_logout_request.h @@ -39,5 +39,7 @@ PyObject *LassoLogoutRequest_wrap(LassoLogoutRequest *request); PyObject *logout_request_getattr(PyObject *self, PyObject *args); PyObject *logout_request_new(PyObject *self, PyObject *args); +PyObject *logout_request_new_from_soap(PyObject *self, PyObject *args); +PyObject *logout_request_new_from_query(PyObject *self, PyObject *args); #endif /* __PYLASSO_PY_LOGOUT_REQUEST_H__ */ diff --git a/python/protocols/py_logout_response.c b/python/protocols/py_logout_response.c index ee71dad2..32a8a87d 100644 --- a/python/protocols/py_logout_response.c +++ b/python/protocols/py_logout_response.c @@ -26,7 +26,6 @@ #include "../lassomod.h" #include "py_logout_response.h" -#include "py_logout_request.h" PyObject *LassoLogoutResponse_wrap(LassoLogoutResponse *response) { PyObject *ret; @@ -42,24 +41,80 @@ PyObject *LassoLogoutResponse_wrap(LassoLogoutResponse *response) { /******************************************************************************/ -PyObject *logout_response_new(PyObject *self, PyObject *args) { +PyObject *logout_response_new_from_request_soap(PyObject *self, PyObject *args) { + const xmlChar *request_soap_dump; const xmlChar *providerID; - const xmlChar *statusCodeValue; - PyObject *request_obj; + const xmlChar *status_code_value; - LassoNode *response; + LassoNode *response = NULL; - if (CheckArgs(args, "SSO:logout_response_new")) { - if(!PyArg_ParseTuple(args, (char *) "ssO:logout_response_new", + if (CheckArgs(args, "SSS:logout_response_new_from_request_soap")) { + if(!PyArg_ParseTuple(args, (char *) "sss:logout_response_new_from_request_soap", + &request_soap_dump, &providerID, - &statusCodeValue, &request_obj)) + &status_code_value)) return NULL; } else return NULL; - response = lasso_logout_response_new(providerID, - statusCodeValue, - LassoLogoutRequest_get(request_obj)); + response = lasso_logout_response_new_from_request_soap(request_soap_dump, + providerID, + status_code_value); + + return (LassoLogoutResponse_wrap(LASSO_LOGOUT_RESPONSE(response))); +} + +PyObject *logout_response_new_from_soap(PyObject *self, PyObject *args) { + const xmlChar *request_soap_dump; + + LassoNode *response = NULL; + + if (CheckArgs(args, "S:logout_response_new_from_soap")) { + if(!PyArg_ParseTuple(args, (char *) "s:logout_response_new_from_soap", + &request_soap_dump)) + return NULL; + } + else return NULL; + + response = lasso_logout_response_new_from_soap(request_soap_dump); + + return (LassoLogoutResponse_wrap(LASSO_LOGOUT_RESPONSE(response))); +} + +PyObject *logout_response_new_from_dump(PyObject *self, PyObject *args) { + const xmlChar *dump; + + LassoNode *response = NULL; + + if (CheckArgs(args, "S:logout_response_new_from_dump")) { + if(!PyArg_ParseTuple(args, (char *) "s:logout_response_new_from_dump", + &dump)) + return NULL; + } + else return NULL; + + response = lasso_logout_response_new_from_soap(dump); + + return (LassoLogoutResponse_wrap(LASSO_LOGOUT_RESPONSE(response))); +} + +PyObject *logout_response_new_from_request_query(PyObject *self, PyObject *args) { + const xmlChar *query; + const xmlChar *providerID; + const xmlChar *status_code_value; + + LassoNode *response = NULL; + + if (CheckArgs(args, "SSS:logout_response_new_from_request_query")) { + if(!PyArg_ParseTuple(args, (char *) "sss:logout_response_new_from_request_query", + &query, + &providerID, + &status_code_value)) + return NULL; + } + else return NULL; + + response = lasso_logout_response_new_from_request_query(query, providerID, status_code_value); return (LassoLogoutResponse_wrap(LASSO_LOGOUT_RESPONSE(response))); } diff --git a/python/protocols/py_logout_response.h b/python/protocols/py_logout_response.h index faad0c25..2994444d 100644 --- a/python/protocols/py_logout_response.h +++ b/python/protocols/py_logout_response.h @@ -35,6 +35,9 @@ typedef struct { #define LassoLogoutResponse_get(v) (((v) == Py_None) ? NULL : (((LassoLogoutResponse_object *)(PyObject_GetAttr(v, PyString_FromString("_o"))))->obj)) PyObject *LassoLogoutResponse_wrap(LassoLogoutResponse *response); -PyObject *logout_response_new(PyObject *self, PyObject *args); +PyObject *logout_response_new_from_request_soap(PyObject *self, PyObject *args); +PyObject *logout_response_new_from_soap(PyObject *self, PyObject *args); +PyObject *logout_response_new_from_dump(PyObject *self, PyObject *args); +PyObject *logout_response_new_from_request_query(PyObject *self, PyObject *args); #endif /* __PYLASSO_PY_LOGOUT_RESPONSE_H__ */ |
