summaryrefslogtreecommitdiffstats
path: root/python/protocols
diff options
context:
space:
mode:
authorNicolas Clapies <nclapies@entrouvert.com>2004-05-05 17:05:18 +0000
committerNicolas Clapies <nclapies@entrouvert.com>2004-05-05 17:05:18 +0000
commitb57e1b705be534e86a4273e036ab7c94f38ff2d0 (patch)
tree04193bfe1982e26ffcaf50fe61361a1bf324f55a /python/protocols
parent288995dd19a0a5eb1af0d32ffe867a0e37a59a8a (diff)
downloadlasso-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.c42
-rw-r--r--python/protocols/py_logout_request.h2
-rw-r--r--python/protocols/py_logout_response.c77
-rw-r--r--python/protocols/py_logout_response.h5
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__ */