Main Page | Modules | Data Structures | File List | Data Fields | Globals

Complex type: wsu_PortReferenceType
[XML Types]

Data Structures

Defines

Typedefs

Functions

Variables


Define Documentation

#define WSU_PORTREFERENCETYPE_NS   "http://schemas.xmlsoap.org/ws/2002/07/utility"
 

Namespace of the wsu_PortReferenceType complex type.

Definition at line 45 of file wsu_PortReferenceType.h.

#define WSU_PORTREFERENCETYPE_LOCAL   "PortReferenceType"
 

Local part of the QName of the wsu_PortReferenceType complex type.

Definition at line 50 of file wsu_PortReferenceType.h.


Typedef Documentation

typedef wsu_PortReferenceType* wsu_PortReferenceType_o
 

The wsu_PortReferenceType_o complex type, which represents an optional instance of a {http://schemas.xmlsoap.org/ws/2002/07/utility}PortReferenceType element.

Definition at line 39 of file wsu_PortReferenceType.h.

typedef struct wsu_PortReferenceType_array_s wsu_PortReferenceType_array
 

Array of wsu_PortReferenceType elements.

This structure type is used represent an array of wsu_PortReferenceType elements.

Arrays are allocated by wsu_PortReferenceType_array_init() and freed by calling wsu_PortReferenceType_array_destroy(). Elements may be added to an array by calling wsu_PortReferenceType_array_push().

Referenced by wsu_PortReferenceType_array_copy(), wsu_PortReferenceType_array_copy_contents(), wsu_PortReferenceType_array_copy_contents_wrapper(), wsu_PortReferenceType_array_copy_wrapper(), wsu_PortReferenceType_array_deserialize(), wsu_PortReferenceType_array_deserialize_wrapper(), wsu_PortReferenceType_array_destroy(), wsu_PortReferenceType_array_destroy_contents(), wsu_PortReferenceType_array_destroy_contents_wrapper(), wsu_PortReferenceType_array_destroy_wrapper(), wsu_PortReferenceType_array_init(), wsu_PortReferenceType_array_init_contents(), wsu_PortReferenceType_array_init_contents_wrapper(), wsu_PortReferenceType_array_init_wrapper(), wsu_PortReferenceType_array_push(), wsu_PortReferenceType_array_push_wrapper(), wsu_PortReferenceType_array_serialize(), and wsu_PortReferenceType_array_serialize_wrapper().


Function Documentation

globus_result_t wsu_PortReferenceType_init (
     wsu_PortReferenceType ** inst )
 

Initialize a wsu_PortReferenceType.

Allocates a new wsu_PortReferenceType and initializes its contents. When the structure is no longer needed, it should be freed by calling wsu_PortReferenceType_destroy().

Parameters:
inst Pointer to set to a newly allocated instance.

Definition at line 305 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType, and wsu_PortReferenceType_init().

Referenced by wsu_PortReferenceType_deserialize_contents_wrapper(), wsu_PortReferenceType_deserialize_pointer(), wsu_PortReferenceType_init(), and wsu_PortReferenceType_init_wrapper().

00307 {
00308     wsu_PortReferenceType * instance;
00309     globus_result_t                     result = GLOBUS_SUCCESS;
00310     GlobusFuncName(wsu_PortReferenceType_init);
00311     GlobusSoapMessageDebugEnter();
00312 
00313     instance = globus_malloc(sizeof(wsu_PortReferenceType));
00314     if(!instance)
00315     {
00316         result = GlobusSoapMessageErrorOutOfMemory;
00317         goto exit;
00318     }
00319 
00320     memset(instance, 0, sizeof(wsu_PortReferenceType));
00321 
00322     *object = instance;
00323 
00324  exit:
00325     GlobusSoapMessageDebugExit();
00326     return result;
00327 }

void wsu_PortReferenceType_destroy (
     wsu_PortReferenceType * inst )
 

Destroy a wsu_PortReferenceType.

Frees a wsu_PortReferenceType. All subelements and attributes will be destroyed (and freed if they are optional).

Parameters:
inst Pointer to the instance to destroy.

Definition at line 330 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType_destroy(), and wsu_PortReferenceType_destroy_contents().

Referenced by wsu_PortReferenceType_destroy(), and wsu_PortReferenceType_destroy_wrapper().

00332 {
00333     GlobusFuncName(wsu_PortReferenceType_destroy);
00334     GlobusSoapMessageDebugEnter();
00335 
00336     if(!instance)
00337     {
00338         goto exit;
00339     }
00340 
00341     wsu_PortReferenceType_destroy_contents(instance);
00342     globus_free(instance);
00343 
00344  exit:
00345 
00346     GlobusSoapMessageDebugExit();
00347 }

globus_result_t wsu_PortReferenceType_copy (
     wsu_PortReferenceType ** dest,
     const wsu_PortReferenceType * src)
 

Copy a wsu_PortReferenceType.

Perform a deep copy of a wsu_PortReferenceType. The dest structure will be allocated, and then a copy of the contents of src and its subelements and attributes will be made to dest.

Parameters:
dest The wsu_PortReferenceType structure to be initialized with a copy of the contents of the src structure.
src Source wsu_PortReferenceType to be copied.

Definition at line 381 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType, wsu_PortReferenceType_copy(), and wsu_PortReferenceType_copy_contents().

Referenced by wsu_PortReferenceType_copy(), and wsu_PortReferenceType_copy_wrapper().

00384 {
00385     globus_result_t                     result = GLOBUS_SUCCESS;
00386     wsu_PortReferenceType * instance;
00387     GlobusFuncName(wsu_PortReferenceType_copy);
00388 
00389     GlobusSoapMessageDebugEnter();
00390 
00391     instance = malloc(sizeof(wsu_PortReferenceType));
00392     if (instance == NULL)
00393     {
00394         GlobusSoapMessageDebugExit();
00395         return GlobusSoapMessageErrorOutOfMemory;
00396     }
00397 
00398     result = wsu_PortReferenceType_copy_contents(instance, src_obj);
00399     if(result != GLOBUS_SUCCESS)
00400     {
00401         globus_free(instance);
00402         GlobusSoapMessageDebugExit();
00403         return GlobusSoapMessageErrorOutOfMemory;
00404     }
00405 
00406     *dest_obj = instance;
00407     GlobusSoapMessageDebugExit();
00408     return result;
00409 }

globus_result_t wsu_PortReferenceType_init_contents (
     wsu_PortReferenceType * instance )
 

Initialize the contents of a wsu_PortReferenceType.

Initialize the contents of a wsu_PortReferenceType. This should be used when the structure is allocated on the stack or by a some allocator besides wsu_PortReferenceType_init(). The contents may be freed by calling wsu_PortReferenceType_destroy_contents().

Parameters:
instance Pointer to an allocated but uninitialized wsu_PortReferenceType.

Definition at line 291 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType, and wsu_PortReferenceType_init_contents().

Referenced by wsu_PortReferenceType_init_contents(), and wsu_PortReferenceType_init_contents_wrapper().

00293 {
00294     globus_result_t                     result = GLOBUS_SUCCESS;
00295     GlobusFuncName(wsu_PortReferenceType_init_contents);
00296     GlobusSoapMessageDebugEnter();
00297 
00298     memset(instance, 0, sizeof(wsu_PortReferenceType));
00299 
00300     GlobusSoapMessageDebugExit();
00301     return result;
00302 }

void wsu_PortReferenceType_destroy_contents (
     wsu_PortReferenceType * inst )
 

Destroy the contents of a wsu_PortReferenceType.

Destroy the subelements and attributes of the given wsu_PortReferenceType.

Parameters:
inst Pointer to a wsu_PortReferenceType instance to destroy.

Definition at line 350 of file wsu_PortReferenceType.c.

References wsu_AttributedURI_destroy_contents(), and wsu_PortReferenceType_destroy_contents().

Referenced by wsu_PortReferenceType_array_copy_contents(), wsu_PortReferenceType_array_deserialize(), wsu_PortReferenceType_array_destroy_contents(), wsu_PortReferenceType_destroy(), wsu_PortReferenceType_destroy_contents(), and wsu_PortReferenceType_destroy_contents_wrapper().

00352 {
00353     GlobusFuncName(wsu_PortReferenceType_destroy_contents);
00354     GlobusSoapMessageDebugEnter();
00355 
00356     if(instance)
00357     {
00358 
00359 
00360     wsu_AttributedURI_destroy_contents(
00361          &instance->Address);
00362 
00363     xsd_any_array_destroy_contents(&instance->any);
00364 
00365         xsd_anyAttributes_destroy(instance->anyAttributes);
00366         instance->anyAttributes = NULL;
00367 
00368     if(instance->_Id)
00369     {
00370         xsd_ID_destroy(
00371             instance->_Id);
00372         instance->_Id = NULL;
00373     }
00374 
00375     }
00376 
00377     GlobusSoapMessageDebugExit();
00378 }

globus_result_t wsu_PortReferenceType_copy_contents (
     wsu_PortReferenceType * dest,
     const wsu_PortReferenceType * src)
 

Copy the contents of a wsu_PortReferenceType.

Perform a deep copy of the contents of a wsu_PortReferenceType. The dest strcuture must be allocated before making this call. A copy of the subelements and attributes of @ src will be made to dest.

Parameters:
dest Structure to be initialized with copies of the contents of src.
src Source wsu_PortReferenceType to be copied.

Definition at line 412 of file wsu_PortReferenceType.c.

References wsu_AttributedURI_copy_contents(), wsu_AttributedURI_destroy_contents(), wsu_AttributedURI_qname, and wsu_PortReferenceType_copy_contents().

Referenced by wsu_PortReferenceType_array_copy_contents(), wsu_PortReferenceType_copy(), wsu_PortReferenceType_copy_contents(), and wsu_PortReferenceType_copy_contents_wrapper().

00415 {
00416     globus_result_t                     result = GLOBUS_SUCCESS;
00417     GlobusFuncName(wsu_PortReferenceType_copy_contents);
00418 
00419     GlobusSoapMessageDebugEnter();
00420 
00421 
00422     if(src_obj->anyAttributes)
00423     {
00424         result = xsd_anyAttributes_copy(&instance->anyAttributes, 
00425                                         src_obj->anyAttributes);
00426         if(result != GLOBUS_SUCCESS)
00427         {
00428             result = GlobusSoapMessageErrorCopyAnyAttrsFailed(
00429                 result, NULL);
00430             goto xsd_anyAttributes_after_destroy;
00431         }
00432     }
00433     else
00434     {
00435         instance->anyAttributes = NULL;
00436     }
00437 
00438     if(src_obj->_Id)
00439     {
00440         result = xsd_ID_copy(
00441             &instance->_Id,
00442             src_obj->_Id);
00443         if(result != GLOBUS_SUCCESS)
00444         {
00445             result = GlobusSoapMessageErrorCopyFailed(
00446                 result, NULL, &xsd_ID_qname);
00447             goto _Id_destroy;
00448         }
00449     }
00450     else
00451     {
00452         instance->_Id = NULL;
00453     }
00454 
00455     result = wsu_AttributedURI_copy_contents(
00456         &instance->Address,
00457         &src_obj->Address);
00458     if(result != GLOBUS_SUCCESS)
00459     {
00460         result = GlobusSoapMessageErrorCopyFailed(
00461                 result, NULL, &wsu_AttributedURI_qname);
00462         goto Address_destroy;
00463     }
00464     
00465      result = xsd_any_array_copy_contents(
00466          &instance->any,
00467          &src_obj->any);
00468      if(result != GLOBUS_SUCCESS)
00469      {
00470          result = GlobusSoapMessageErrorCopyFailed(
00471              result, NULL, &xsd_any_qname);
00472          goto any_destroy_array;
00473      }
00474 
00475     goto exit;
00476 
00477  fail_deserialize:
00478 
00479  xsd_anyAttributes_destroy:
00480         xsd_anyAttributes_destroy(instance->anyAttributes);
00481         instance->anyAttributes = NULL;
00482  xsd_anyAttributes_after_destroy:
00483 
00484  _Id_destroy:
00485 
00486     if(instance->_Id)
00487     {
00488         xsd_ID_destroy(
00489             instance->_Id);
00490         instance->_Id = NULL;
00491     }
00492         xsd_any_array_destroy_contents(
00493             &instance->any);
00494 
00495  any_destroy_array:
00496         wsu_AttributedURI_destroy_contents(
00497              &instance->Address);
00498 
00499  Address_destroy:
00500 
00501 
00502  exit:
00503 
00504     GlobusSoapMessageDebugExit();
00505     return result;
00506 }

globus_result_t wsu_PortReferenceType_deserialize (
     xsd_QName * element_name,
     wsu_PortReferenceType * val,
     globus_soap_message_handle_t message_handle,
     globus_xsd_element_options_t options)
 

Deserialize a wsu_PortReferenceType.

Deserialize an element containing a wsu_PortReferenceType element.

Parameters:
element_name The name of the element which should enclose the wsu_PortReferenceType.
val Pointer to the wsu_PortReferenceType which will be initialized with the value of the element.
message_handle The handle to deserialize the element from.
options Deserialization options.

Definition at line 1025 of file wsu_PortReferenceType.c.

References wsu_AttributedURI_deserialize(), wsu_AttributedURI_destroy_contents(), wsu_AttributedURI_qname, and wsu_PortReferenceType_deserialize().

Referenced by wsu_PortReferenceType_array_deserialize(), wsu_PortReferenceType_deserialize(), and wsu_PortReferenceType_deserialize_contents().

01030 {
01031     globus_result_t                     result = GLOBUS_SUCCESS;
01032     xsd_QName                           subelement;
01033     GlobusFuncName(wsu_PortReferenceType_deserialize);
01034     GlobusSoapMessageDebugEnter();
01035 
01036 
01037     if(!(options & GLOBUS_XSD_ELEMENT_CONTENTS_ONLY))
01038     {
01039         result = globus_soap_message_deserialize_element(
01040             message_handle, element_qname);
01041         if(result != GLOBUS_SUCCESS)
01042         {
01043             result = GlobusSoapMessageErrorDeserializeFailed(
01044                 result, element_qname);
01045             goto exit;
01046         }
01047 
01048         result = xsd_anyAttributes_init(&instance->anyAttributes);
01049         if(result != GLOBUS_SUCCESS)
01050         {
01051             result = GlobusSoapMessageErrorDeserializeFailed(
01052                 result, element_qname);
01053             goto xsd_anyAttributes_after_destroy;
01054         }
01055 
01056         result = xsd_anyAttributes_deserialize(
01057             message_handle,
01058             instance->anyAttributes);
01059         if(result != GLOBUS_SUCCESS)
01060         {
01061             result = GlobusSoapMessageErrorDeserializeFailed(
01062                 result, element_qname);
01063             goto xsd_anyAttributes_destroy;
01064         }
01065 
01066     subelement.Namespace = "http://schemas.xmlsoap.org/ws/2002/07/utility";
01067     subelement.local = "Id";
01068 
01069     result = xsd_ID_deserialize_attribute_pointer(
01070         &subelement,
01071         &instance->_Id,
01072         message_handle,
01073         0);
01074     if(result != GLOBUS_SUCCESS)
01075     {
01076         result = GlobusSoapMessageErrorDeserializeFailed(result, &subelement);
01077         goto _Id_destroy;
01078     }
01079 
01080 
01081 
01082         result = globus_soap_message_deserialize_element_begin_close(
01083             message_handle);
01084         if(result != GLOBUS_SUCCESS)
01085         {
01086             result = GlobusSoapMessageErrorDeserializeFailed(
01087                 result, element_qname);
01088             goto fail_deserialize;
01089         }
01090     }
01091 
01092     subelement.local = "Address";
01093     subelement.Namespace = "http://schemas.xmlsoap.org/ws/2002/07/utility";
01094 
01095     result = wsu_AttributedURI_deserialize(
01096          &subelement,
01097          &instance->Address,
01098          message_handle,
01099          0);
01100     if(result != GLOBUS_SUCCESS)
01101     {
01102         result = GlobusSoapMessageErrorDeserializeFailed(
01103             result, 
01104             &wsu_AttributedURI_qname);
01105         goto Address_destroy;
01106     }
01107 
01108     subelement.local = "any";
01109     subelement.Namespace = "http://www.w3.org/2001/XMLSchema";
01110     
01111     result = xsd_any_array_deserialize(
01112         &subelement,
01113         &instance->any,
01114         message_handle,
01115         0);
01116     if(result != GLOBUS_SUCCESS)
01117     {
01118         result = GlobusSoapMessageErrorDeserializeFailed(
01119             result, 
01120             (&subelement));
01121         goto any_destroy_array;
01122     }
01123 
01124     if(!(options & GLOBUS_XSD_ELEMENT_CONTENTS_ONLY))
01125     {
01126         result = globus_soap_message_deserialize_element_end(
01127             message_handle,
01128             element_qname);
01129         if(result != GLOBUS_SUCCESS)
01130         {
01131             result = GlobusSoapMessageErrorDeserializeFailed(
01132                 result, element_qname);
01133             goto fail_deserialize;
01134         }
01135     }
01136 
01137     goto exit;
01138 
01139  fail_deserialize:
01140 
01141  xsd_anyAttributes_destroy:
01142         xsd_anyAttributes_destroy(instance->anyAttributes);
01143         instance->anyAttributes = NULL;
01144  xsd_anyAttributes_after_destroy:
01145 
01146  _Id_destroy:
01147 
01148     if(instance->_Id)
01149     {
01150         xsd_ID_destroy(
01151             instance->_Id);
01152         instance->_Id = NULL;
01153     }
01154         xsd_any_array_destroy_contents(
01155             &instance->any);
01156 
01157  any_destroy_array:
01158         wsu_AttributedURI_destroy_contents(
01159              &instance->Address);
01160 
01161  Address_destroy:
01162 
01163 
01164  exit:
01165 
01166     GlobusSoapMessageDebugExit();
01167     return result;
01168 }

globus_result_t wsu_PortReferenceType_deserialize_contents (
     xsd_QName * element_name,
     wsu_PortReferenceType * val,
     globus_soap_message_handle_t message_handle,
     globus_xsd_element_options_t options)
 

Deserialize a wsu_PortReferenceType.

Deserialize a wsu_PortReferenceType whose enclosing element has already been deserialized.

Parameters:
element_name Ignored.
val Pointer to the wsu_PortReferenceType which will be initialized with the value of the current element.
message_handle The handle to deserialize the element from.
options Deserialization options.

Definition at line 994 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType_deserialize(), and wsu_PortReferenceType_deserialize_contents().

Referenced by wsu_PortReferenceType_deserialize_contents(), and wsu_PortReferenceType_deserialize_contents_wrapper().

00999 {
01000     globus_result_t                     result = GLOBUS_SUCCESS;
01001     GlobusFuncName(wsu_PortReferenceType_deserialize_contents);
01002     GlobusSoapMessageDebugEnter();
01003 
01004     result = wsu_PortReferenceType_deserialize(
01005         NULL,
01006         inst,
01007         message_handle,
01008         options | GLOBUS_XSD_ELEMENT_CONTENTS_ONLY);
01009     if(result != GLOBUS_SUCCESS)
01010     {
01011         result = GlobusSoapMessageErrorDeserializeFailed(
01012             result, element_qname);
01013         goto exit;
01014     }
01015 
01016  exit:
01017 
01018     GlobusSoapMessageDebugExit();
01019     return result;
01020 }

globus_result_t wsu_PortReferenceType_deserialize_pointer (
     xsd_QName * element_name,
     wsu_PortReferenceType ** instance,
     globus_soap_message_handle_t message_handle,
     globus_xsd_element_options_t options)
 

Deserialize an optional wsu_PortReferenceType.

Deserialize the next element if it contains a wsu_PortReferenceType.

Parameters:
element_name The name of the element which should enclose the wsu_PortReferenceType.
instance Pointer to the wsu_PortReferenceType * which will be allocated and initialized with the value of the element if it is present.
message_handle The handle to deserialize the element from.
options Deserialization options.

Definition at line 1173 of file wsu_PortReferenceType.c.

References wsu_AttributedURI_deserialize(), wsu_AttributedURI_destroy_contents(), wsu_AttributedURI_qname, wsu_PortReferenceType, wsu_PortReferenceType_deserialize_pointer(), and wsu_PortReferenceType_init().

Referenced by wsu_PortReferenceType_deserialize_pointer(), and wsu_PortReferenceType_deserialize_pointer_wrapper().

01178 {
01179     wsu_PortReferenceType * instance = NULL;
01180     globus_result_t                     result = GLOBUS_SUCCESS;
01181     xsd_QName                           subelement;
01182     int                                 found_attrs = 0;
01183     int                                 empty_element = 0;
01184     GlobusFuncName(wsu_PortReferenceType_deserialize_pointer);
01185     GlobusSoapMessageDebugEnter();
01186 
01187     *ip = NULL;
01188 
01189     result = globus_soap_message_deserialize_element(
01190         message_handle, element_qname);
01191     if(result != GLOBUS_SUCCESS &&
01192        (GlobusSoapMessageStatusElementNotFoundCheck(result) ||
01193         GlobusSoapMessageStatusFailedElementCheck(result) ||
01194         GlobusSoapMessageStatusFailedWithTextCheck(result)))
01195     {
01196         *ip = NULL;
01197         result = GLOBUS_SUCCESS;
01198         goto exit;
01199     }
01200 
01201     if(result != GLOBUS_SUCCESS)
01202     {
01203         result = GlobusSoapMessageErrorDeserializeFailed(
01204             result, element_qname);
01205         goto exit;
01206     }
01207 
01208     if(globus_soap_message_deserialize_element_is_empty(
01209            message_handle))
01210     {
01211         empty_element = 1;
01212     }
01213 
01214 
01215 
01216     result = wsu_PortReferenceType_init(&instance);
01217     if(result != GLOBUS_SUCCESS)
01218     {
01219         result = GlobusSoapMessageErrorDeserializeFailed(
01220             result, element_qname);
01221         goto exit;
01222     }
01223 
01224 
01225         result = xsd_anyAttributes_init(&instance->anyAttributes);
01226         if(result != GLOBUS_SUCCESS)
01227         {
01228             result = GlobusSoapMessageErrorDeserializeFailed(
01229                 result, element_qname);
01230             goto xsd_anyAttributes_after_destroy;
01231         }
01232 
01233         result = xsd_anyAttributes_deserialize(
01234             message_handle,
01235             instance->anyAttributes);
01236         if(result != GLOBUS_SUCCESS)
01237         {
01238             result = GlobusSoapMessageErrorDeserializeFailed(
01239                 result, element_qname);
01240             goto xsd_anyAttributes_destroy;
01241         }
01242 
01243         if(instance->anyAttributes &&
01244            xsd_anyAttributes_size(instance->anyAttributes) > 0)
01245         {
01246             found_attrs++;
01247         }
01248 
01249     subelement.Namespace = "http://schemas.xmlsoap.org/ws/2002/07/utility";
01250     subelement.local = "Id";
01251 
01252     result = xsd_ID_deserialize_attribute_pointer(
01253         &subelement,
01254         &instance->_Id,
01255         message_handle,
01256         0);
01257     if(result != GLOBUS_SUCCESS)
01258     {
01259         result = GlobusSoapMessageErrorDeserializeFailed(result, &subelement);
01260         goto _Id_destroy;
01261     }
01262 
01263 
01264     if(instance->_Id)
01265     {
01266         found_attrs++;
01267     }
01268 
01269 
01270     if(empty_element)
01271     {
01272         result = globus_soap_message_deserialize_element_end(
01273             message_handle,
01274             element_qname);
01275         if(result != GLOBUS_SUCCESS)
01276         {
01277             result = GlobusSoapMessageErrorDeserializeFailed(
01278                 result, element_qname);
01279             goto fail_deserialize;
01280         }
01281 
01282         *ip = instance;
01283         goto exit;
01284     }
01285 
01286     result = globus_soap_message_deserialize_element_begin_close(
01287         message_handle);
01288     if(result != GLOBUS_SUCCESS)
01289     {
01290         result = GlobusSoapMessageErrorDeserializeFailed(
01291             result, element_qname);
01292         goto exit;
01293     }
01294 
01295 
01296     subelement.local = "Address";
01297     subelement.Namespace = "http://schemas.xmlsoap.org/ws/2002/07/utility";
01298 
01299     result = wsu_AttributedURI_deserialize(
01300          &subelement,
01301          &instance->Address,
01302          message_handle,
01303          0);
01304     if(result != GLOBUS_SUCCESS)
01305     {
01306         result = GlobusSoapMessageErrorDeserializeFailed(
01307             result, 
01308             &wsu_AttributedURI_qname);
01309         goto Address_destroy;
01310     }
01311 
01312     subelement.local = "any";
01313     subelement.Namespace = "http://www.w3.org/2001/XMLSchema";
01314     
01315     result = xsd_any_array_deserialize(
01316         &subelement,
01317         &instance->any,
01318         message_handle,
01319         0);
01320     if(result != GLOBUS_SUCCESS)
01321     {
01322         result = GlobusSoapMessageErrorDeserializeFailed(
01323             result, 
01324             (&subelement));
01325         goto any_destroy_array;
01326     }
01327 
01328 
01329     result = globus_soap_message_deserialize_element_end(
01330         message_handle,
01331         element_qname);
01332     if(result != GLOBUS_SUCCESS)
01333     {
01334         result = GlobusSoapMessageErrorDeserializeFailed(
01335             result, element_qname);
01336         goto fail_deserialize;
01337     }
01338 
01339     *ip = instance;
01340 
01341     goto exit;
01342 
01343  fail_deserialize:
01344 
01345  xsd_anyAttributes_destroy:
01346         xsd_anyAttributes_destroy(instance->anyAttributes);
01347         instance->anyAttributes = NULL;
01348  xsd_anyAttributes_after_destroy:
01349 
01350  _Id_destroy:
01351 
01352     if(instance->_Id)
01353     {
01354         xsd_ID_destroy(
01355             instance->_Id);
01356         instance->_Id = NULL;
01357     }
01358         xsd_any_array_destroy_contents(
01359             &instance->any);
01360 
01361  any_destroy_array:
01362         wsu_AttributedURI_destroy_contents(
01363              &instance->Address);
01364 
01365  Address_destroy:
01366 
01367  exit:
01368 
01369     GlobusSoapMessageDebugExit();
01370     return result;
01371 }

globus_result_t wsu_PortReferenceType_array_init (
     wsu_PortReferenceType_array ** inst )
 

Initialize an array of wsu_PortReferenceType elements.

Allocates a new array of 0 elements. When this array is no longer used, it should be freed by calling wsu_PortReferenceType_array_destroy().

Parameters:
inst Pointer to set to a newly allocated array instance.

Definition at line 1388 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType_array, wsu_PortReferenceType_array_init(), and wsu_PortReferenceType_array_init_contents().

Referenced by wsu_PortReferenceType_array_deserialize_wrapper(), wsu_PortReferenceType_array_init(), and wsu_PortReferenceType_array_init_wrapper().

01390 {
01391     wsu_PortReferenceType_array * array;
01392     globus_result_t                     result;
01393     GlobusFuncName(wsu_PortReferenceType_array_init);
01394     GlobusSoapMessageDebugEnter();
01395 
01396     array = (wsu_PortReferenceType_array *)
01397         globus_malloc(sizeof(wsu_PortReferenceType_array));
01398     if(!array)
01399     {
01400         result = GlobusSoapMessageErrorOutOfMemory;
01401         goto exit;
01402     }
01403 
01404     result = wsu_PortReferenceType_array_init_contents(array);
01405     if(result != GLOBUS_SUCCESS)
01406     {
01407         globus_free(array);
01408         array = NULL;
01409 
01410     }
01411 
01412     *arr = array;
01413 
01414  exit:
01415     GlobusSoapMessageDebugExit();
01416     return result;
01417 }

void wsu_PortReferenceType_array_destroy (
     wsu_PortReferenceType_array * inst )
 

Destroy an array of wsu_PortReferenceType elements.

Frees an array of wsu_PortReferenceType elements. The contents of each element element in the array be destroyed by calling wsu_PortReferenceType_destroy_contents().

Parameters:
inst Pointer to array instance to destroy.

Definition at line 1443 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType_array, wsu_PortReferenceType_array_destroy(), and wsu_PortReferenceType_array_destroy_contents().

Referenced by wsu_PortReferenceType_array_destroy(), and wsu_PortReferenceType_array_destroy_wrapper().

01445 {
01446     GlobusFuncName(wsu_PortReferenceType_array_destroy);
01447     GlobusSoapMessageDebugEnter();
01448 
01449     wsu_PortReferenceType_array_destroy_contents(array);
01450     globus_free(array);
01451 
01452     GlobusSoapMessageDebugExit();
01453 }

globus_result_t wsu_PortReferenceType_array_copy (
     wsu_PortReferenceType_array ** dest,
     const wsu_PortReferenceType_array * src)
 

Copy an array of wsu_PortReferenceType elements.

Perform a deep copy of an array of wsu_PortReferenceType elements. The dest array will be allocated, and then a copy of the contents of each element in src will be made to dest.

Parameters:
dest Array to be initialized with copies of the elements in src.
src Source array to be copied.

Definition at line 1456 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType_array, wsu_PortReferenceType_array_copy(), and wsu_PortReferenceType_array_copy_contents().

Referenced by wsu_PortReferenceType_array_copy(), and wsu_PortReferenceType_array_copy_wrapper().

01459 {
01460     wsu_PortReferenceType_array * array;
01461     globus_result_t                     result;
01462     GlobusFuncName(wsu_PortReferenceType_array_copy);
01463     GlobusSoapMessageDebugEnter();
01464 
01465     array = (wsu_PortReferenceType_array *) globus_malloc(
01466         sizeof(wsu_PortReferenceType_array));
01467     if(!array)
01468     {
01469         result = GlobusSoapMessageErrorOutOfMemory;
01470         GlobusSoapMessageDebugExit();
01471         return result;
01472     }
01473 
01474     result = wsu_PortReferenceType_array_copy_contents(array, src_arr);
01475     if(result != GLOBUS_SUCCESS)
01476     {
01477         globus_free(array);
01478         GlobusSoapMessageDebugExit();
01479         return result;
01480     }
01481 
01482     *dest_arr = array;
01483 
01484     GlobusSoapMessageDebugExit();
01485     return GLOBUS_SUCCESS;
01486 }

globus_result_t wsu_PortReferenceType_array_init_contents (
     wsu_PortReferenceType_array * inst )
 

Initialize the contents of an array of wsu_PortReferenceType elements.

Initialize the contents of an array of wsu_PortReferenceType elements. Used when the array is allocated on the stack or by a some allocator besides wsu_PortReferenceType_array_init(). The contents of the array may be freed by calling wsu_PortReferenceType_array_destroy_contents().

Parameters:
inst Pointer to an allocated but uninitialized array.

Definition at line 1375 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType_array, and wsu_PortReferenceType_array_init_contents().

Referenced by wsu_PortReferenceType_array_init(), wsu_PortReferenceType_array_init_contents(), and wsu_PortReferenceType_array_init_contents_wrapper().

01377 {
01378     GlobusFuncName(wsu_PortReferenceType_array_init_contents);
01379     GlobusSoapMessageDebugEnter();
01380 
01381     memset(array, 0, sizeof(wsu_PortReferenceType_array));
01382 
01383     GlobusSoapMessageDebugExit();
01384     return GLOBUS_SUCCESS;
01385 }

void wsu_PortReferenceType_array_destroy_contents (
     wsu_PortReferenceType_array * inst )
 

Destroy the contents of an array of wsu_PortReferenceType elements.

Destroy the elements in an array of wsu_PortReferenceType elements. The contents of each element in the array be destroyed by calling wsu_PortReferenceType_destroy_contents() and the array will be reset to be empty.

Parameters:
inst Pointer to array instance to destroy.

Definition at line 1420 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType_array_s::elements, wsu_PortReferenceType_array_s::length, wsu_PortReferenceType_array, wsu_PortReferenceType_array_destroy_contents(), and wsu_PortReferenceType_destroy_contents().

Referenced by wsu_PortReferenceType_array_destroy(), wsu_PortReferenceType_array_destroy_contents(), and wsu_PortReferenceType_array_destroy_contents_wrapper().

01422 {
01423     int                                 i = 0;
01424     GlobusFuncName(wsu_PortReferenceType_array_destroy_contents);
01425     GlobusSoapMessageDebugEnter();
01426 
01427     for(; i < array->length; ++i)
01428     {
01429         wsu_PortReferenceType_destroy_contents(&array->elements[i]);
01430     }
01431 
01432     if(array->elements)
01433     {
01434         globus_free(array->elements);
01435         array->elements = NULL;
01436     }
01437     array->length = 0;
01438 
01439     GlobusSoapMessageDebugExit();
01440 }

globus_result_t wsu_PortReferenceType_array_copy_contents (
     wsu_PortReferenceType_array * dest,
     const wsu_PortReferenceType_array * src)
 

Copy the contents of an array of wsu_PortReferenceType elements.

Perform a deep copy of an array of wsu_PortReferenceType elements. The dest array must be allocated before making this call. A copy of the contents of each element in src will be made to dest.

Parameters:
dest Array to be initialized with copies of the elements in src.
src Source array to be copied.

Definition at line 1489 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType_array_s::elements, wsu_PortReferenceType_array_s::length, wsu_PortReferenceType, wsu_PortReferenceType_array, wsu_PortReferenceType_array_copy_contents(), wsu_PortReferenceType_copy_contents(), and wsu_PortReferenceType_destroy_contents().

Referenced by wsu_PortReferenceType_array_copy(), wsu_PortReferenceType_array_copy_contents(), and wsu_PortReferenceType_array_copy_contents_wrapper().

01492 {
01493     int                                 i;
01494     globus_result_t                     result = GLOBUS_SUCCESS;
01495     GlobusFuncName(wsu_PortReferenceType_array_copy_contents);
01496     GlobusSoapMessageDebugEnter();
01497 
01498     dest_arr->length = src_arr->length;
01499     if(dest_arr->length > 0)
01500     {
01501         dest_arr->elements = (wsu_PortReferenceType *) malloc(
01502             sizeof(wsu_PortReferenceType) * dest_arr->length);
01503         if(!dest_arr->elements)
01504         {
01505             result = GlobusSoapMessageErrorOutOfMemory;
01506             GlobusSoapMessageDebugExit();
01507             return result;
01508         }
01509     }
01510     else
01511     {
01512         dest_arr->elements = NULL;
01513     }
01514     
01515     for(i = 0; i < dest_arr->length; i++)
01516     {
01517         result = wsu_PortReferenceType_copy_contents(
01518             &dest_arr->elements[i], &src_arr->elements[i]);
01519         if(result != GLOBUS_SUCCESS)
01520         {
01521             while(i--)
01522             {
01523                 wsu_PortReferenceType_destroy_contents(&dest_arr->elements[i]);
01524             }
01525 
01526             globus_free(dest_arr->elements);
01527             dest_arr->elements = NULL;
01528             dest_arr->length = 0;
01529             break;
01530         }
01531     }
01532 
01533     GlobusSoapMessageDebugExit();
01534     return result;
01535 }

struct wsu_PortReferenceType_s* wsu_PortReferenceType_array_push (
     wsu_PortReferenceType_array * array )
 

Append a new wsu_PortReferenceType to an array.

Allocate and initialize a new wsu_PortReferenceType structure, adding it to the end of the given array.

Parameters:
array Array to be appended to.
Returns:
This function returns the newly allocated element.

Definition at line 1538 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType_array_s::elements, wsu_PortReferenceType_array_s::length, wsu_PortReferenceType, wsu_PortReferenceType_array, and wsu_PortReferenceType_array_push().

Referenced by wsu_PortReferenceType_array_push(), and wsu_PortReferenceType_array_push_wrapper().

01540 {
01541     GlobusFuncName(wsu_PortReferenceType_array_push);
01542     GlobusSoapMessageDebugEnter();
01543 
01544     array->elements = realloc(array->elements,
01545                               sizeof(wsu_PortReferenceType) *
01546                               (array->length + 1));
01547     memset(&array->elements[array->length], 0, sizeof(wsu_PortReferenceType));
01548     array->length++;
01549 
01550     GlobusSoapMessageDebugExit();
01551     return (&array->elements[array->length - 1]);
01552 }

globus_result_t wsu_PortReferenceType_array_serialize (
     xsd_QName * element,
     wsu_PortReferenceType_array * array_instance,
     globus_soap_message_handle_t message_handle,
     globus_xsd_element_options_t options)
 

Serialize an array of wsu_PortReferenceType elements.

Serialize an element containing an array of wsu_PortReferenceType elements.

Parameters:
element The name of the element which will contain the array.
array_instance The array to serialize
message_handle The handle to serialize the element on.
options Serialization options.

Definition at line 1562 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType_array_s::elements, wsu_PortReferenceType_array_s::length, wsu_PortReferenceType_array, wsu_PortReferenceType_array_serialize(), and wsu_PortReferenceType_serialize().

Referenced by wsu_PortReferenceType_array_serialize(), and wsu_PortReferenceType_array_serialize_wrapper().

01567 {
01568     globus_result_t                     result = GLOBUS_SUCCESS;
01569     int                                 i = 0;
01570     GlobusFuncName(wsu_PortReferenceType_array_serialize);
01571     GlobusSoapMessageDebugEnter();
01572 
01573     for(; i < array->length; ++i)
01574     {
01575         result = wsu_PortReferenceType_serialize(
01576             element_qname,
01577             &array->elements[i],
01578             message,
01579             options);
01580         if(result != GLOBUS_SUCCESS)
01581         {
01582             goto exit;
01583         }
01584     }
01585 
01586 exit:
01587 
01588     GlobusSoapMessageDebugExit();
01589     return result;
01590 }

globus_result_t wsu_PortReferenceType_array_deserialize (
     xsd_QName * element,
     wsu_PortReferenceType_array * array_instance,
     globus_soap_message_handle_t message_handle,
     globus_xsd_element_options_t options)
 

Deserialize an array of wsu_PortReferenceType elements.

Deserialize an element containing an array of wsu_PortReferenceType elements.

Parameters:
element The name of the element which should enclose the array.
array_instance The array to deserialize into
message_handle The handle to deserialize the element from.
options Deserialization options.

Definition at line 1593 of file wsu_PortReferenceType.c.

References wsu_PortReferenceType_array_s::elements, wsu_PortReferenceType_array_s::length, wsu_PortReferenceType, wsu_PortReferenceType_array, wsu_PortReferenceType_array_deserialize(), wsu_PortReferenceType_deserialize(), and wsu_PortReferenceType_destroy_contents().

Referenced by wsu_PortReferenceType_array_deserialize(), and wsu_PortReferenceType_array_deserialize_wrapper().

01598 {
01599     globus_result_t                     result = GLOBUS_SUCCESS;
01600     int                                 i = 0;
01601     int                                 pre_length;
01602     GlobusFuncName(wsu_PortReferenceType_array_deserialize);
01603     GlobusSoapMessageDebugEnter();
01604 
01605     pre_length = array->length;
01606 
01607     for(i = 0; i < pre_length; ++i)
01608     {
01609         result = wsu_PortReferenceType_deserialize(
01610             element_qname,
01611             &array->elements[i],
01612             message,
01613             options);
01614         if(result != GLOBUS_SUCCESS)
01615         {
01616             if(GlobusSoapMessageStatusFailedElementCheck(result) ||
01617                GlobusSoapMessageStatusElementNotFoundCheck(result) ||
01618                GlobusSoapMessageStatusFailedWithTextCheck(result))
01619             {
01620                 result = GLOBUS_SUCCESS;
01621                 break;
01622             }
01623 
01624             result = GlobusSoapMessageErrorDeserializeFailed(
01625                 result, element_qname);
01626             goto exit;
01627         }
01628     }
01629 
01630     while(result == GLOBUS_SUCCESS)
01631     {
01632         wsu_PortReferenceType                  next;
01633         memset(&next, 0, sizeof(wsu_PortReferenceType));
01634 
01635         result = wsu_PortReferenceType_deserialize(
01636             element_qname,
01637             &next,
01638             message,
01639             options);
01640         if(result != GLOBUS_SUCCESS)
01641         {
01642             if(GlobusSoapMessageStatusFailedElementCheck(result) ||
01643                GlobusSoapMessageStatusElementNotFoundCheck(result) ||
01644                GlobusSoapMessageStatusFailedWithTextCheck(result))
01645             {
01646                 result = GLOBUS_SUCCESS;
01647                 break;
01648             }
01649 
01650             result = GlobusSoapMessageErrorDeserializeFailed(
01651                 result, element_qname);
01652             goto exit;
01653         }
01654 
01655         array->elements = realloc(
01656             array->elements,
01657             (array->length + 1) * sizeof(wsu_PortReferenceType));
01658         if(!array->elements)
01659         {
01660             result = GlobusSoapMessageErrorOutOfMemory;
01661             goto exit;
01662         }
01663         array->elements[array->length] = next;
01664         array->length++;
01665         ++i;
01666     }
01667 
01668   exit:
01669 
01670     if(result != GLOBUS_SUCCESS)
01671     {
01672         int                             di = 0;
01673         for(; di < i; ++di)
01674         {
01675             wsu_PortReferenceType_destroy_contents(
01676                 &array->elements[di]);
01677             memset(&array->elements[di], 0, sizeof(wsu_PortReferenceType));
01678         }
01679     }
01680 
01681     GlobusSoapMessageDebugExit();
01682     return result;
01683 }


Variable Documentation

typedefEXTERN_C_BEGIN struct wsu_PortReferenceType_s wsu_PortReferenceType
 

The wsu_PortReferenceType complex type, which represents the {http://schemas.xmlsoap.org/ws/2002/07/utility}PortReferenceType element.

Definition at line 32 of file wsu_PortReferenceType.h.

Referenced by wsu_PortReferenceType_array_copy_contents(), wsu_PortReferenceType_array_deserialize(), wsu_PortReferenceType_array_push(), wsu_PortReferenceType_copy(), wsu_PortReferenceType_copy_contents_wrapper(), wsu_PortReferenceType_copy_wrapper(), wsu_PortReferenceType_deserialize_contents_wrapper(), wsu_PortReferenceType_deserialize_pointer(), wsu_PortReferenceType_deserialize_pointer_wrapper(), wsu_PortReferenceType_destroy_contents_wrapper(), wsu_PortReferenceType_destroy_wrapper(), wsu_PortReferenceType_init(), wsu_PortReferenceType_init_contents(), wsu_PortReferenceType_init_contents_wrapper(), wsu_PortReferenceType_init_wrapper(), wsu_PortReferenceType_serialize_contents_wrapper(), and wsu_PortReferenceType_serialize_wrapper().

xsd_QName wsu_PortReferenceType_qname
 

Initial value:

{
     "http://schemas.xmlsoap.org/ws/2002/07/utility" ,
     "PortReferenceType" 
}
QName of the wsu_PortReferenceType complex type.

Definition at line 23 of file wsu_PortReferenceType.c.

Referenced by wsu_PortReferenceType_serialize().

xsd_QName wsu_PortReferenceType_qname
 

QName of the wsu_PortReferenceType complex type.

Definition at line 56 of file wsu_PortReferenceType.h.

struct globus_xsd_type_info_s wsu_PortReferenceType_info
 

Initial value:

Type information for serializing and deserializing wsu_PortReferenceType elements.

Definition at line 273 of file wsu_PortReferenceType.c.

struct globus_xsd_type_info_s wsu_PortReferenceType_info
 

Type information for serializing and deserializing wsu_PortReferenceType elements.

Definition at line 61 of file wsu_PortReferenceType.h.

struct globus_xsd_type_info_s wsu_PortReferenceType_array_info
 

Initial value:

Type information for serializing and deserializing arrays of wsu_PortReferenceType elements.

Definition at line 256 of file wsu_PortReferenceType.c.

struct globus_xsd_type_info_s wsu_PortReferenceType_array_info
 

Type information for serializing and deserializing arrays of wsu_PortReferenceType elements.

Definition at line 67 of file wsu_PortReferenceType.h.

struct globus_xsd_type_info_s wsu_PortReferenceType_contents_info
 

Initial value:

Type information for serializing and deserializing the contents of wsu_PortReferenceType without surrounding elements.

Definition at line 239 of file wsu_PortReferenceType.c.

struct globus_xsd_type_info_s wsu_PortReferenceType_contents_info
 

Type information for serializing and deserializing the contents of wsu_PortReferenceType without surrounding elements.

Definition at line 73 of file wsu_PortReferenceType.h.

EXTERN_C_BEGIN xsd_QName wsu_PortReferenceType_qname
 

QName of the wsu_PortReferenceType complex type.

Definition at line 31 of file wsu_PortReferenceType_array.h.

Referenced by wsu_PortReferenceType_serialize().


about globus | grid research | globus toolkit | software development

Comments? webmaster@globus.org