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 from source-type-simple-doclit.tmpl
20 */
21
22 #include "xsd_QName.h"
23 #include "globus_soap_message.h"
24 #include "globus_xsd_type_info.h"
25 #include "wsa_FaultCodesType.h"
26 #include "globus_xsd_generic_array.h"
27
28 xsd_QName wsa_FaultCodesType_qname =
29 {
30 "http://www.w3.org/2005/08/addressing",
31 "FaultCodesType"
32 };
33
34
35 xsd_QName wsa_FaultCodesType_wsa_InvalidAddressingHeader =
36 {
37 "http://www.w3.org/2005/08/addressing",
38 "InvalidAddressingHeader"
39 };
40
41 xsd_QName wsa_FaultCodesType_wsa_InvalidAddress =
42 {
43 "http://www.w3.org/2005/08/addressing",
44 "InvalidAddress"
45 };
46
47 xsd_QName wsa_FaultCodesType_wsa_InvalidEPR =
48 {
49 "http://www.w3.org/2005/08/addressing",
50 "InvalidEPR"
51 };
52
53 xsd_QName wsa_FaultCodesType_wsa_InvalidCardinality =
54 {
55 "http://www.w3.org/2005/08/addressing",
56 "InvalidCardinality"
57 };
58
59 xsd_QName wsa_FaultCodesType_wsa_MissingAddressInEPR =
60 {
61 "http://www.w3.org/2005/08/addressing",
62 "MissingAddressInEPR"
63 };
64
65 xsd_QName wsa_FaultCodesType_wsa_DuplicateMessageID =
66 {
67 "http://www.w3.org/2005/08/addressing",
68 "DuplicateMessageID"
69 };
70
71 xsd_QName wsa_FaultCodesType_wsa_ActionMismatch =
72 {
73 "http://www.w3.org/2005/08/addressing",
74 "ActionMismatch"
75 };
76
77 xsd_QName wsa_FaultCodesType_wsa_MessageAddressingHeaderRequired =
78 {
79 "http://www.w3.org/2005/08/addressing",
80 "MessageAddressingHeaderRequired"
81 };
82
83 xsd_QName wsa_FaultCodesType_wsa_DestinationUnreachable =
84 {
85 "http://www.w3.org/2005/08/addressing",
86 "DestinationUnreachable"
87 };
88
89 xsd_QName wsa_FaultCodesType_wsa_ActionNotSupported =
90 {
91 "http://www.w3.org/2005/08/addressing",
92 "ActionNotSupported"
93 };
94
95 xsd_QName wsa_FaultCodesType_wsa_EndpointUnavailable =
96 {
97 "http://www.w3.org/2005/08/addressing",
98 "EndpointUnavailable"
99 };
100
101 static
102 globus_bool_t
103 wsa_FaultCodesType_l_is_valid_restriction(
104 const wsa_FaultCodesType * instance);
105
106
107 static
108 globus_result_t
109 wsa_FaultCodesType_serialize_wrapper(
110 const xsd_QName * element_qname,
111 const void * instance,
112 globus_soap_message_handle_t message_handle,
113 globus_xsd_element_options_t options)
114 0 {
115 0 return wsa_FaultCodesType_serialize(
116 element_qname,
117 (wsa_FaultCodesType *) instance,
118 message_handle, options);
119 }
120
121 static
122 globus_result_t
123 wsa_FaultCodesType_deserialize_pointer_wrapper(
124 const xsd_QName * element_qname,
125 void ** ip,
126 globus_soap_message_handle_t message_handle,
127 globus_xsd_element_options_t options)
128 0 {
129 0 return wsa_FaultCodesType_deserialize_pointer(
130 element_qname,
131 (wsa_FaultCodesType **) ip,
132 message_handle, options);
133 }
134
135 globus_result_t
136 wsa_FaultCodesType_init_wrapper(void **object)
137 0 {
138 0 return wsa_FaultCodesType_init(
139 (wsa_FaultCodesType **) object);
140 }
141
142 static
143 void
144 wsa_FaultCodesType_destroy_wrapper(
145 void * object)
146 0 {
147 0 wsa_FaultCodesType_destroy(
148 (wsa_FaultCodesType *) object);
149 0 }
150
151 static
152 globus_result_t
153 wsa_FaultCodesType_copy_wrapper(
154 void ** dest_obj,
155 const void * src_obj)
156 0 {
157 0 return wsa_FaultCodesType_copy(
158 (wsa_FaultCodesType **) dest_obj,
159 (const wsa_FaultCodesType *) src_obj);
160 }
161
162 static
163 globus_result_t
164 wsa_FaultCodesType_init_contents_wrapper(void *object)
165 0 {
166 0 return wsa_FaultCodesType_init_contents(
167 (wsa_FaultCodesType *) object);
168 }
169
170 static
171 void
172 wsa_FaultCodesType_destroy_contents_wrapper(
173 void * object)
174 0 {
175 0 wsa_FaultCodesType_destroy_contents(
176 (wsa_FaultCodesType *) object);
177 0 }
178
179 static
180 globus_result_t
181 wsa_FaultCodesType_copy_contents_wrapper(
182 void * dest_obj,
183 const void * src_obj)
184 0 {
185 0 return wsa_FaultCodesType_copy_contents(
186 (wsa_FaultCodesType *) dest_obj,
187 (const wsa_FaultCodesType *) src_obj);
188 }
189
190 static
191 globus_result_t
192 wsa_FaultCodesType_serialize_contents_wrapper(
193 const xsd_QName * element_qname,
194 const void * instance,
195 globus_soap_message_handle_t message_handle,
196 globus_xsd_element_options_t options)
197 0 {
198 0 return wsa_FaultCodesType_serialize_contents(
199 element_qname,
200 (wsa_FaultCodesType *) instance,
201 message_handle, options);
202 }
203
204 static
205 globus_result_t
206 wsa_FaultCodesType_deserialize_contents_wrapper(
207 const xsd_QName * element_qname,
208 void ** instance,
209 globus_soap_message_handle_t message_handle,
210 globus_xsd_element_options_t options)
211 0 {
212 globus_result_t result;
213 GlobusFuncName(wsa_FaultCodesType_deserialize_contents_wrapper);
214 0 GlobusSoapMessageDebugEnter();
215
216 0 if(!*instance)
217 {
218 0 result = wsa_FaultCodesType_init(
219 (wsa_FaultCodesType **)instance);
220 0 if(result != GLOBUS_SUCCESS)
221 {
222 0 goto error;
223 }
224 }
225
226 0 result = wsa_FaultCodesType_deserialize_contents(
227 element_qname,
228 *(wsa_FaultCodesType **)instance,
229 message_handle, options);
230 0 error:
231 0 GlobusSoapMessageDebugExit();
232 0 return result;
233 }
234
235 static
236 globus_result_t
237 wsa_FaultCodesType_array_serialize_wrapper(
238 const xsd_QName * element,
239 const void * instance,
240 globus_soap_message_handle_t message,
241 globus_xsd_element_options_t options)
242 0 {
243 0 return wsa_FaultCodesType_array_serialize(
244 element,
245 (wsa_FaultCodesType_array *) instance,
246 message, options);
247 }
248
249 static
250 globus_result_t
251 wsa_FaultCodesType_array_deserialize_wrapper(
252 const xsd_QName * element_qname,
253 void ** inst,
254 globus_soap_message_handle_t message,
255 globus_xsd_element_options_t options)
256 0 {
257 0 if(!*inst)
258 {
259 globus_result_t result;
260
261 0 result = wsa_FaultCodesType_array_init(
262 (wsa_FaultCodesType_array **)inst);
263 0 if(result != GLOBUS_SUCCESS)
264 {
265 0 return result;
266 }
267 }
268
269 0 return wsa_FaultCodesType_array_deserialize(
270 element_qname,
271 *(wsa_FaultCodesType_array **) inst,
272 message, options);
273 }
274
275 static
276 globus_result_t
277 wsa_FaultCodesType_array_init_wrapper(
278 void ** arr)
279 0 {
280 0 return wsa_FaultCodesType_array_init(
281 (wsa_FaultCodesType_array **) arr);
282 }
283
284 static
285 void
286 wsa_FaultCodesType_array_destroy_wrapper(
287 void * arr)
288 0 {
289 0 wsa_FaultCodesType_array_destroy(
290 (wsa_FaultCodesType_array *) arr);
291 0 }
292
293 static
294 globus_result_t
295 wsa_FaultCodesType_array_copy_wrapper(
296 void ** dest_arr,
297 const void * src_arr)
298 0 {
299 0 return wsa_FaultCodesType_array_copy(
300 (wsa_FaultCodesType_array **) dest_arr,
301 (const wsa_FaultCodesType_array *) src_arr);
302 }
303
304 static
305 globus_result_t
306 wsa_FaultCodesType_array_init_contents_wrapper(
307 void * arr)
308 0 {
309 0 return wsa_FaultCodesType_array_init_contents(
310 (wsa_FaultCodesType_array *) arr);
311 }
312
313 static
314 void
315 wsa_FaultCodesType_array_destroy_contents_wrapper(
316 void * arr)
317 0 {
318 0 wsa_FaultCodesType_array_destroy_contents(
319 (wsa_FaultCodesType_array *) arr);
320 0 }
321
322 static
323 globus_result_t
324 wsa_FaultCodesType_array_copy_contents_wrapper(
325 void * dest_arr,
326 const void * src_arr)
327 0 {
328 0 return wsa_FaultCodesType_array_copy_contents(
329 (wsa_FaultCodesType_array *) dest_arr,
330 (const wsa_FaultCodesType_array *) src_arr);
331 }
332
333 static
334 void *
335 wsa_FaultCodesType_array_push_wrapper(
336 void * array)
337 0 {
338 0 return (void *) wsa_FaultCodesType_array_push((wsa_FaultCodesType_array *) array);
339 }
340
341 struct globus_xsd_type_info_s wsa_FaultCodesType_array_info =
342 {
343 &wsa_FaultCodesType_qname,
344 wsa_FaultCodesType_array_serialize_wrapper,
345 wsa_FaultCodesType_array_deserialize_wrapper,
346 wsa_FaultCodesType_array_init_wrapper,
347 wsa_FaultCodesType_array_destroy_wrapper,
348 wsa_FaultCodesType_array_copy_wrapper,
349 wsa_FaultCodesType_array_init_contents_wrapper,
350 wsa_FaultCodesType_array_destroy_contents_wrapper,
351 wsa_FaultCodesType_array_copy_contents_wrapper,
352 sizeof(wsa_FaultCodesType),
353 wsa_FaultCodesType_array_push_wrapper,
354 NULL,
355 NULL
356 };
357
358 struct globus_xsd_type_info_s wsa_FaultCodesType_contents_info =
359 {
360 &wsa_FaultCodesType_qname,
361 wsa_FaultCodesType_serialize_contents_wrapper,
362 wsa_FaultCodesType_deserialize_contents_wrapper,
363 wsa_FaultCodesType_init_wrapper,
364 wsa_FaultCodesType_destroy_wrapper,
365 wsa_FaultCodesType_copy_wrapper,
366 wsa_FaultCodesType_init_contents_wrapper,
367 wsa_FaultCodesType_destroy_contents_wrapper,
368 wsa_FaultCodesType_copy_contents_wrapper,
369 sizeof(wsa_FaultCodesType),
370 NULL,
371 NULL,
372 NULL
373 };
374
375 struct globus_xsd_type_info_s wsa_FaultCodesType_info =
376 {
377 &wsa_FaultCodesType_qname,
378 wsa_FaultCodesType_serialize_wrapper,
379 wsa_FaultCodesType_deserialize_pointer_wrapper,
380 wsa_FaultCodesType_init_wrapper,
381 wsa_FaultCodesType_destroy_wrapper,
382 wsa_FaultCodesType_copy_wrapper,
383 wsa_FaultCodesType_init_contents_wrapper,
384 wsa_FaultCodesType_destroy_contents_wrapper,
385 wsa_FaultCodesType_copy_contents_wrapper,
386 sizeof(wsa_FaultCodesType),
387 NULL,
388 &wsa_FaultCodesType_contents_info,
389 &wsa_FaultCodesType_array_info
390 };
391
392 globus_result_t
393 wsa_FaultCodesType_init_contents(
394 wsa_FaultCodesType * instance)
395 0 {
396 0 globus_result_t result = GLOBUS_SUCCESS;
397 GlobusFuncName(wsa_FaultCodesType_init_contents);
398 0 GlobusSoapMessageDebugEnter();
399
400
401 0 xsd_QName_init_contents(instance);
402
403 0 GlobusSoapMessageDebugExit();
404 0 return result;
405 }
406
407 globus_result_t
408 wsa_FaultCodesType_init(
409 wsa_FaultCodesType ** object)
410 0 {
411 wsa_FaultCodesType * instance;
412 0 globus_result_t result = GLOBUS_SUCCESS;
413 GlobusFuncName(wsa_FaultCodesType_init);
414 0 GlobusSoapMessageDebugEnter();
415
416
417 0 xsd_QName_init(object);
418
419 0 GlobusSoapMessageDebugExit();
420 0 return result;
421 }
422
423 void
424 wsa_FaultCodesType_destroy(
425 wsa_FaultCodesType * instance)
426 0 {
427 GlobusFuncName(wsa_FaultCodesType_destroy);
428 0 GlobusSoapMessageDebugEnter();
429
430 0 if(!instance)
431 {
432 0 goto exit;
433 }
434
435 0 wsa_FaultCodesType_destroy_contents(instance);
436 0 globus_free(instance);
437
438 0 exit:
439
440 0 GlobusSoapMessageDebugExit();
441 0 }
442
443 void
444 wsa_FaultCodesType_destroy_contents(
445 wsa_FaultCodesType * instance)
446 0 {
447 GlobusFuncName(wsa_FaultCodesType_destroy_contents);
448 0 GlobusSoapMessageDebugEnter();
449
450 0 if(instance)
451 {
452
453
454 0 xsd_QName_destroy_contents(instance);
455
456 }
457
458 0 GlobusSoapMessageDebugExit();
459 0 }
460
461 globus_result_t
462 wsa_FaultCodesType_copy(
463 wsa_FaultCodesType ** dest_obj,
464 const wsa_FaultCodesType * src_obj)
465 0 {
466 0 globus_result_t result = GLOBUS_SUCCESS;
467 wsa_FaultCodesType * instance;
468 GlobusFuncName(wsa_FaultCodesType_copy);
469
470 0 GlobusSoapMessageDebugEnter();
471
472 0 instance = malloc(sizeof(wsa_FaultCodesType));
473 0 if (instance == NULL)
474 {
475 0 GlobusSoapMessageDebugExit();
476 0 return GlobusSoapMessageErrorOutOfMemory;
477 }
478
479 0 result = wsa_FaultCodesType_copy_contents(instance, src_obj);
480 0 if(result != GLOBUS_SUCCESS)
481 {
482 0 globus_free(instance);
483 0 GlobusSoapMessageDebugExit();
484 0 return GlobusSoapMessageErrorOutOfMemory;
485 }
486
487 0 *dest_obj = instance;
488 0 GlobusSoapMessageDebugExit();
489 0 return result;
490 }
491
492 globus_result_t
493 wsa_FaultCodesType_copy_contents(
494 wsa_FaultCodesType * instance,
495 const wsa_FaultCodesType * src_obj)
496 0 {
497 0 globus_result_t result = GLOBUS_SUCCESS;
498 GlobusFuncName(wsa_FaultCodesType_copy_contents);
499
500 0 GlobusSoapMessageDebugEnter();
501
502
503 0 result = xsd_QName_copy_contents(
504 instance, src_obj);
505
506 goto exit;
507
508 0 fail_copy:
509
510
511 0 exit:
512
513 0 GlobusSoapMessageDebugExit();
514 0 return result;
515 }
516
517
518
519 globus_result_t
520 wsa_FaultCodesType_serialize_contents(
521 const xsd_QName * element_qname, /* ignored */
522 const wsa_FaultCodesType * inst,
523 globus_soap_message_handle_t message_handle,
524 globus_xsd_element_options_t options)
525 0 {
526 0 globus_result_t result = GLOBUS_SUCCESS;
527 GlobusFuncName(wsa_FaultCodesType_serialize_contents);
528 0 GlobusSoapMessageDebugEnter();
529
530 0 result = wsa_FaultCodesType_serialize(
531 NULL,
532 inst,
533 message_handle,
534 options | GLOBUS_XSD_ELEMENT_CONTENTS_ONLY);
535 0 if(result != GLOBUS_SUCCESS)
536 {
537 0 result = GlobusSoapMessageErrorSerializeFailed(
538 result, NULL, element_qname);
539 0 goto exit;
540 }
541
542 0 exit:
543
544 0 GlobusSoapMessageDebugExit();
545 0 return result;
546 }
547
548
549
550 globus_result_t
551 wsa_FaultCodesType_serialize(
552 const xsd_QName * element_qname,
553 const wsa_FaultCodesType * instance,
554 globus_soap_message_handle_t message_handle,
555 globus_xsd_element_options_t options)
556 0 {
557 0 globus_result_t result = GLOBUS_SUCCESS;
558 xsd_QName subelement;
559 0 globus_list_t * any_attr_keys = NULL;
560 0 globus_list_t * any_attr_keys_iterator = NULL;
561 0 xsd_QName * type_attr = NULL;
562 0 char * type_value = NULL;
563 0 char * prefix = NULL;
564 int prefix_created;
565 0 int define_prefix = 0;
566 int i;
567 0 char * type_attr_prefix = NULL;
568
569 GlobusFuncName(wsa_FaultCodesType_serialize);
570 0 GlobusSoapMessageDebugEnter();
571
572
573 0 if (!wsa_FaultCodesType_l_is_valid_restriction(instance))
574 {
575 0 result = GlobusSoapMessageErrorSerializeFailed(result,
576 NULL,
577 element_qname);
578
579 0 goto exit;
580
581 }
582
583 0 result = xsd_QName_serialize(
584 element_qname,
585 instance,
586 message_handle,
587 options);
588
589 0 exit:
590
591 0 if(any_attr_keys)
592 {
593 0 globus_list_free(any_attr_keys);
594 }
595
596 0 GlobusSoapMessageDebugExit();
597 0 return result;
598 }
599
600
601
602 globus_result_t
603 wsa_FaultCodesType_deserialize_contents(
604 const xsd_QName * element_qname, /* ignored */
605 wsa_FaultCodesType * inst,
606 globus_soap_message_handle_t message_handle,
607 globus_xsd_element_options_t options)
608 0 {
609 0 globus_result_t result = GLOBUS_SUCCESS;
610 GlobusFuncName(wsa_FaultCodesType_deserialize_contents);
611 0 GlobusSoapMessageDebugEnter();
612
613 0 result = wsa_FaultCodesType_deserialize(
614 NULL,
615 inst,
616 message_handle,
617 options | GLOBUS_XSD_ELEMENT_CONTENTS_ONLY);
618 0 if(result != GLOBUS_SUCCESS)
619 {
620 0 result = GlobusSoapMessageErrorDeserializeFailed(
621 result, element_qname);
622 0 goto exit;
623 }
624
625 0 exit:
626
627 0 GlobusSoapMessageDebugExit();
628 0 return result;
629 }
630
631
632
633 globus_result_t
634 wsa_FaultCodesType_deserialize(
635 const xsd_QName * element_qname,
636 wsa_FaultCodesType * instance,
637 globus_soap_message_handle_t message_handle,
638 globus_xsd_element_options_t options)
639 0 {
640 0 globus_result_t result = GLOBUS_SUCCESS;
641 xsd_QName subelement;
642 GlobusFuncName(wsa_FaultCodesType_deserialize);
643 0 GlobusSoapMessageDebugEnter();
644
645
646 0 result = xsd_QName_deserialize(element_qname,
647 instance, message_handle, options);
648
649 0 if (result != GLOBUS_SUCCESS)
650 {
651 0 result = GlobusSoapMessageErrorDeserializeFailed(
652 result, element_qname);
653 0 goto exit;
654 }
655
656 0 if (!wsa_FaultCodesType_l_is_valid_restriction(instance))
657 {
658 0 result = GlobusSoapMessageErrorDeserializeFailed(result,
659 element_qname);
660
661 }
662
663
664 0 exit:
665
666 0 GlobusSoapMessageDebugExit();
667 0 return result;
668 }
669
670
671
672 globus_result_t
673 wsa_FaultCodesType_deserialize_pointer(
674 const xsd_QName * element_qname,
675 wsa_FaultCodesType ** ip,
676 globus_soap_message_handle_t message_handle,
677 globus_xsd_element_options_t options)
678 0 {
679 0 wsa_FaultCodesType * instance = NULL;
680 0 globus_result_t result = GLOBUS_SUCCESS;
681 xsd_QName subelement;
682 GlobusFuncName(wsa_FaultCodesType_deserialize_pointer);
683 0 GlobusSoapMessageDebugEnter();
684
685 0 *ip = NULL;
686
687
688 0 result = xsd_QName_deserialize_pointer(
689 element_qname,
690 ip, message_handle, options);
691
692 0 if (result != GLOBUS_SUCCESS)
693 {
694 0 result = GlobusSoapMessageErrorDeserializeFailed(
695 result, element_qname);
696 0 goto exit;
697 }
698
699 0 if (*ip && !wsa_FaultCodesType_l_is_valid_restriction(*ip))
700 {
701 0 result = GlobusSoapMessageErrorDeserializeFailed(result,
702 element_qname);
703
704 }
705
706
707 0 exit:
708
709 0 GlobusSoapMessageDebugExit();
710 0 return result;
711 }
712
713
714
715 globus_result_t
716 wsa_FaultCodesType_array_init_contents(
717 wsa_FaultCodesType_array * array)
718 0 {
719 GlobusFuncName(wsa_FaultCodesType_array_init_contents);
720 0 GlobusSoapMessageDebugEnter();
721
722 0 array->elements = NULL;
723 0 array->length = 0;
724 0 array->type_info = &wsa_FaultCodesType_info;
725
726 0 GlobusSoapMessageDebugExit();
727 0 return GLOBUS_SUCCESS;
728 }
729
730 globus_result_t
731 wsa_FaultCodesType_array_init(
732 wsa_FaultCodesType_array ** arr)
733 0 {
734 0 return globus_xsd_generic_array_init(
735 (globus_xsd_generic_array_t **) arr,
736 &wsa_FaultCodesType_info);
737 }
738 /* wsa_FaultCodesType_array_info() */
739
740 void
741 wsa_FaultCodesType_array_destroy_contents(
742 wsa_FaultCodesType_array * array)
743 0 {
744 0 globus_xsd_generic_array_destroy_contents(
745 (globus_xsd_generic_array_t *) array);
746 0 }
747
748 void
749 wsa_FaultCodesType_array_destroy(
750 wsa_FaultCodesType_array * array)
751 0 {
752
753 0 globus_xsd_generic_array_destroy(
754 (globus_xsd_generic_array_t *) array);
755 0 }
756
757 globus_result_t
758 wsa_FaultCodesType_array_copy(
759 wsa_FaultCodesType_array ** dest_arr,
760 const wsa_FaultCodesType_array * src_arr)
761 0 {
762 0 return globus_xsd_generic_array_copy(
763 (globus_xsd_generic_array_t **) dest_arr,
764 (const globus_xsd_generic_array_t *) src_arr);
765 }
766
767 globus_result_t
768 wsa_FaultCodesType_array_copy_contents(
769 wsa_FaultCodesType_array * dest_arr,
770 const wsa_FaultCodesType_array * src_arr)
771 0 {
772 0 return globus_xsd_generic_array_copy_contents(
773 (globus_xsd_generic_array_t *) dest_arr,
774 (const globus_xsd_generic_array_t *) src_arr);
775 }
776
777 wsa_FaultCodesType *
778 wsa_FaultCodesType_array_push(
779 wsa_FaultCodesType_array * array)
780 0 {
781 /* Some contents initializers don't initialize subelments but to set their
782 * values to be NULL
783 */
784 0 if (array->type_info == NULL)
785 {
786 0 array->type_info = &wsa_FaultCodesType_info;
787 }
788 0 return globus_xsd_generic_array_push(
789 (globus_xsd_generic_array_t *) array);
790 }
791
792
793 globus_result_t
794 wsa_FaultCodesType_array_serialize(
795 const xsd_QName * element_qname,
796 const wsa_FaultCodesType_array * array,
797 globus_soap_message_handle_t message,
798 globus_xsd_element_options_t options)
799 0 {
800 0 return globus_xsd_generic_array_serialize(
801 element_qname,
802 (const globus_xsd_generic_array_t *) array,
803 message,
804 options);
805 }
806
807 globus_result_t
808 wsa_FaultCodesType_array_deserialize(
809 const xsd_QName * element_qname,
810 wsa_FaultCodesType_array * array,
811 globus_soap_message_handle_t message,
812 globus_xsd_element_options_t options)
813 0 {
814 /* Some initializers set the array contents to NULL */
815 0 if (array->type_info == NULL)
816 {
817 0 array->type_info = &wsa_FaultCodesType_info;
818 }
819
820 0 return globus_xsd_generic_array_deserialize(
821 element_qname,
822 (globus_xsd_generic_array_t *) array,
823 message,
824 options);
825 }
826
827
828 globus_result_t
829 wsa_FaultCodesType_serialize_attribute(
830 const xsd_QName * attr_qname,
831 const wsa_FaultCodesType * val,
832 globus_soap_message_handle_t handle,
833 globus_xsd_element_options_t options)
834 0 {
835 0 globus_result_t result = GLOBUS_SUCCESS;
836 GlobusFuncName(wsa_FaultCodesType_serialize_attribute);
837 0 GlobusSoapMessageDebugEnter();
838
839
840 0 result = xsd_QName_serialize_attribute(
841 attr_qname, (xsd_QName *)val, handle, options);
842 0 if(result != GLOBUS_SUCCESS)
843 {
844 0 result = GlobusSoapMessageErrorSerializeFailed(
845 result, NULL, attr_qname);
846 0 goto exit;
847 }
848
849 0 exit:
850
851 0 GlobusSoapMessageDebugExit();
852 0 return result;
853 }
854
855 globus_result_t
856 wsa_FaultCodesType_deserialize_attribute(
857 const xsd_QName * attr_qname,
858 wsa_FaultCodesType * instance,
859 globus_soap_message_handle_t message,
860 globus_xsd_element_options_t options)
861 0 {
862 0 globus_result_t result = GLOBUS_SUCCESS;
863 GlobusFuncName(wsa_FaultCodesType_deserialize_attribute);
864 0 GlobusSoapMessageDebugEnter();
865
866
867 0 result = xsd_QName_deserialize_attribute(
868 attr_qname, (xsd_QName *)instance, message, options);
869
870 0 if(result != GLOBUS_SUCCESS)
871 {
872 0 result = GlobusSoapMessageErrorDeserializeFailed(
873 result, attr_qname);
874 0 goto exit;
875 }
876
877 0 exit:
878
879 0 GlobusSoapMessageDebugExit();
880 0 return result;
881 }
882
883 globus_result_t
884 wsa_FaultCodesType_deserialize_attribute_pointer(
885 const xsd_QName * attr_qname,
886 wsa_FaultCodesType ** instance,
887 globus_soap_message_handle_t message,
888 globus_xsd_element_options_t options)
889 0 {
890 0 globus_result_t result = GLOBUS_SUCCESS;
891 GlobusFuncName(wsa_FaultCodesType_deserialize_attribute_pointer);
892 0 GlobusSoapMessageDebugEnter();
893
894
895 0 result = xsd_QName_deserialize_attribute_pointer(
896 attr_qname, (xsd_QName **)instance, message, options);
897
898 0 if(GlobusSoapMessageStatusAttributeNotFoundCheck(result))
899 {
900 0 result = GLOBUS_SUCCESS;
901 0 wsa_FaultCodesType_destroy(*instance);
902 0 *instance = NULL;
903 goto exit;
904 }
905
906 0 exit:
907
908 0 GlobusSoapMessageDebugExit();
909 0 return result;
910 }
911
912
913 static
914 xsd_QName * wsa_FaultCodesType_l_restrictions[] =
915 {
916 &wsa_FaultCodesType_wsa_InvalidAddressingHeader,
917
918
919 &wsa_FaultCodesType_wsa_InvalidAddress,
920
921
922 &wsa_FaultCodesType_wsa_InvalidEPR,
923
924
925 &wsa_FaultCodesType_wsa_InvalidCardinality,
926
927
928 &wsa_FaultCodesType_wsa_MissingAddressInEPR,
929
930
931 &wsa_FaultCodesType_wsa_DuplicateMessageID,
932
933
934 &wsa_FaultCodesType_wsa_ActionMismatch,
935
936
937 &wsa_FaultCodesType_wsa_MessageAddressingHeaderRequired,
938
939
940 &wsa_FaultCodesType_wsa_DestinationUnreachable,
941
942
943 &wsa_FaultCodesType_wsa_ActionNotSupported,
944
945
946 &wsa_FaultCodesType_wsa_EndpointUnavailable,
947
948
949
950 NULL
951 };
952
953 globus_bool_t
954 wsa_FaultCodesType_l_is_valid_restriction(
955 const wsa_FaultCodesType * instance)
956 0 {
957 int i;
958 0 globus_bool_t valid = GLOBUS_FALSE;
959 GlobusFuncName(wsa_FaultCodesType_l_validate_restriction);
960 0 GlobusSoapMessageDebugEnter();
961
962
963
964 0 for (i = 0; wsa_FaultCodesType_l_restrictions[i] != NULL; i++)
965 {
966
967 0 if (xsd_QName_keyeq((void *) wsa_FaultCodesType_l_restrictions[i],
968 (void *) instance))
969 {
970 0 valid = GLOBUS_TRUE;
971
972 0 break;
973 }
974
975 }
976
977 0 GlobusSoapMessageDebugExit();
978
979 0 return valid;