1 /*
2  * Copyright 1999-2006 University of Chicago
3  * 
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  * 
8  * http://www.apache.org/licenses/LICENSE-2.0
9  * 
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17
18 /*
19  * This file is automatically generated by the Globus WSDLtoC converter
20  */
21
22 #include "xsd_QName.h"
23 #include "globus_soap_message.h"
24 #include "globus_xsd_type_info.h"
25 #include "wsse_FaultcodeEnum.h"
26
27 xsd_QName wsse_FaultcodeEnum_qname =
28 {
29     "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd",
30     "FaultcodeEnum"
31 };
32
33
34 xsd_QName wsse_FaultcodeEnum_wsse_UnsupportedSecurityToken =
35 {
36     "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd",
37     "UnsupportedSecurityToken"
38 };
39
40 xsd_QName wsse_FaultcodeEnum_wsse_UnsupportedAlgorithm =
41 {
42     "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd",
43     "UnsupportedAlgorithm"
44 };
45
46 xsd_QName wsse_FaultcodeEnum_wsse_InvalidSecurity =
47 {
48     "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd",
49     "InvalidSecurity"
50 };
51
52 xsd_QName wsse_FaultcodeEnum_wsse_InvalidSecurityToken =
53 {
54     "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd",
55     "InvalidSecurityToken"
56 };
57
58 xsd_QName wsse_FaultcodeEnum_wsse_FailedAuthentication =
59 {
60     "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd",
61     "FailedAuthentication"
62 };
63
64 xsd_QName wsse_FaultcodeEnum_wsse_FailedCheck =
65 {
66     "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd",
67     "FailedCheck"
68 };
69
70 xsd_QName wsse_FaultcodeEnum_wsse_SecurityTokenUnavailable =
71 {
72     "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd",
73     "SecurityTokenUnavailable"
74 };
75
76 static
77 globus_bool_t
78 wsse_FaultcodeEnum_l_is_valid_restriction(
79     const wsse_FaultcodeEnum *              instance);
80
81
82 globus_result_t
83 wsse_FaultcodeEnum_serialize_wrapper(
84     const xsd_QName *                   element_qname,
85     const void *                        instance,
86     globus_soap_message_handle_t        message_handle,
87     globus_xsd_element_options_t        options)
88 0 {
89 0     return wsse_FaultcodeEnum_serialize(
90         element_qname,
91         (wsse_FaultcodeEnum *) instance,
92         message_handle, options);
93 }
94
95 globus_result_t
96 wsse_FaultcodeEnum_deserialize_pointer_wrapper(
97     const xsd_QName *                   element_qname,
98     void **                             ip,
99     globus_soap_message_handle_t        message_handle,
100     globus_xsd_element_options_t        options)
101 0 {
102 0     return wsse_FaultcodeEnum_deserialize_pointer(
103         element_qname,
104         (wsse_FaultcodeEnum **) ip,
105         message_handle, options);
106 }
107
108 globus_result_t
109 wsse_FaultcodeEnum_init_wrapper(void **object)
110 0 {
111 0     return wsse_FaultcodeEnum_init(
112         (wsse_FaultcodeEnum **) object);
113 }
114
115 void
116 wsse_FaultcodeEnum_destroy_wrapper(
117     void *                          object)
118 0 {
119 0     wsse_FaultcodeEnum_destroy(
120         (wsse_FaultcodeEnum *) object);
121 }
122
123 globus_result_t
124 wsse_FaultcodeEnum_copy_wrapper(
125     void **                         dest_obj,
126     const void *                    src_obj)
127 0 {
128 0     return wsse_FaultcodeEnum_copy(
129         (wsse_FaultcodeEnum **) dest_obj,
130         (const wsse_FaultcodeEnum *) src_obj);
131 }
132
133 globus_result_t
134 wsse_FaultcodeEnum_init_contents_wrapper(void *object)
135 0 {
136 0     return wsse_FaultcodeEnum_init_contents(
137         (wsse_FaultcodeEnum *) object);
138 }
139
140 void
141 wsse_FaultcodeEnum_destroy_contents_wrapper(
142     void *                          object)
143 0 {
144 0     wsse_FaultcodeEnum_destroy_contents(
145         (wsse_FaultcodeEnum *) object);
146 }
147
148 globus_result_t
149 wsse_FaultcodeEnum_copy_contents_wrapper(
150     void *                          dest_obj,
151     const void *                    src_obj)
152 0 {
153 0     return wsse_FaultcodeEnum_copy_contents(
154         (wsse_FaultcodeEnum *) dest_obj,
155         (const wsse_FaultcodeEnum *) src_obj);
156 }
157
158 globus_result_t
159 wsse_FaultcodeEnum_serialize_contents_wrapper(
160     const xsd_QName *                   element_qname,
161     const void *                        instance,
162     globus_soap_message_handle_t        message_handle,
163     globus_xsd_element_options_t        options)
164 0 {
165 0     return wsse_FaultcodeEnum_serialize_contents(
166         element_qname,
167         (wsse_FaultcodeEnum *) instance,
168         message_handle, options);
169 }
170
171 globus_result_t
172 wsse_FaultcodeEnum_deserialize_contents_wrapper(
173     const xsd_QName *                   element_qname,
174     void **                             instance,
175     globus_soap_message_handle_t        message_handle,
176     globus_xsd_element_options_t        options)
177 0 {
178 0     globus_result_t                     result;
179 0     GlobusFuncName(wsse_FaultcodeEnum_deserialize_contents_wrapper);
180 0     GlobusSoapMessageDebugEnter();
181
182 0     if(!*instance)
183     {
184 0         result = wsse_FaultcodeEnum_init(
185             (wsse_FaultcodeEnum **)instance);
186 0         if(result != GLOBUS_SUCCESS)
187         {
188 0             goto error;
189         }
190     }
191
192 0     result = wsse_FaultcodeEnum_deserialize_contents(
193         element_qname,
194         *(wsse_FaultcodeEnum **)instance,
195         message_handle, options);
196 error:
197 0     GlobusSoapMessageDebugExit();
198 0     return result;
199 }
200
201 globus_result_t
202 wsse_FaultcodeEnum_array_serialize_wrapper(
203     const xsd_QName *               element,
204     const void *                    instance,
205     globus_soap_message_handle_t    message,
206     globus_xsd_element_options_t    options)
207 0 {
208 0     return wsse_FaultcodeEnum_array_serialize(
209         element,
210         (wsse_FaultcodeEnum_array *) instance,
211         message, options);
212 }
213
214 globus_result_t
215 wsse_FaultcodeEnum_array_deserialize_wrapper(
216     const xsd_QName *                   element_qname,
217     void **                             inst,
218     globus_soap_message_handle_t        message,
219     globus_xsd_element_options_t        options)
220 0 {
221 0     if(!*inst)
222     {
223 0         globus_result_t                 result;
224
225 0         result = wsse_FaultcodeEnum_array_init(
226             (wsse_FaultcodeEnum_array **)inst);
227 0         if(result != GLOBUS_SUCCESS)
228         {
229 0             return result;
230         }
231     }
232
233 0     return wsse_FaultcodeEnum_array_deserialize(
234         element_qname,
235         *(wsse_FaultcodeEnum_array **) inst,
236         message, options);
237 }
238
239 globus_result_t
240 wsse_FaultcodeEnum_array_init_wrapper(
241     void **                             arr)
242 0 {
243 0     return wsse_FaultcodeEnum_array_init(
244         (wsse_FaultcodeEnum_array **) arr);
245 }
246
247 void
248 wsse_FaultcodeEnum_array_destroy_wrapper(
249     void *                              arr)
250 0 {
251 0     wsse_FaultcodeEnum_array_destroy(
252         (wsse_FaultcodeEnum_array *) arr);
253 }
254
255 globus_result_t
256 wsse_FaultcodeEnum_array_copy_wrapper(
257     void **                             dest_arr,
258     const void *                        src_arr)
259 0 {
260 0     return wsse_FaultcodeEnum_array_copy(
261         (wsse_FaultcodeEnum_array **) dest_arr,
262         (const wsse_FaultcodeEnum_array *) src_arr);
263 }
264 globus_result_t
265 wsse_FaultcodeEnum_array_init_contents_wrapper(
266     void *                              arr)
267 0 {
268 0     return wsse_FaultcodeEnum_array_init_contents(
269         (wsse_FaultcodeEnum_array *) arr);
270 }
271
272 void
273 wsse_FaultcodeEnum_array_destroy_contents_wrapper(
274     void *                              arr)
275 0 {
276 0     wsse_FaultcodeEnum_array_destroy_contents(
277         (wsse_FaultcodeEnum_array *) arr);
278 }
279
280 globus_result_t
281 wsse_FaultcodeEnum_array_copy_contents_wrapper(
282     void *                              dest_arr,
283     const void *                        src_arr)
284 0 {
285 0     return wsse_FaultcodeEnum_array_copy_contents(
286         (wsse_FaultcodeEnum_array *) dest_arr,
287         (const wsse_FaultcodeEnum_array *) src_arr);
288 }
289
290 struct globus_xsd_type_info_s wsse_FaultcodeEnum_array_info =
291 {
292     &wsse_FaultcodeEnum_qname,
293     wsse_FaultcodeEnum_array_serialize_wrapper,
294     wsse_FaultcodeEnum_array_deserialize_wrapper,
295     wsse_FaultcodeEnum_array_init_wrapper,
296     wsse_FaultcodeEnum_array_destroy_wrapper,
297     wsse_FaultcodeEnum_array_copy_wrapper,
298     wsse_FaultcodeEnum_array_init_contents_wrapper,
299     wsse_FaultcodeEnum_array_destroy_contents_wrapper,
300     wsse_FaultcodeEnum_array_copy_contents_wrapper,
301     sizeof(wsse_FaultcodeEnum),
302     wsse_FaultcodeEnum_array_push_wrapper,
303     NULL,
304     NULL
305 };
306
307 struct globus_xsd_type_info_s wsse_FaultcodeEnum_contents_info =
308 {
309     &wsse_FaultcodeEnum_qname,
310     wsse_FaultcodeEnum_serialize_contents_wrapper,
311     wsse_FaultcodeEnum_deserialize_contents_wrapper,
312     wsse_FaultcodeEnum_init_wrapper,
313     wsse_FaultcodeEnum_destroy_wrapper,
314     wsse_FaultcodeEnum_copy_wrapper,
315     wsse_FaultcodeEnum_init_contents_wrapper,
316     wsse_FaultcodeEnum_destroy_contents_wrapper,
317     wsse_FaultcodeEnum_copy_contents_wrapper,
318     sizeof(wsse_FaultcodeEnum),
319     NULL,
320     NULL,
321     NULL
322 };
323
324 struct globus_xsd_type_info_s wsse_FaultcodeEnum_info =
325 {
326     &wsse_FaultcodeEnum_qname,
327     wsse_FaultcodeEnum_serialize_wrapper,
328     wsse_FaultcodeEnum_deserialize_pointer_wrapper,
329     wsse_FaultcodeEnum_init_wrapper,
330     wsse_FaultcodeEnum_destroy_wrapper,
331     wsse_FaultcodeEnum_copy_wrapper,
332     wsse_FaultcodeEnum_init_contents_wrapper,
333     wsse_FaultcodeEnum_destroy_contents_wrapper,
334     wsse_FaultcodeEnum_copy_contents_wrapper,
335     sizeof(wsse_FaultcodeEnum),
336     NULL,
337     &wsse_FaultcodeEnum_contents_info,
338     &wsse_FaultcodeEnum_array_info
339 };
340
341 globus_result_t
342 wsse_FaultcodeEnum_init_contents(
343     wsse_FaultcodeEnum * instance)
344 0 {
345 0     globus_result_t                     result = GLOBUS_SUCCESS;
346 0     GlobusFuncName(wsse_FaultcodeEnum_init_contents);
347 0     GlobusSoapMessageDebugEnter();
348
349
350 0     xsd_QName_init_contents(instance);
351
352 0     GlobusSoapMessageDebugExit();
353 0     return result;
354 }
355
356 globus_result_t
357 wsse_FaultcodeEnum_init(
358     wsse_FaultcodeEnum ** object)
359 0 {
360 0     wsse_FaultcodeEnum * instance;
361 0     globus_result_t                     result = GLOBUS_SUCCESS;
362 0     GlobusFuncName(wsse_FaultcodeEnum_init);
363 0     GlobusSoapMessageDebugEnter();
364
365
366 0     xsd_QName_init(object);
367
368 0     GlobusSoapMessageDebugExit();
369 0     return result;
370 }
371
372 void
373 wsse_FaultcodeEnum_destroy(
374     wsse_FaultcodeEnum * instance)
375 0 {
376 0     GlobusFuncName(wsse_FaultcodeEnum_destroy);
377 0     GlobusSoapMessageDebugEnter();
378
379 0     if(!instance)
380     {
381 0         goto exit;
382     }
383
384 0     wsse_FaultcodeEnum_destroy_contents(instance);
385 0     globus_free(instance);
386
387  exit:
388
389 0     GlobusSoapMessageDebugExit();
390 }
391
392 void
393 wsse_FaultcodeEnum_destroy_contents(
394     wsse_FaultcodeEnum * instance)
395 0 {
396 0     GlobusFuncName(wsse_FaultcodeEnum_destroy_contents);
397 0     GlobusSoapMessageDebugEnter();
398
399 0     if(instance)
400     {
401
402
403 0     xsd_QName_destroy_contents(instance);
404
405     }
406
407 0     GlobusSoapMessageDebugExit();
408 }
409
410 globus_result_t
411 wsse_FaultcodeEnum_copy(
412     wsse_FaultcodeEnum ** dest_obj,
413     const wsse_FaultcodeEnum * src_obj)
414 0 {
415 0     globus_result_t                     result = GLOBUS_SUCCESS;
416 0     wsse_FaultcodeEnum * instance;
417 0     GlobusFuncName(wsse_FaultcodeEnum_copy);
418
419 0     GlobusSoapMessageDebugEnter();
420
421 0     instance = malloc(sizeof(wsse_FaultcodeEnum));
422 0     if (instance == NULL)
423     {
424 0         GlobusSoapMessageDebugExit();
425 0         return GlobusSoapMessageErrorOutOfMemory;
426     }
427
428 0     result = wsse_FaultcodeEnum_copy_contents(instance, src_obj);
429 0     if(result != GLOBUS_SUCCESS)
430     {
431 0         globus_free(instance);
432 0         GlobusSoapMessageDebugExit();
433 0         return GlobusSoapMessageErrorOutOfMemory;
434     }
435
436 0     *dest_obj = instance;
437 0     GlobusSoapMessageDebugExit();
438 0     return result;
439 }
440
441 globus_result_t
442 wsse_FaultcodeEnum_copy_contents(
443     wsse_FaultcodeEnum * instance,
444     const wsse_FaultcodeEnum * src_obj)
445 0 {
446 0     globus_result_t                     result = GLOBUS_SUCCESS;
447 0     GlobusFuncName(wsse_FaultcodeEnum_copy_contents);
448
449 0     GlobusSoapMessageDebugEnter();
450
451
452 0     result = xsd_QName_copy_contents(
453         instance, src_obj);
454
455 0     goto exit;
456
457  fail_copy:
458
459
460  exit:
461
462 0     GlobusSoapMessageDebugExit();
463 0     return result;
464 }
465
466
467
468 globus_result_t
469 wsse_FaultcodeEnum_serialize_contents(
470     const xsd_QName *                   element_qname, /* ignored */
471     const wsse_FaultcodeEnum *              inst,
472     globus_soap_message_handle_t        message_handle,
473     globus_xsd_element_options_t        options)
474 0 {
475 0     globus_result_t                     result = GLOBUS_SUCCESS;
476 0     GlobusFuncName(wsse_FaultcodeEnum_serialize_contents);
477 0     GlobusSoapMessageDebugEnter();
478
479 0     result = wsse_FaultcodeEnum_serialize(
480         NULL,
481         inst,
482         message_handle,
483         options | GLOBUS_XSD_ELEMENT_CONTENTS_ONLY);
484 0     if(result != GLOBUS_SUCCESS)
485     {
486 0         result = GlobusSoapMessageErrorSerializeFailed(
487             result, NULL, element_qname);
488         goto exit;
489     }
490
491  exit:
492
493 0     GlobusSoapMessageDebugExit();
494 0     return result;
495 }
496
497
498
499 globus_result_t
500 wsse_FaultcodeEnum_serialize(
501     const xsd_QName *                   element_qname,
502     const wsse_FaultcodeEnum *              instance,
503     globus_soap_message_handle_t        message_handle,
504     globus_xsd_element_options_t        options)
505 0 {
506 0     globus_result_t                     result = GLOBUS_SUCCESS;
507 0     xsd_QName                           subelement;
508 0     globus_list_t *                     any_attr_keys = NULL;
509 0     globus_list_t *                     any_attr_keys_iterator = NULL;
510 0     xsd_QName *                         type_attr = NULL;
511 0     char *                              type_value = NULL;
512 0     char *                              prefix = NULL;
513 0     int                                 prefix_created;
514 0     int                                 define_prefix = 0;
515 0     int                                 i;
516 0     char *                              type_attr_prefix = NULL;
517
518 0     GlobusFuncName(wsse_FaultcodeEnum_serialize);
519 0     GlobusSoapMessageDebugEnter();
520
521
522 0         if (!wsse_FaultcodeEnum_l_is_valid_restriction(instance))
523         {
524 0             result = GlobusSoapMessageErrorSerializeFailed(result,
525                     NULL,
526                     element_qname);
527
528 0             goto exit;
529
530         }
531
532 0     result = xsd_QName_serialize(
533         element_qname, 
534         instance, 
535         message_handle, 
536         options);
537
538  exit:
539
540 0     if(any_attr_keys)
541     {
542 0         globus_list_free(any_attr_keys);
543     }
544
545 0     GlobusSoapMessageDebugExit();
546 0     return result;
547 }
548
549
550
551 globus_result_t
552 wsse_FaultcodeEnum_deserialize_contents(
553     const xsd_QName *                   element_qname, /* ignored */
554     wsse_FaultcodeEnum *                    inst,
555     globus_soap_message_handle_t        message_handle,
556     globus_xsd_element_options_t        options)
557 0 {
558 0     globus_result_t                     result = GLOBUS_SUCCESS;
559 0     GlobusFuncName(wsse_FaultcodeEnum_deserialize_contents);
560 0     GlobusSoapMessageDebugEnter();
561
562 0     result = wsse_FaultcodeEnum_deserialize(
563         NULL,
564         inst,
565         message_handle,
566         options | GLOBUS_XSD_ELEMENT_CONTENTS_ONLY);
567 0     if(result != GLOBUS_SUCCESS)
568     {
569 0         result = GlobusSoapMessageErrorDeserializeFailed(
570             result, element_qname);
571         goto exit;
572     }
573
574  exit:
575
576 0     GlobusSoapMessageDebugExit();
577 0     return result;
578 }
579
580
581
582 globus_result_t
583 wsse_FaultcodeEnum_deserialize(
584     const xsd_QName *                   element_qname,
585     wsse_FaultcodeEnum *                    instance,
586     globus_soap_message_handle_t        message_handle,
587     globus_xsd_element_options_t        options)
588 0 {
589 0     globus_result_t                     result = GLOBUS_SUCCESS;
590 0     xsd_QName                           subelement;
591 0     GlobusFuncName(wsse_FaultcodeEnum_deserialize);
592 0     GlobusSoapMessageDebugEnter();
593
594
595 0     result = xsd_QName_deserialize(element_qname, 
596                                 instance, message_handle, options);
597
598 0         if (result != GLOBUS_SUCCESS)
599         {
600 0             result = GlobusSoapMessageErrorDeserializeFailed(
601                 result, element_qname);
602 0             goto exit;
603         }
604
605 0         if (!wsse_FaultcodeEnum_l_is_valid_restriction(instance))
606         {
607 0             result = GlobusSoapMessageErrorDeserializeFailed(result,
608                     element_qname);
609
610         }
611
612
613  exit:
614
615 0     GlobusSoapMessageDebugExit();
616 0     return result;
617 }
618
619
620
621 globus_result_t
622 wsse_FaultcodeEnum_deserialize_pointer(
623     const xsd_QName *                   element_qname,
624     wsse_FaultcodeEnum **                   ip,
625     globus_soap_message_handle_t        message_handle,
626     globus_xsd_element_options_t        options)
627 0 {
628 0     wsse_FaultcodeEnum * instance = NULL;
629 0     globus_result_t                     result = GLOBUS_SUCCESS;
630 0     xsd_QName                           subelement;
631 0     GlobusFuncName(wsse_FaultcodeEnum_deserialize_pointer);
632 0     GlobusSoapMessageDebugEnter();
633
634 0     *ip = NULL;
635
636
637 0     result = xsd_QName_deserialize_pointer(
638         element_qname, 
639         ip, message_handle, options);
640
641 0         if (result != GLOBUS_SUCCESS)
642         {
643 0             result = GlobusSoapMessageErrorDeserializeFailed(
644                 result, element_qname);
645 0             goto exit;
646         }
647
648 0         if (*ip && !wsse_FaultcodeEnum_l_is_valid_restriction(*ip))
649         {
650 0             result = GlobusSoapMessageErrorDeserializeFailed(result,
651                     element_qname);
652
653         }
654
655
656  exit:
657
658 0     GlobusSoapMessageDebugExit();
659 0     return result;
660 }
661
662
663
664 globus_result_t
665 wsse_FaultcodeEnum_array_init_contents(
666     wsse_FaultcodeEnum_array * array)
667 0 {
668 0     GlobusFuncName(wsse_FaultcodeEnum_array_init_contents);
669 0     GlobusSoapMessageDebugEnter();
670
671 0     array->elements = NULL;
672 0     array->length = 0;
673 0     array->type_info = &wsse_FaultcodeEnum_info;
674
675 0     GlobusSoapMessageDebugExit();
676 0     return GLOBUS_SUCCESS;
677 }
678
679 globus_result_t
680 wsse_FaultcodeEnum_array_init(
681     wsse_FaultcodeEnum_array ** arr)
682 0 {
683 0     return globus_xsd_generic_array_init(
684             (globus_xsd_generic_array_t **) arr,
685             &wsse_FaultcodeEnum_info);
686 }
687 /* wsse_FaultcodeEnum_array_info() */
688
689 void
690 wsse_FaultcodeEnum_array_destroy_contents(
691     wsse_FaultcodeEnum_array * array)
692 0 {
693 0     globus_xsd_generic_array_destroy_contents(
694         (globus_xsd_generic_array_t *) array);
695 }
696
697 void
698 wsse_FaultcodeEnum_array_destroy(
699     wsse_FaultcodeEnum_array * array)
700 0 {
701
702 0     globus_xsd_generic_array_destroy(
703         (globus_xsd_generic_array_t *) array);
704 }
705
706 globus_result_t
707 wsse_FaultcodeEnum_array_copy(
708     wsse_FaultcodeEnum_array ** dest_arr,
709     const wsse_FaultcodeEnum_array * src_arr)
710 0 {
711 0     return globus_xsd_generic_array_copy(
712         (globus_xsd_generic_array_t **) dest_arr,
713         (const globus_xsd_generic_array_t *) src_arr);
714 }
715
716 globus_result_t
717 wsse_FaultcodeEnum_array_copy_contents(
718     wsse_FaultcodeEnum_array * dest_arr,
719     const wsse_FaultcodeEnum_array * src_arr)
720 0 {
721 0     return globus_xsd_generic_array_copy_contents(
722         (globus_xsd_generic_array_t *) dest_arr,
723         (const globus_xsd_generic_array_t *) src_arr);
724 }
725
726 wsse_FaultcodeEnum *
727 wsse_FaultcodeEnum_array_push(
728     wsse_FaultcodeEnum_array * array)
729 0 {
730     /* Some contents initializers don't initialize subelments but to set their
731      * values to be NULL
732      */
733 0     if (array->type_info == NULL)
734     {
735 0         array->type_info = &wsse_FaultcodeEnum_info;
736     }
737 0     return globus_xsd_generic_array_push(
738         (globus_xsd_generic_array_t *) array);
739 }
740
741 void *
742 wsse_FaultcodeEnum_array_push_wrapper(
743     void * array)
744 0 {
745 0     return (void *) wsse_FaultcodeEnum_array_push((wsse_FaultcodeEnum_array *) array);
746 }
747
748 globus_result_t
749 wsse_FaultcodeEnum_array_serialize(
750     const xsd_QName *                   element_qname,
751     const wsse_FaultcodeEnum_array *        array,
752     globus_soap_message_handle_t        message,
753     globus_xsd_element_options_t        options)
754 0 {
755 0     return globus_xsd_generic_array_serialize(
756         element_qname,
757         (const globus_xsd_generic_array_t *) array,
758         message,
759         options);
760 }
761
762 globus_result_t
763 wsse_FaultcodeEnum_array_deserialize(
764     const xsd_QName *                   element_qname,
765     wsse_FaultcodeEnum_array *              array,
766     globus_soap_message_handle_t        message,
767     globus_xsd_element_options_t        options)
768 0 {
769     /* Some initializers set the array contents to NULL */
770 0     if (array->type_info == NULL)
771     {
772 0         array->type_info = &wsse_FaultcodeEnum_info;
773     }
774
775 0     return globus_xsd_generic_array_deserialize(
776         element_qname,
777         (globus_xsd_generic_array_t *) array,
778         message,
779         options);
780 }
781
782
783 globus_result_t
784 wsse_FaultcodeEnum_serialize_attribute(
785     const xsd_QName *                   attr_qname,
786     const wsse_FaultcodeEnum *              val,
787     globus_soap_message_handle_t        handle,
788     globus_xsd_element_options_t        options)
789 0 {
790 0     globus_result_t                     result = GLOBUS_SUCCESS;
791 0     GlobusFuncName(wsse_FaultcodeEnum_serialize_attribute);
792 0     GlobusSoapMessageDebugEnter();
793
794    
795 0     result = xsd_QName_serialize_attribute(
796         attr_qname, (xsd_QName *)val, handle, options);
797 0     if(result != GLOBUS_SUCCESS)
798     {
799 0         result = GlobusSoapMessageErrorSerializeFailed(
800             result, NULL, attr_qname);
801         goto exit;
802     }
803
804  exit:
805
806 0     GlobusSoapMessageDebugExit();
807 0     return result;
808 }
809
810 globus_result_t
811 wsse_FaultcodeEnum_deserialize_attribute(
812     const xsd_QName *                   attr_qname,
813     wsse_FaultcodeEnum *                    instance,
814     globus_soap_message_handle_t        message,
815     globus_xsd_element_options_t        options)
816 0 {
817 0     globus_result_t                     result = GLOBUS_SUCCESS;
818 0     GlobusFuncName(wsse_FaultcodeEnum_deserialize_attribute);
819 0     GlobusSoapMessageDebugEnter();
820     
821
822 0     result = xsd_QName_deserialize_attribute(
823         attr_qname, (xsd_QName *)instance, message, options);
824
825 0     if(result != GLOBUS_SUCCESS)
826     {
827 0         result = GlobusSoapMessageErrorDeserializeFailed(
828             result, attr_qname);
829         goto exit;
830     }
831
832  exit:
833
834 0     GlobusSoapMessageDebugExit();
835 0     return result;
836 }
837
838 globus_result_t
839 wsse_FaultcodeEnum_deserialize_attribute_pointer(
840     const xsd_QName *                   attr_qname,
841     wsse_FaultcodeEnum **                   instance,
842     globus_soap_message_handle_t        message,
843     globus_xsd_element_options_t        options)
844 0 {
845 0     globus_result_t                     result = GLOBUS_SUCCESS;
846 0     GlobusFuncName(wsse_FaultcodeEnum_deserialize_attribute_pointer);
847 0     GlobusSoapMessageDebugEnter();
848     
849
850 0     result = xsd_QName_deserialize_attribute_pointer(
851         attr_qname, (xsd_QName **)instance, message, options);
852
853 0     if(result != GLOBUS_SUCCESS)
854     {
855 0         result = GlobusSoapMessageErrorDeserializeFailed(
856             result, attr_qname);
857         goto exit;
858     }
859
860  exit:
861
862 0     GlobusSoapMessageDebugExit();
863 0     return result;
864 }
865
866
867 static
868 xsd_QName * wsse_FaultcodeEnum_l_restrictions[] =
869 {
870     &wsse_FaultcodeEnum_wsse_UnsupportedSecurityToken,
871
872
873     &wsse_FaultcodeEnum_wsse_UnsupportedAlgorithm,
874
875
876     &wsse_FaultcodeEnum_wsse_InvalidSecurity,
877
878
879     &wsse_FaultcodeEnum_wsse_InvalidSecurityToken,
880
881
882     &wsse_FaultcodeEnum_wsse_FailedAuthentication,
883
884
885     &wsse_FaultcodeEnum_wsse_FailedCheck,
886
887
888     &wsse_FaultcodeEnum_wsse_SecurityTokenUnavailable,
889
890
891
892     NULL
893 };
894
895 globus_bool_t
896 wsse_FaultcodeEnum_l_is_valid_restriction(
897     const wsse_FaultcodeEnum *              instance)
898 0 {
899 0     int                                 i;
900 0     globus_bool_t                       valid = GLOBUS_FALSE;
901 0     GlobusFuncName(wsse_FaultcodeEnum_l_validate_restriction);
902 0     GlobusSoapMessageDebugEnter();
903
904
905
906 0     for (i = 0; wsse_FaultcodeEnum_l_restrictions[i] != NULL; i++)
907     {
908
909 0         if (xsd_QName_keyeq((void *) wsse_FaultcodeEnum_l_restrictions[i],
910                             (void *) instance)) 
911         {
912 0             valid = GLOBUS_TRUE;
913
914 0             break;
915         }
916
917     }
918
919 0     GlobusSoapMessageDebugExit();
920
921 0     return valid;