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 "sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType.h"
26
27 #ifndef GLOBUS_DONT_DOCUMENT_INTERNAL
28 xsd_QName sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_qname =
29 {
30     SGTEST_SERVICEGROUPTESTPORTTYPEGTWSDLRESOURCEPROPERTIESTYPE_NS,
31     SGTEST_SERVICEGROUPTESTPORTTYPEGTWSDLRESOURCEPROPERTIESTYPE_LOCAL
32 };
33 #endif /* GLOBUS_DONT_DOCUMENT_INTERNAL */
34
35 globus_result_t
36 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_serialize_wrapper(
37     const xsd_QName *                   element_qname,
38     const void *                        instance,
39     globus_soap_message_handle_t        message_handle,
40     globus_xsd_element_options_t        options)
41 0 {
42 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_serialize(
43         element_qname,
44         (const sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *) instance,
45         message_handle, options);
46 }
47
48 globus_result_t
49 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize_pointer_wrapper(
50     const xsd_QName *                   element_qname,
51     void **                             ip,
52     globus_soap_message_handle_t        message_handle,
53     globus_xsd_element_options_t        options)
54 0 {
55 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize_pointer(
56         element_qname,
57         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType **) ip,
58         message_handle, options);
59 }
60
61 globus_result_t
62 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init_wrapper(void **object)
63 0 {
64 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init(
65         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType **) object);
66 }
67
68 void
69 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy_wrapper(
70     void *                          object)
71 0 {
72 0     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy(
73         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *) object);
74 }
75
76 globus_result_t
77 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy_wrapper(
78     void **                         dest_obj,
79     const void *                    src_obj)
80 0 {
81 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy(
82         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType **) dest_obj,
83         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *) src_obj);
84 }
85
86 globus_result_t
87 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init_contents_wrapper(void *object)
88 0 {
89 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init_contents(
90         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *) object);
91 }
92
93 void
94 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy_contents_wrapper(
95     void *                          object)
96 0 {
97 0     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy_contents(
98         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *) object);
99 }
100
101 globus_result_t
102 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy_contents_wrapper(
103     void *                          dest_obj,
104     const void *                    src_obj)
105 0 {
106 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy_contents(
107         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *) dest_obj,
108         (const sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *) src_obj);
109 }
110
111 globus_result_t
112 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_serialize_contents_wrapper(
113     const xsd_QName *                   element_qname,
114     const void *                        instance,
115     globus_soap_message_handle_t        message_handle,
116     globus_xsd_element_options_t        options)
117 0 {
118 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_serialize_contents(
119         element_qname,
120         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *) instance,
121         message_handle, options);
122 }
123
124 globus_result_t
125 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize_contents_wrapper(
126     const xsd_QName *                   element_qname,
127     void **                             instance,
128     globus_soap_message_handle_t        message_handle,
129     globus_xsd_element_options_t        options)
130 0 {
131 0     globus_result_t                     result;
132 0     GlobusFuncName(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize_contents_wrapper);
133 0     GlobusSoapMessageDebugEnter();
134
135 0     if(!*instance)
136     {
137 0         result = sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init(
138             (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType **)instance);
139 0         if(result != GLOBUS_SUCCESS)
140         {
141 0             goto error;
142         }
143     }
144
145 0     result = sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize_contents(
146         element_qname,
147         *(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType **)instance,
148         message_handle, options);
149 error:
150 0     GlobusSoapMessageDebugExit();
151 0     return result;
152 }
153
154 globus_result_t
155 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_serialize_wrapper(
156     const xsd_QName *               element,
157     const void *                    instance,
158     globus_soap_message_handle_t    message,
159     globus_xsd_element_options_t    options)
160 0 {
161 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_serialize(
162         element,
163         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array *) instance,
164         message, options);
165 }
166
167 globus_result_t
168 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_deserialize_wrapper(
169     const xsd_QName *                   element_qname,
170     void **                             inst,
171     globus_soap_message_handle_t        message,
172     globus_xsd_element_options_t        options)
173 0 {
174 0     if(!*inst)
175     {
176 0         globus_result_t                 result;
177
178 0         result = sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_init(
179             (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array **)inst);
180 0         if(result != GLOBUS_SUCCESS)
181         {
182 0             return result;
183         }
184     }
185
186 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_deserialize(
187         element_qname,
188         *(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array **) inst,
189         message, options);
190 }
191
192 globus_result_t
193 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_init_wrapper(
194     void **                             arr)
195 0 {
196 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_init(
197         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array **) arr);
198 }
199
200 void
201 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_destroy_wrapper(
202     void *                              arr)
203 0 {
204 0     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_destroy(
205         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array *) arr);
206 }
207
208 globus_result_t
209 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_copy_wrapper(
210     void **                             dest_arr,
211     const void *                        src_arr)
212 0 {
213 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_copy(
214         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array **) dest_arr,
215         (const sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array *) src_arr);
216 }
217
218 globus_result_t
219 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_init_contents_wrapper(
220     void *                              arr)
221 0 {
222 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_init_contents(
223         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array *) arr);
224 }
225
226 void
227 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_destroy_contents_wrapper(
228     void *                              arr)
229 0 {
230 0     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_destroy_contents(
231         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array *) arr);
232 }
233
234 globus_result_t
235 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_copy_contents_wrapper(
236     void *                              dest_arr,
237     const void *                        src_arr)
238 0 {
239 0     return sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_copy_contents(
240         (sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array *) dest_arr,
241         (const sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array *) src_arr);
242 }
243
244 struct globus_xsd_type_info_s sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_contents_info =
245 {
246     &sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_qname,
247     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_serialize_contents_wrapper,
248     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize_contents_wrapper,
249     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init_wrapper,
250     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy_wrapper,
251     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy_wrapper,
252     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init_contents_wrapper,
253     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy_contents_wrapper,
254     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy_contents_wrapper,
255     sizeof(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType),
256     NULL,
257     NULL,
258     NULL
259 };
260
261 struct globus_xsd_type_info_s sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_info =
262 {
263     &sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_qname,
264     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_serialize_wrapper,
265     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_deserialize_wrapper,
266     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_init_wrapper,
267     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_destroy_wrapper,
268     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_copy_wrapper,
269     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_init_contents_wrapper,
270     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_destroy_contents_wrapper,
271     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_copy_contents_wrapper,
272     sizeof(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType),
273     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_push_wrapper,
274     NULL,
275     NULL
276 };
277
278 struct globus_xsd_type_info_s sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_info =
279 {
280     &sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_qname,
281     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_serialize_wrapper,
282     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize_pointer_wrapper,
283     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init_wrapper,
284     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy_wrapper,
285     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy_wrapper,
286     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init_contents_wrapper,
287     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy_contents_wrapper,
288     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy_contents_wrapper,
289     sizeof(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType),
290     NULL,
291     &sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_contents_info,
292     &sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_info
293 };
294
295 globus_result_t
296 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init_contents(
297     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType * instance)
298 0 {
299 0     globus_result_t                     result = GLOBUS_SUCCESS;
300 0     GlobusFuncName(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init_contents);
301 0     GlobusSoapMessageDebugEnter();
302
303 0     memset(instance, 0, sizeof(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType));
304
305 0     GlobusSoapMessageDebugExit();
306 0     return result;
307 }
308
309 globus_result_t
310 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init(
311     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType ** object)
312 0 {
313 0     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType * instance;
314 0     globus_result_t                     result = GLOBUS_SUCCESS;
315 0     GlobusFuncName(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init);
316 0     GlobusSoapMessageDebugEnter();
317
318 0     instance = globus_malloc(sizeof(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType));
319 0     if(!instance)
320     {
321 0         result = GlobusSoapMessageErrorOutOfMemory;
322 0         goto exit;
323     }
324
325 0     memset(instance, 0, sizeof(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType));
326
327 0     *object = instance;
328
329  exit:
330 0     GlobusSoapMessageDebugExit();
331 0     return result;
332 }
333
334 void
335 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy(
336     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType * instance)
337 0 {
338 0     GlobusFuncName(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy);
339 0     GlobusSoapMessageDebugEnter();
340
341 0     if(!instance)
342     {
343 0         goto exit;
344     }
345
346 0     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy_contents(instance);
347 0     globus_free(instance);
348
349  exit:
350
351 0     GlobusSoapMessageDebugExit();
352 }
353
354
355 void
356 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy_contents(
357     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType * instance)
358 0 {
359 0     GlobusFuncName(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy_contents);
360 0     GlobusSoapMessageDebugEnter();
361
362 0     if(instance)
363     {
364
365
366 0     wsnt_TopicExpressionType_array_destroy_contents(&instance->Topic);
367
368 0     xsd_anyURI_array_destroy_contents(&instance->TopicExpressionDialects);
369
370 0     wssg_EntryType_array_destroy_contents(&instance->Entry);
371
372 0     wssg_MembershipContentRuleType_array_destroy_contents(&instance->MembershipContentRule);
373
374 0     xsd_boolean_destroy_contents(
375          &instance->FixedTopicSet);
376
377     }
378
379 0     GlobusSoapMessageDebugExit();
380 }
381
382
383 globus_result_t
384 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy(
385     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType ** dest_obj,
386     const sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType * src_obj)
387 0 {
388 0     globus_result_t                     result = GLOBUS_SUCCESS;
389 0     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType * instance;
390 0     GlobusFuncName(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy);
391
392 0     GlobusSoapMessageDebugEnter();
393
394 0     instance = calloc(1, sizeof(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType));
395 0     if (instance == NULL)
396     {
397 0         GlobusSoapMessageDebugExit();
398 0         return GlobusSoapMessageErrorOutOfMemory;
399     }
400
401 0     result = sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy_contents(instance, src_obj);
402 0     if(result != GLOBUS_SUCCESS)
403     {
404 0         globus_free(instance);
405 0         GlobusSoapMessageDebugExit();
406 0         return GlobusSoapMessageErrorOutOfMemory;
407     }
408
409 0     *dest_obj = instance;
410 0     GlobusSoapMessageDebugExit();
411 0     return result;
412 }
413
414 globus_result_t
415 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy_contents(
416     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType * instance,
417     const sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType * src_obj)
418 0 {
419 0     globus_result_t                     result = GLOBUS_SUCCESS;
420 0     GlobusFuncName(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_copy_contents);
421
422 0     GlobusSoapMessageDebugEnter();
423     
424 0      result = wsnt_TopicExpressionType_array_copy_contents(
425          &instance->Topic,
426          &src_obj->Topic);
427 0      if(result != GLOBUS_SUCCESS)
428      {
429 0          result = GlobusSoapMessageErrorCopyFailed(
430              result, NULL, &wsnt_TopicExpressionType_qname);
431 0          goto Topic_destroy_array;
432      }
433     
434 0      result = xsd_anyURI_array_copy_contents(
435          &instance->TopicExpressionDialects,
436          &src_obj->TopicExpressionDialects);
437 0      if(result != GLOBUS_SUCCESS)
438      {
439 0          result = GlobusSoapMessageErrorCopyFailed(
440              result, NULL, &xsd_anyURI_qname);
441 0          goto TopicExpressionDialects_destroy_array;
442      }
443     
444 0      result = wssg_EntryType_array_copy_contents(
445          &instance->Entry,
446          &src_obj->Entry);
447 0      if(result != GLOBUS_SUCCESS)
448      {
449 0          result = GlobusSoapMessageErrorCopyFailed(
450              result, NULL, &wssg_EntryType_qname);
451 0          goto Entry_destroy_array;
452      }
453     
454 0      result = wssg_MembershipContentRuleType_array_copy_contents(
455          &instance->MembershipContentRule,
456          &src_obj->MembershipContentRule);
457 0      if(result != GLOBUS_SUCCESS)
458      {
459 0          result = GlobusSoapMessageErrorCopyFailed(
460              result, NULL, &wssg_MembershipContentRuleType_qname);
461 0          goto MembershipContentRule_destroy_array;
462      }
463
464 0     result = xsd_boolean_copy_contents(
465         &instance->FixedTopicSet,
466         &src_obj->FixedTopicSet);
467 0     if(result != GLOBUS_SUCCESS)
468     {
469 0         result = GlobusSoapMessageErrorCopyFailed(
470                 result, NULL, &xsd_boolean_qname);
471         goto FixedTopicSet_destroy;
472     }
473
474 0     goto exit;
475
476  fail_deserialize:
477 0         xsd_boolean_destroy_contents(
478              &instance->FixedTopicSet);
479
480  FixedTopicSet_destroy:
481 0         wssg_MembershipContentRuleType_array_destroy_contents(
482             &instance->MembershipContentRule);
483
484  MembershipContentRule_destroy_array:
485 0         wssg_EntryType_array_destroy_contents(
486             &instance->Entry);
487
488  Entry_destroy_array:
489 0         xsd_anyURI_array_destroy_contents(
490             &instance->TopicExpressionDialects);
491
492  TopicExpressionDialects_destroy_array:
493 0         wsnt_TopicExpressionType_array_destroy_contents(
494             &instance->Topic);
495
496  Topic_destroy_array:
497
498
499  exit:
500
501 0     GlobusSoapMessageDebugExit();
502 0     return result;
503 }
504
505
506
507 globus_result_t
508 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_serialize_contents(
509     const xsd_QName *                   element_qname, /* ignored */
510     const sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *              inst,
511     globus_soap_message_handle_t        message_handle,
512     globus_xsd_element_options_t        options)
513 0 {
514 0     globus_result_t                     result = GLOBUS_SUCCESS;
515 0     GlobusFuncName(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_serialize_contents);
516 0     GlobusSoapMessageDebugEnter();
517
518 0     result = sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_serialize(
519         NULL,
520         inst,
521         message_handle,
522         options | GLOBUS_XSD_ELEMENT_CONTENTS_ONLY);
523 0     if(result != GLOBUS_SUCCESS)
524     {
525 0         result = GlobusSoapMessageErrorSerializeFailed(
526             result, NULL, element_qname);
527         goto exit;
528     }
529
530  exit:
531
532 0     GlobusSoapMessageDebugExit();
533 0     return result;
534 }
535
536
537
538 globus_result_t
539 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_serialize(
540     const xsd_QName *                   element_qname,
541     const sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *              instance,
542     globus_soap_message_handle_t        message_handle,
543     globus_xsd_element_options_t        options)
544 0 {
545 0     globus_result_t                     result = GLOBUS_SUCCESS;
546 0     xsd_QName                           subelement;
547 0     globus_list_t *                     any_attr_keys = NULL;
548 0     globus_list_t *                     any_attr_keys_iterator = NULL;
549 0     xsd_QName *                         type_attr = NULL;
550
551 0     char *                              prefix = NULL;
552 0     int                                 prefix_created;
553 0     int                                 define_prefix = 0;
554 0     int                                 save_options = options;
555
556 0     GlobusFuncName(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_serialize);
557 0     GlobusSoapMessageDebugEnter();
558
559
560 0     if(!(options & GLOBUS_XSD_ELEMENT_CONTENTS_ONLY))
561     {
562         /* serialize sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType element */
563 0 result = globus_soap_message_element_ns_set(
564             message_handle,
565             element_qname,
566             element_qname->Namespace,
567             &options);
568 0         if(result != GLOBUS_SUCCESS)
569         {
570 0             result = GlobusSoapMessageErrorSerializeFailed(
571                 result, NULL, element_qname);
572 0             goto exit;
573         }
574
575 0         if(((options & GLOBUS_XSD_ELEMENT_TYPE_ATTR) &&
576    !globus_soap_message_serialize_is_c14n_subset(message_handle)))
577         {
578 0             result = globus_soap_message_attribute_ns_set(
579                 message_handle,
580                 element_qname,
581                 "http://www.w3.org/2001/XMLSchema-instance",
582                 &options);
583 0             if(result != GLOBUS_SUCCESS)
584             {
585 0                 result = GlobusSoapMessageErrorSerializeFailed(
586                     result, NULL, element_qname);
587 0                 goto exit;
588             }
589         }
590
591 0         if((options & GLOBUS_XSD_ELEMENT_TYPE_ATTR) &&
592    !globus_soap_message_serialize_is_c14n_subset(message_handle))
593         {
594
595 0             result = globus_soap_message_attribute_ns_set(
596                 message_handle,
597                 element_qname,
598                 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_qname.Namespace,
599                 &options);
600 0             if(result != GLOBUS_SUCCESS)
601             {
602 0                 result = GlobusSoapMessageErrorSerializeFailed(
603                     result, NULL, element_qname);
604 0                 goto exit;
605             }
606         }
607
608 0         result = globus_soap_message_serialize_element(
609             message_handle,
610             element_qname,
611             options,
612             &sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_qname);
613 0         if(result != GLOBUS_SUCCESS)
614         {
615 0             result = GlobusSoapMessageErrorSerializeFailed(
616                 result, NULL, element_qname);
617 0             goto exit;
618         }
619
620 0         if((options & GLOBUS_XSD_ELEMENT_TYPE_ATTR) &&
621    !globus_soap_message_serialize_is_c14n_subset(message_handle))
622         {
623 0            xsd_QName_init(&type_attr);
624        
625 0            type_attr->local = globus_libc_strdup("type");
626 0            type_attr->Namespace = globus_libc_strdup(XSI_NS);
627         }
628
629
630         /* serialize namespaces */
631 0 result = globus_soap_message_element_ns_add(
632             message_handle,
633             element_qname,
634             element_qname->Namespace,
635             &options);
636 0         if(result != GLOBUS_SUCCESS)
637         {
638 0             result = GlobusSoapMessageErrorSerializeFailed(
639                 result, NULL, element_qname);
640 0             goto exit;
641         }
642
643 0         if(((options & GLOBUS_XSD_ELEMENT_TYPE_ATTR) &&
644    !globus_soap_message_serialize_is_c14n_subset(message_handle)))
645         {
646 0             result = globus_soap_message_attribute_ns_add(
647                 message_handle,
648                 element_qname,
649                 "http://www.w3.org/2001/XMLSchema-instance",
650                 &options);
651 0             if(result != GLOBUS_SUCCESS)
652             {
653 0                 result = GlobusSoapMessageErrorSerializeFailed(
654                     result, NULL, element_qname);
655 0                 goto exit;
656             }
657         }
658 0         if ((options & GLOBUS_XSD_ELEMENT_TYPE_ATTR) &&
659    !globus_soap_message_serialize_is_c14n_subset(message_handle))
660         {
661
662 0             result = globus_soap_message_attribute_ns_add(
663                 message_handle,
664                 element_qname,
665                 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_qname.Namespace,
666                 &options);
667 0             if(result != GLOBUS_SUCCESS)
668             {
669 0                 result = GlobusSoapMessageErrorSerializeFailed(
670                     result, NULL, element_qname);
671 0                 goto exit;
672             }
673         }
674
675         /* serialize attributes */
676
677 0         if((options & GLOBUS_XSD_ELEMENT_TYPE_ATTR) &&
678    !globus_soap_message_serialize_is_c14n_subset(message_handle))
679         {
680 0             result = globus_soap_message_serialize_QName_attribute(
681                 message_handle,
682                 type_attr,
683                 &sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_qname);
684 0             if(result != GLOBUS_SUCCESS)
685             {
686 0                 result = GlobusSoapMessageErrorSerializeFailed(
687                     result, NULL, element_qname);
688 0                 goto exit;
689             }
690         }
691
692
693     }
694
695 0     if(!(options & GLOBUS_XSD_ELEMENT_CONTENTS_ONLY))
696     {
697 0         result = globus_soap_message_serialize_element_begin_close(
698             message_handle, element_qname);
699 0         if(result != GLOBUS_SUCCESS)
700         {
701 0             result = GlobusSoapMessageErrorSerializeFailed(
702                 result, NULL, element_qname);
703 0             goto exit;
704         }
705     }
706 0     options &= ~GLOBUS_XSD_ELEMENT_CONTENTS_ONLY;
707
708
709     /* serialize contents of type */
710
711 0     subelement.local = "Topic";
712 0     subelement.Namespace = "http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd";
713
714 0      result = GlobusXSDArrayCheckLowerBounds(
715          1,
716          instance->Topic.length,
717          "Topic");
718 0      if(result != GLOBUS_SUCCESS)
719      {
720 0          result = GlobusSoapMessageErrorSerializeFailed(
721              result, NULL, &wsnt_TopicExpressionType_qname);
722 0          goto exit;
723      }
724     
725 0      result = wsnt_TopicExpressionType_array_serialize(
726          &subelement,
727          &instance->Topic,
728          message_handle,
729          options & (~GLOBUS_XSD_ELEMENT_SET_DEFAULT_NS));
730 0      if(result != GLOBUS_SUCCESS)
731      {
732 0          result = GlobusSoapMessageErrorSerializeFailed(
733              result, NULL, &wsnt_TopicExpressionType_qname);
734 0          goto exit;
735      }
736
737 0     subelement.local = "TopicExpressionDialects";
738 0     subelement.Namespace = "http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd";
739
740 0      result = GlobusXSDArrayCheckLowerBounds(
741          1,
742          instance->TopicExpressionDialects.length,
743          "TopicExpressionDialects");
744 0      if(result != GLOBUS_SUCCESS)
745      {
746 0          result = GlobusSoapMessageErrorSerializeFailed(
747              result, NULL, &xsd_anyURI_qname);
748 0          goto exit;
749      }
750     
751 0      result = xsd_anyURI_array_serialize(
752          &subelement,
753          &instance->TopicExpressionDialects,
754          message_handle,
755          options & (~GLOBUS_XSD_ELEMENT_SET_DEFAULT_NS));
756 0      if(result != GLOBUS_SUCCESS)
757      {
758 0          result = GlobusSoapMessageErrorSerializeFailed(
759              result, NULL, &xsd_anyURI_qname);
760 0          goto exit;
761      }
762
763 0     subelement.local = "Entry";
764 0     subelement.Namespace = "http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ServiceGroup-1.2-draft-01.xsd";
765     
766 0      result = wssg_EntryType_array_serialize(
767          &subelement,
768          &instance->Entry,
769          message_handle,
770          options & (~GLOBUS_XSD_ELEMENT_SET_DEFAULT_NS));
771 0      if(result != GLOBUS_SUCCESS)
772      {
773 0          result = GlobusSoapMessageErrorSerializeFailed(
774              result, NULL, &wssg_EntryType_qname);
775 0          goto exit;
776      }
777
778 0     subelement.local = "MembershipContentRule";
779 0     subelement.Namespace = "http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ServiceGroup-1.2-draft-01.xsd";
780     
781 0      result = wssg_MembershipContentRuleType_array_serialize(
782          &subelement,
783          &instance->MembershipContentRule,
784          message_handle,
785          options & (~GLOBUS_XSD_ELEMENT_SET_DEFAULT_NS));
786 0      if(result != GLOBUS_SUCCESS)
787      {
788 0          result = GlobusSoapMessageErrorSerializeFailed(
789              result, NULL, &wssg_MembershipContentRuleType_qname);
790 0          goto exit;
791      }
792
793 0     subelement.local = "FixedTopicSet";
794 0     subelement.Namespace = "http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd";
795
796 0     result = xsd_boolean_serialize(
797          &subelement,
798          &instance->FixedTopicSet,
799          message_handle,
800          options & (~GLOBUS_XSD_ELEMENT_SET_DEFAULT_NS));
801 0     if(result != GLOBUS_SUCCESS)
802     {
803 0         result = GlobusSoapMessageErrorSerializeFailed(
804                 result, NULL, &xsd_boolean_qname);
805 0         goto exit;
806     }
807
808 0     options = save_options;
809
810 0     if(!(options & GLOBUS_XSD_ELEMENT_CONTENTS_ONLY))
811     {
812         /* add end element */
813 0         result = globus_soap_message_serialize_element_end(
814             message_handle,
815             element_qname,
816             options,
817             &sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_qname);
818 0         if(result != GLOBUS_SUCCESS)
819         {
820 0             result = GlobusSoapMessageErrorSerializeFailed(
821                 result, NULL, element_qname);
822 0             goto exit;
823         }
824
825 0         globus_soap_message_element_ns_remove(
826             message_handle,
827             element_qname->Namespace,
828             &options);
829
830     /* remove namespace/prefix mappings for these types */
831
832 0         if(((options & GLOBUS_XSD_ELEMENT_TYPE_ATTR) &&
833    !globus_soap_message_serialize_is_c14n_subset(message_handle)))
834         {
835 0             globus_soap_message_attribute_ns_remove(
836                 message_handle,
837                 "http://www.w3.org/2001/XMLSchema-instance",
838                 &options);
839         }           
840 0         if((options & GLOBUS_XSD_ELEMENT_TYPE_ATTR) &&
841    !globus_soap_message_serialize_is_c14n_subset(message_handle))
842         {
843 0             globus_soap_message_attribute_ns_remove(
844                 message_handle,
845                 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_qname.Namespace,
846                 &options);
847         }           
848
849     }
850
851  exit:
852 0     if (type_attr)
853     {
854 0         xsd_QName_destroy(type_attr);
855     }
856
857
858 0     if(any_attr_keys)
859     {
860 0         globus_list_free(any_attr_keys);
861     }
862
863 0     GlobusSoapMessageDebugExit();
864 0     return result;
865 }
866
867
868
869 globus_result_t
870 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize_contents(
871     const xsd_QName *                   element_qname, /* ignored */
872     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *                    inst,
873     globus_soap_message_handle_t        message_handle,
874     globus_xsd_element_options_t        options)
875 0 {
876 0     globus_result_t                     result = GLOBUS_SUCCESS;
877 0     GlobusFuncName(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize_contents);
878 0     GlobusSoapMessageDebugEnter();
879
880 0     result = sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize(
881         NULL,
882         inst,
883         message_handle,
884         options | GLOBUS_XSD_ELEMENT_CONTENTS_ONLY);
885 0     if(result != GLOBUS_SUCCESS)
886     {
887 0         result = GlobusSoapMessageErrorDeserializeFailed(
888             result, element_qname);
889         goto exit;
890     }
891
892  exit:
893
894 0     GlobusSoapMessageDebugExit();
895 0     return result;
896 }
897
898
899
900 globus_result_t
901 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize(
902     const xsd_QName *                   element_qname,
903     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *                    instance,
904     globus_soap_message_handle_t        message_handle,
905     globus_xsd_element_options_t        options)
906 0 {
907 0     globus_result_t                     result = GLOBUS_SUCCESS;
908 0     xsd_QName                           subelement;
909 0     GlobusFuncName(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize);
910 0     GlobusSoapMessageDebugEnter();
911
912
913 0     if(!(options & GLOBUS_XSD_ELEMENT_CONTENTS_ONLY))
914     {
915 0         result = globus_soap_message_deserialize_element(
916             message_handle, element_qname);
917 0         if(result != GLOBUS_SUCCESS)
918         {
919 0             result = GlobusSoapMessageErrorDeserializeFailed(
920                 result, element_qname);
921 0             goto exit;
922         }
923
924
925 0         result = globus_soap_message_deserialize_element_begin_close(
926             message_handle);
927 0         if(result != GLOBUS_SUCCESS)
928         {
929 0             result = GlobusSoapMessageErrorDeserializeFailed(
930                 result, element_qname);
931 0             goto fail_deserialize;
932         }
933     }
934
935 0     subelement.local = "Topic";
936 0     subelement.Namespace = "http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd";
937     
938 0     result = wsnt_TopicExpressionType_array_deserialize(
939         &subelement,
940         &instance->Topic,
941         message_handle,
942         0);
943 0     if(result != GLOBUS_SUCCESS)
944     {
945 0         result = GlobusSoapMessageErrorDeserializeFailed(
946             result, 
947             (&subelement));
948 0         goto Topic_destroy_array;
949     }
950
951 0     subelement.local = "TopicExpressionDialects";
952 0     subelement.Namespace = "http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd";
953     
954 0     result = xsd_anyURI_array_deserialize(
955         &subelement,
956         &instance->TopicExpressionDialects,
957         message_handle,
958         0);
959 0     if(result != GLOBUS_SUCCESS)
960     {
961 0         result = GlobusSoapMessageErrorDeserializeFailed(
962             result, 
963             (&subelement));
964 0         goto TopicExpressionDialects_destroy_array;
965     }
966
967 0     subelement.local = "Entry";
968 0     subelement.Namespace = "http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ServiceGroup-1.2-draft-01.xsd";
969     
970 0     result = wssg_EntryType_array_deserialize(
971         &subelement,
972         &instance->Entry,
973         message_handle,
974         0);
975 0     if(result != GLOBUS_SUCCESS)
976     {
977 0         result = GlobusSoapMessageErrorDeserializeFailed(
978             result, 
979             (&subelement));
980 0         goto Entry_destroy_array;
981     }
982
983 0     subelement.local = "MembershipContentRule";
984 0     subelement.Namespace = "http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ServiceGroup-1.2-draft-01.xsd";
985     
986 0     result = wssg_MembershipContentRuleType_array_deserialize(
987         &subelement,
988         &instance->MembershipContentRule,
989         message_handle,
990         0);
991 0     if(result != GLOBUS_SUCCESS)
992     {
993 0         result = GlobusSoapMessageErrorDeserializeFailed(
994             result, 
995             (&subelement));
996 0         goto MembershipContentRule_destroy_array;
997     }
998
999 0     subelement.local = "FixedTopicSet";
1000 0     subelement.Namespace = "http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd";
1001
1002 0     result = xsd_boolean_deserialize(
1003          &subelement,
1004          &instance->FixedTopicSet,
1005          message_handle,
1006          0);
1007 0     if(result != GLOBUS_SUCCESS)
1008     {
1009 0         result = GlobusSoapMessageErrorDeserializeFailed(
1010             result, 
1011             &xsd_boolean_qname);
1012 0         goto FixedTopicSet_destroy;
1013     }
1014
1015 0     if(!(options & GLOBUS_XSD_ELEMENT_CONTENTS_ONLY))
1016     {
1017 0         result = globus_soap_message_deserialize_element_end(
1018             message_handle,
1019             element_qname);
1020 0         if(result != GLOBUS_SUCCESS)
1021         {
1022 0             result = GlobusSoapMessageErrorDeserializeFailed(
1023                 result, element_qname);
1024             goto fail_deserialize;
1025         }
1026     }
1027
1028 0     goto exit;
1029
1030  fail_deserialize:
1031 0         xsd_boolean_destroy_contents(
1032              &instance->FixedTopicSet);
1033
1034  FixedTopicSet_destroy:
1035 0         wssg_MembershipContentRuleType_array_destroy_contents(
1036             &instance->MembershipContentRule);
1037
1038  MembershipContentRule_destroy_array:
1039 0         wssg_EntryType_array_destroy_contents(
1040             &instance->Entry);
1041
1042  Entry_destroy_array:
1043 0         xsd_anyURI_array_destroy_contents(
1044             &instance->TopicExpressionDialects);
1045
1046  TopicExpressionDialects_destroy_array:
1047 0         wsnt_TopicExpressionType_array_destroy_contents(
1048             &instance->Topic);
1049
1050  Topic_destroy_array:
1051
1052
1053  exit:
1054
1055 0     GlobusSoapMessageDebugExit();
1056 0     return result;
1057 }
1058
1059
1060
1061 globus_result_t
1062 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize_pointer(
1063     const xsd_QName *                   element_qname,
1064     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType **                   ip,
1065     globus_soap_message_handle_t        message_handle,
1066     globus_xsd_element_options_t        options)
1067 0 {
1068 0     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType * instance = NULL;
1069 0     globus_result_t                     result = GLOBUS_SUCCESS;
1070 0     xsd_QName                           subelement;
1071 0     int                                 found_attrs = 0;
1072 0     int                                 empty_element = 0;
1073 0     GlobusFuncName(sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize_pointer);
1074 0     GlobusSoapMessageDebugEnter();
1075
1076 0     *ip = NULL;
1077
1078 0     result = globus_soap_message_deserialize_element(
1079         message_handle, element_qname);
1080 0     if(result != GLOBUS_SUCCESS &&
1081        (GlobusSoapMessageStatusElementNotFoundCheck(result) ||
1082         GlobusSoapMessageStatusFailedElementCheck(result) ||
1083         GlobusSoapMessageStatusFailedWithTextCheck(result)))
1084     {
1085 0         result = GLOBUS_SUCCESS;
1086 0         goto exit;
1087     }
1088
1089 0     if(result != GLOBUS_SUCCESS)
1090     {
1091 0         result = GlobusSoapMessageErrorDeserializeFailed(
1092             result, element_qname);
1093 0         goto exit;
1094     }
1095
1096 0     if(globus_soap_message_deserialize_element_is_empty(
1097            message_handle))
1098     {
1099 0         empty_element = 1;
1100     }
1101
1102 0     result = sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_init(&instance);
1103 0     if(result != GLOBUS_SUCCESS)
1104     {
1105 0         result = GlobusSoapMessageErrorDeserializeFailed(
1106             result, element_qname);
1107 0         goto exit;
1108     }
1109
1110
1111 0     if(found_attrs == 0 && 
1112        globus_soap_message_deserialize_element_is_nil(message_handle))
1113     {
1114 0         sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_destroy(instance);
1115         
1116 0         result = globus_soap_message_deserialize_element_end(
1117                 message_handle,
1118                 element_qname);
1119 0         if(result != GLOBUS_SUCCESS)
1120         {
1121 0             result = GlobusSoapMessageErrorDeserializeFailed(
1122                 result, element_qname);
1123 0             goto exit;
1124         }
1125
1126 0         *ip = NULL;
1127 0         globus_object_free(globus_error_get(result));
1128 0         result = GLOBUS_SUCCESS;
1129 0         goto exit;
1130     }
1131
1132
1133 0     if(empty_element)
1134     {
1135 0         result = globus_soap_message_deserialize_element_end(
1136             message_handle,
1137             element_qname);
1138 0         if(result != GLOBUS_SUCCESS)
1139         {
1140 0             result = GlobusSoapMessageErrorDeserializeFailed(
1141                 result, element_qname);
1142 0             goto fail_deserialize;
1143         }
1144
1145 0         *ip = instance;
1146 0         goto exit;
1147     }
1148
1149 0     result = globus_soap_message_deserialize_element_begin_close(
1150         message_handle);
1151 0     if(result != GLOBUS_SUCCESS)
1152     {
1153 0         result = GlobusSoapMessageErrorDeserializeFailed(
1154             result, element_qname);
1155 0         goto exit;
1156     }
1157
1158 0     result = sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_deserialize(
1159             element_qname,
1160             instance,
1161             message_handle,
1162             options | GLOBUS_XSD_ELEMENT_CONTENTS_ONLY);
1163
1164 0     result = globus_soap_message_deserialize_element_end(
1165         message_handle,
1166         element_qname);
1167 0     if(result != GLOBUS_SUCCESS)
1168     {
1169 0         result = GlobusSoapMessageErrorDeserializeFailed(
1170             result, element_qname);
1171 0         goto fail_deserialize;
1172     }
1173
1174 0     *ip = instance;
1175
1176 0     goto exit;
1177
1178  fail_deserialize:
1179 0         xsd_boolean_destroy_contents(
1180              &instance->FixedTopicSet);
1181
1182  FixedTopicSet_destroy:
1183 0         wssg_MembershipContentRuleType_array_destroy_contents(
1184             &instance->MembershipContentRule);
1185
1186  MembershipContentRule_destroy_array:
1187 0         wssg_EntryType_array_destroy_contents(
1188             &instance->Entry);
1189
1190  Entry_destroy_array:
1191 0         xsd_anyURI_array_destroy_contents(
1192             &instance->TopicExpressionDialects);
1193
1194  TopicExpressionDialects_destroy_array:
1195 0         wsnt_TopicExpressionType_array_destroy_contents(
1196             &instance->Topic);
1197
1198  Topic_destroy_array:
1199
1200  exit:
1201
1202 0     GlobusSoapMessageDebugExit();
1203 0     return result;
1204 }
1205
1206
1207 globus_result_t
1208 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_init_contents(
1209     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array * array)
1210 0 {
1211 0     return globus_xsd_generic_array_init_contents(
1212         (globus_xsd_generic_array_t *) array,
1213         &sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_info);
1214 }
1215 /* sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_init_contents() */
1216
1217 globus_result_t
1218 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_init(
1219     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array ** arr)
1220 0 {
1221 0     return globus_xsd_generic_array_init(
1222         (globus_xsd_generic_array_t **) arr,
1223         &sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_info);
1224 }
1225 /* sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_init() */
1226
1227 void
1228 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_destroy_contents(
1229     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array * array)
1230 0 {
1231 0     globus_xsd_generic_array_destroy_contents(
1232         (globus_xsd_generic_array_t *) array);
1233 }
1234 /* sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_destroy_contents() */
1235
1236 void
1237 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_destroy(
1238     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array * array)
1239 0 {
1240 0     globus_xsd_generic_array_destroy(
1241         (globus_xsd_generic_array_t *) array);
1242 }
1243 /* sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_destroy() */
1244
1245 globus_result_t
1246 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_copy(
1247     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array ** dest_arr,
1248     const sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array * src_arr)
1249 0 {
1250 0     return globus_xsd_generic_array_copy(
1251         (globus_xsd_generic_array_t **) dest_arr,
1252         (globus_xsd_generic_array_t *) src_arr);
1253 }
1254 /* sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_copy() */
1255
1256 globus_result_t
1257 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_copy_contents(
1258     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array * dest_arr,
1259     const sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array * src_arr)
1260 0 {
1261 0     return globus_xsd_generic_array_copy_contents(
1262         (globus_xsd_generic_array_t *) dest_arr,
1263         (globus_xsd_generic_array_t *) src_arr);
1264 }
1265 /* sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_copy_contents() */
1266
1267 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType *
1268 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_push(
1269     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array * array)
1270 0 {
1271     /* Some contents initializers don't initialize subelments but to set their
1272      * values to be NULL
1273      */
1274 0     if (array->type_info == NULL)
1275     {
1276 0         array->type_info = &sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_info;
1277     }
1278
1279 0     return globus_xsd_generic_array_push(
1280         (globus_xsd_generic_array_t *) array);
1281 }
1282 /* sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_push() */
1283
1284 void *
1285 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_push_wrapper(
1286     void * array)
1287 0 {
1288 0     return (void *) sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_push((sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array *) array);
1289 }
1290
1291 globus_result_t
1292 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_serialize(
1293     const xsd_QName *                   element_qname,
1294     const sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array *        array,
1295     globus_soap_message_handle_t        message,
1296     globus_xsd_element_options_t        options)
1297 0 {
1298 0     return globus_xsd_generic_array_serialize(
1299         element_qname,
1300         (const globus_xsd_generic_array_t *) array,
1301         message,
1302         options);
1303 }
1304 /* sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_serialize() */
1305
1306 globus_result_t
1307 sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array_deserialize(
1308     const xsd_QName *                   element_qname,
1309     sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_array * array,
1310     globus_soap_message_handle_t        message,
1311     globus_xsd_element_options_t        options)
1312 0 {
1313     /* Some initializers set the array's contents to NULL */
1314 0     if (array->type_info == NULL)
1315     {
1316 0         array->type_info = &sgtest_ServiceGroupTestPortTypeGTWSDLResourcePropertiesType_info;
1317     }
1318 0     return globus_xsd_generic_array_deserialize(
1319         element_qname,
1320         (globus_xsd_generic_array_t *) array,
1321         message,
1322         options);