26
25
#include <lasso/xml/lib_logout_response.h>
29
The Schema fragment (liberty-idff-protocols-schema-v1.2.xsd):
31
<xs:element name="LogoutResponse" type="StatusResponseType"/>
28
* Schema fragment (liberty-idff-protocols-schema-v1.2.xsd):
30
* <xs:element name="LogoutResponse" type="StatusResponseType"/>
34
/*****************************************************************************/
36
/*****************************************************************************/
35
38
/*****************************************************************************/
36
39
/* instance and class init functions */
37
40
/*****************************************************************************/
40
lasso_lib_logout_response_instance_init(LassoLibLogoutResponse *node)
43
instance_init(LassoLibLogoutResponse *node)
42
LassoNodeClass *class = LASSO_NODE_GET_CLASS(LASSO_NODE(node));
44
/* namespace herited from lib:StatusResponse */
45
class->set_name(LASSO_NODE(node), "LogoutResponse");
49
lasso_lib_logout_response_class_init(LassoLibLogoutResponseClass *klass)
53
GType lasso_lib_logout_response_get_type() {
54
static GType logout_response_type = 0;
56
if (!logout_response_type) {
57
static const GTypeInfo logout_response_info = {
58
sizeof (LassoLibLogoutResponseClass),
61
(GClassInitFunc) lasso_lib_logout_response_class_init,
64
sizeof(LassoLibLogoutResponse),
66
(GInstanceInitFunc) lasso_lib_logout_response_instance_init,
69
logout_response_type = g_type_register_static(LASSO_TYPE_LIB_STATUS_RESPONSE,
70
"LassoLibLogoutResponse",
71
&logout_response_info, 0);
73
return logout_response_type;
76
LassoNode* lasso_lib_logout_response_new()
78
return LASSO_NODE(g_object_new(LASSO_TYPE_LIB_LOGOUT_RESPONSE, NULL));
48
class_init(LassoLibLogoutResponseClass *klass)
50
LassoNodeClass *nclass = LASSO_NODE_CLASS(klass);
52
nclass->node_data = g_new0(LassoNodeClassData, 1);
53
lasso_node_class_set_nodename(nclass, "LogoutResponse");
57
lasso_lib_logout_response_get_type()
59
static GType logout_response_type = 0;
61
if (!logout_response_type) {
62
static const GTypeInfo logout_response_info = {
63
sizeof (LassoLibLogoutResponseClass),
66
(GClassInitFunc) class_init,
69
sizeof(LassoLibLogoutResponse),
71
(GInstanceInitFunc) instance_init,
74
logout_response_type = g_type_register_static(LASSO_TYPE_LIB_STATUS_RESPONSE,
75
"LassoLibLogoutResponse", &logout_response_info, 0);
77
return logout_response_type;
81
* lasso_lib_logout_response_new:
83
* Creates a new #LassoLibLogoutResponse object.
85
* Return value: a newly created #LassoLibLogoutResponse object
87
LassoSamlpResponseAbstract*
88
lasso_lib_logout_response_new()
90
return g_object_new(LASSO_TYPE_LIB_LOGOUT_RESPONSE, NULL);
95
* lasso_lib_logout_response_new_full:
98
* @request: the request this is a response to
102
* Creates a new #LassoLibLogoutResponse object and initializes it with the
105
* Return value: a newly created #LassoLibLogoutResponse object
107
LassoSamlpResponseAbstract*
108
lasso_lib_logout_response_new_full(char *providerID, const char *statusCodeValue,
109
LassoLibLogoutRequest *request,
110
LassoSignatureType sign_type, LassoSignatureMethod sign_method)
112
LassoLibStatusResponse *response;
114
response = g_object_new(LASSO_TYPE_LIB_LOGOUT_RESPONSE, NULL);
115
lasso_samlp_response_abstract_fill(
116
LASSO_SAMLP_RESPONSE_ABSTRACT(response),
117
LASSO_SAMLP_REQUEST_ABSTRACT(request)->RequestID,
118
request->ProviderID);
119
LASSO_SAMLP_RESPONSE_ABSTRACT(response)->sign_type = sign_type;
120
LASSO_SAMLP_RESPONSE_ABSTRACT(response)->sign_method = sign_method;
122
response->ProviderID = g_strdup(providerID);
123
response->RelayState = g_strdup(request->RelayState);
124
response->Status = lasso_samlp_status_new();
125
response->Status->StatusCode = lasso_samlp_status_code_new();
126
response->Status->StatusCode->Value = g_strdup(statusCodeValue);
128
return LASSO_SAMLP_RESPONSE_ABSTRACT(response);