~ubuntu-branches/ubuntu/gutsy/lasso/gutsy

« back to all changes in this revision

Viewing changes to lasso/xml/lib_logout_response.c

  • Committer: Bazaar Package Importer
  • Author(s): Stephan Hermann
  • Date: 2005-09-16 02:16:49 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20050916021649-lr5tuka6pfmmks44
Tags: 0.6.2-3ubuntu1
* debian/control: removed hardcoded php dependency, added php:Depends
  substvar
* debian/rules: added phpapiver, added substitution of php:Depends

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* $Id: lib_logout_response.c,v 1.4 2004/07/22 06:59:03 eraviart Exp $ 
 
1
/* $Id: lib_logout_response.c,v 1.14 2005/01/22 15:57:55 eraviart Exp $ 
2
2
 *
3
3
 * Lasso - A free implementation of the Liberty Alliance specifications.
4
4
 *
5
 
 * Copyright (C) 2004 Entr'ouvert
 
5
 * Copyright (C) 2004, 2005 Entr'ouvert
6
6
 * http://lasso.entrouvert.org
7
7
 * 
8
 
 * Authors: Nicolas Clapies <nclapies@entrouvert.com>
9
 
 *          Valery Febvre <vfebvre@easter-eggs.com>
 
8
 * Authors: See AUTHORS file in top-level directory.
10
9
 *
11
10
 * This program is free software; you can redistribute it and/or modify
12
11
 * it under the terms of the GNU General Public License as published by
26
25
#include <lasso/xml/lib_logout_response.h>
27
26
 
28
27
/*
29
 
The Schema fragment (liberty-idff-protocols-schema-v1.2.xsd):
30
 
 
31
 
<xs:element name="LogoutResponse" type="StatusResponseType"/>
32
 
 
33
 
*/
 
28
 * Schema fragment (liberty-idff-protocols-schema-v1.2.xsd):
 
29
 * 
 
30
 * <xs:element name="LogoutResponse" type="StatusResponseType"/>
 
31
 */
 
32
 
 
33
 
 
34
/*****************************************************************************/
 
35
/* private methods                                                           */
 
36
/*****************************************************************************/
34
37
 
35
38
/*****************************************************************************/
36
39
/* instance and class init functions                                         */
37
40
/*****************************************************************************/
38
41
 
39
42
static void
40
 
lasso_lib_logout_response_instance_init(LassoLibLogoutResponse *node)
 
43
instance_init(LassoLibLogoutResponse *node)
41
44
{
42
 
  LassoNodeClass *class = LASSO_NODE_GET_CLASS(LASSO_NODE(node));
43
 
 
44
 
  /* namespace herited from lib:StatusResponse */
45
 
  class->set_name(LASSO_NODE(node), "LogoutResponse");
46
45
}
47
46
 
48
47
static void
49
 
lasso_lib_logout_response_class_init(LassoLibLogoutResponseClass *klass)
50
 
{
51
 
}
52
 
 
53
 
GType lasso_lib_logout_response_get_type() {
54
 
  static GType logout_response_type = 0;
55
 
 
56
 
  if (!logout_response_type) {
57
 
    static const GTypeInfo logout_response_info = {
58
 
      sizeof (LassoLibLogoutResponseClass),
59
 
      NULL,
60
 
      NULL,
61
 
      (GClassInitFunc) lasso_lib_logout_response_class_init,
62
 
      NULL,
63
 
      NULL,
64
 
      sizeof(LassoLibLogoutResponse),
65
 
      0,
66
 
      (GInstanceInitFunc) lasso_lib_logout_response_instance_init,
67
 
    };
68
 
    
69
 
    logout_response_type = g_type_register_static(LASSO_TYPE_LIB_STATUS_RESPONSE,
70
 
                                                 "LassoLibLogoutResponse",
71
 
                                                 &logout_response_info, 0);
72
 
  }
73
 
  return logout_response_type;
74
 
}
75
 
 
76
 
LassoNode* lasso_lib_logout_response_new()
77
 
{
78
 
  return LASSO_NODE(g_object_new(LASSO_TYPE_LIB_LOGOUT_RESPONSE, NULL));
 
48
class_init(LassoLibLogoutResponseClass *klass)
 
49
{
 
50
        LassoNodeClass *nclass = LASSO_NODE_CLASS(klass);
 
51
 
 
52
        nclass->node_data = g_new0(LassoNodeClassData, 1);
 
53
        lasso_node_class_set_nodename(nclass, "LogoutResponse");
 
54
}
 
55
 
 
56
GType
 
57
lasso_lib_logout_response_get_type()
 
58
{
 
59
        static GType logout_response_type = 0;
 
60
 
 
61
        if (!logout_response_type) {
 
62
                static const GTypeInfo logout_response_info = {
 
63
                        sizeof (LassoLibLogoutResponseClass),
 
64
                        NULL,
 
65
                        NULL,
 
66
                        (GClassInitFunc) class_init,
 
67
                        NULL,
 
68
                        NULL,
 
69
                        sizeof(LassoLibLogoutResponse),
 
70
                        0,
 
71
                        (GInstanceInitFunc) instance_init,
 
72
                };
 
73
 
 
74
                logout_response_type = g_type_register_static(LASSO_TYPE_LIB_STATUS_RESPONSE,
 
75
                                "LassoLibLogoutResponse", &logout_response_info, 0);
 
76
        }
 
77
        return logout_response_type;
 
78
}
 
79
 
 
80
/**
 
81
 * lasso_lib_logout_response_new:
 
82
 *
 
83
 * Creates a new #LassoLibLogoutResponse object.
 
84
 *
 
85
 * Return value: a newly created #LassoLibLogoutResponse object
 
86
 **/
 
87
LassoSamlpResponseAbstract*
 
88
lasso_lib_logout_response_new()
 
89
{
 
90
        return g_object_new(LASSO_TYPE_LIB_LOGOUT_RESPONSE, NULL);
 
91
}
 
92
 
 
93
 
 
94
/**
 
95
 * lasso_lib_logout_response_new_full:
 
96
 * @providerID:
 
97
 * @statusCodeValue:
 
98
 * @request: the request this is a response to
 
99
 * @sign_type:
 
100
 * @sign_method:
 
101
 *
 
102
 * Creates a new #LassoLibLogoutResponse object and initializes it with the
 
103
 * parameters.
 
104
 *
 
105
 * Return value: a newly created #LassoLibLogoutResponse object
 
106
 **/
 
107
LassoSamlpResponseAbstract*
 
108
lasso_lib_logout_response_new_full(char *providerID, const char *statusCodeValue,
 
109
                LassoLibLogoutRequest *request,
 
110
                LassoSignatureType sign_type, LassoSignatureMethod sign_method)
 
111
{
 
112
        LassoLibStatusResponse *response;
 
113
 
 
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;
 
121
 
 
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);
 
127
 
 
128
        return LASSO_SAMLP_RESPONSE_ABSTRACT(response);
79
129
}