4
* adb_deviceMappingType.c
6
* This file was auto-generated from WSDL
7
* by the Apache Axis2/C version: SNAPSHOT Built on : Mar 10, 2008 (08:35:52 GMT+00:00)
10
#include "adb_deviceMappingType.h"
13
* This type was generated from the piece of schema that had
14
* name = deviceMappingType
15
* Namespace URI = http://eucalyptus.ucsb.edu/
16
* Namespace Prefix = ns1
21
struct adb_deviceMappingType
23
axis2_char_t* property_deviceName;
26
axis2_bool_t is_valid_deviceName;
29
axis2_char_t* property_virtualName;
32
axis2_bool_t is_valid_virtualName;
38
axis2_bool_t is_valid_size;
41
axis2_char_t* property_format;
44
axis2_bool_t is_valid_format;
51
/************************* Private Function prototypes ********************************/
54
axis2_status_t AXIS2_CALL
55
adb_deviceMappingType_set_deviceName_nil(
56
adb_deviceMappingType_t* _deviceMappingType,
57
const axutil_env_t *env);
60
axis2_status_t AXIS2_CALL
61
adb_deviceMappingType_set_virtualName_nil(
62
adb_deviceMappingType_t* _deviceMappingType,
63
const axutil_env_t *env);
66
axis2_status_t AXIS2_CALL
67
adb_deviceMappingType_set_size_nil(
68
adb_deviceMappingType_t* _deviceMappingType,
69
const axutil_env_t *env);
72
axis2_status_t AXIS2_CALL
73
adb_deviceMappingType_set_format_nil(
74
adb_deviceMappingType_t* _deviceMappingType,
75
const axutil_env_t *env);
79
/************************* Function Implmentations ********************************/
80
adb_deviceMappingType_t* AXIS2_CALL
81
adb_deviceMappingType_create(
82
const axutil_env_t *env)
84
adb_deviceMappingType_t *_deviceMappingType = NULL;
86
AXIS2_ENV_CHECK(env, NULL);
88
_deviceMappingType = (adb_deviceMappingType_t *) AXIS2_MALLOC(env->
89
allocator, sizeof(adb_deviceMappingType_t));
91
if(NULL == _deviceMappingType)
93
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
97
memset(_deviceMappingType, 0, sizeof(adb_deviceMappingType_t));
99
_deviceMappingType->property_deviceName = NULL;
100
_deviceMappingType->is_valid_deviceName = AXIS2_FALSE;
101
_deviceMappingType->property_virtualName = NULL;
102
_deviceMappingType->is_valid_virtualName = AXIS2_FALSE;
103
_deviceMappingType->is_valid_size = AXIS2_FALSE;
104
_deviceMappingType->property_format = NULL;
105
_deviceMappingType->is_valid_format = AXIS2_FALSE;
108
return _deviceMappingType;
111
axis2_status_t AXIS2_CALL
112
adb_deviceMappingType_free (
113
adb_deviceMappingType_t* _deviceMappingType,
114
const axutil_env_t *env)
118
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
119
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_FAILURE);
121
adb_deviceMappingType_reset_deviceName(_deviceMappingType, env);
122
adb_deviceMappingType_reset_virtualName(_deviceMappingType, env);
123
adb_deviceMappingType_reset_size(_deviceMappingType, env);
124
adb_deviceMappingType_reset_format(_deviceMappingType, env);
127
if(_deviceMappingType)
129
AXIS2_FREE(env->allocator, _deviceMappingType);
130
_deviceMappingType = NULL;
132
return AXIS2_SUCCESS;
138
axis2_status_t AXIS2_CALL
139
adb_deviceMappingType_deserialize(
140
adb_deviceMappingType_t* _deviceMappingType,
141
const axutil_env_t *env,
142
axiom_node_t **dp_parent,
143
axis2_bool_t *dp_is_early_node_valid,
144
axis2_bool_t dont_care_minoccurs)
146
axiom_node_t *parent = *dp_parent;
148
axis2_status_t status = AXIS2_SUCCESS;
150
axis2_char_t* text_value = NULL;
151
axutil_qname_t *qname = NULL;
153
axutil_qname_t *element_qname = NULL;
155
axiom_node_t *first_node = NULL;
156
axis2_bool_t is_early_node_valid = AXIS2_TRUE;
157
axiom_node_t *current_node = NULL;
158
axiom_element_t *current_element = NULL;
160
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
161
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_FAILURE);
165
while(parent && axiom_node_get_node_type(parent, env) != AXIOM_ELEMENT)
167
parent = axiom_node_get_next_sibling(parent, env);
171
/* This should be checked before everything */
172
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
173
"Failed in building adb object for deviceMappingType : "
174
"NULL elemenet can not be passed to deserialize");
175
return AXIS2_FAILURE;
179
first_node = axiom_node_get_first_child(parent, env);
185
* building deviceName element
190
current_node = first_node;
191
is_early_node_valid = AXIS2_FALSE;
194
while(current_node && axiom_node_get_node_type(current_node, env) != AXIOM_ELEMENT)
196
current_node = axiom_node_get_next_sibling(current_node, env);
198
if(current_node != NULL)
200
current_element = (axiom_element_t *)axiom_node_get_data_element(current_node, env);
201
qname = axiom_element_get_qname(current_element, env, current_node);
204
element_qname = axutil_qname_create(env, "deviceName", "http://eucalyptus.ucsb.edu/", NULL);
208
(current_node && current_element && (axutil_qname_equals(element_qname, env, qname))))
210
if( current_node && current_element && (axutil_qname_equals(element_qname, env, qname)))
212
is_early_node_valid = AXIS2_TRUE;
216
text_value = axiom_element_get_text(current_element, env, current_node);
217
if(text_value != NULL)
219
status = adb_deviceMappingType_set_deviceName(_deviceMappingType, env,
226
* axis2_qname_t *qname = NULL;
227
* axiom_attribute_t *the_attri = NULL;
229
* qname = axutil_qname_create(env, "nil", "http://www.w3.org/2001/XMLSchema-instance", "xsi");
230
* the_attri = axiom_element_get_attribute(current_element, env, qname);
232
/* currently thereis a bug in the axiom_element_get_attribute, so we have to go to this bad method */
234
axiom_attribute_t *the_attri = NULL;
235
axis2_char_t *attrib_text = NULL;
236
axutil_hash_t *attribute_hash = NULL;
238
attribute_hash = axiom_element_get_all_attributes(current_element, env);
243
axutil_hash_index_t *hi;
247
for (hi = axutil_hash_first(attribute_hash, env); hi; hi = axutil_hash_next(env, hi))
249
axutil_hash_this(hi, &key, NULL, &val);
251
if(strstr((axis2_char_t*)key, "nil|http://www.w3.org/2001/XMLSchema-instance"))
253
the_attri = (axiom_attribute_t*)val;
261
attrib_text = axiom_attribute_get_value(the_attri, env);
265
/* this is hoping that attribute is stored in "http://www.w3.org/2001/XMLSchema-instance", this happnes when name is in default namespace */
266
attrib_text = axiom_element_get_attribute_value_by_name(current_element, env, "nil");
269
if(attrib_text && 0 == axutil_strcmp(attrib_text, "1"))
271
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "NULL value is set to a non nillable element deviceName");
272
status = AXIS2_FAILURE;
276
/* after all, we found this is a empty string */
277
status = adb_deviceMappingType_set_deviceName(_deviceMappingType, env,
282
if(AXIS2_FAILURE == status)
284
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "failed in setting the value for deviceName ");
287
axutil_qname_free(element_qname, env);
289
return AXIS2_FAILURE;
295
axutil_qname_free(element_qname, env);
296
element_qname = NULL;
302
* building virtualName element
308
* because elements are ordered this works fine
312
if(current_node != NULL && is_early_node_valid)
314
current_node = axiom_node_get_next_sibling(current_node, env);
317
while(current_node && axiom_node_get_node_type(current_node, env) != AXIOM_ELEMENT)
319
current_node = axiom_node_get_next_sibling(current_node, env);
321
if(current_node != NULL)
323
current_element = (axiom_element_t *)axiom_node_get_data_element(current_node, env);
324
qname = axiom_element_get_qname(current_element, env, current_node);
328
is_early_node_valid = AXIS2_FALSE;
330
element_qname = axutil_qname_create(env, "virtualName", "http://eucalyptus.ucsb.edu/", NULL);
334
(current_node && current_element && (axutil_qname_equals(element_qname, env, qname))))
336
if( current_node && current_element && (axutil_qname_equals(element_qname, env, qname)))
338
is_early_node_valid = AXIS2_TRUE;
342
text_value = axiom_element_get_text(current_element, env, current_node);
343
if(text_value != NULL)
345
status = adb_deviceMappingType_set_virtualName(_deviceMappingType, env,
352
* axis2_qname_t *qname = NULL;
353
* axiom_attribute_t *the_attri = NULL;
355
* qname = axutil_qname_create(env, "nil", "http://www.w3.org/2001/XMLSchema-instance", "xsi");
356
* the_attri = axiom_element_get_attribute(current_element, env, qname);
358
/* currently thereis a bug in the axiom_element_get_attribute, so we have to go to this bad method */
360
axiom_attribute_t *the_attri = NULL;
361
axis2_char_t *attrib_text = NULL;
362
axutil_hash_t *attribute_hash = NULL;
364
attribute_hash = axiom_element_get_all_attributes(current_element, env);
369
axutil_hash_index_t *hi;
373
for (hi = axutil_hash_first(attribute_hash, env); hi; hi = axutil_hash_next(env, hi))
375
axutil_hash_this(hi, &key, NULL, &val);
377
if(strstr((axis2_char_t*)key, "nil|http://www.w3.org/2001/XMLSchema-instance"))
379
the_attri = (axiom_attribute_t*)val;
387
attrib_text = axiom_attribute_get_value(the_attri, env);
391
/* this is hoping that attribute is stored in "http://www.w3.org/2001/XMLSchema-instance", this happnes when name is in default namespace */
392
attrib_text = axiom_element_get_attribute_value_by_name(current_element, env, "nil");
395
if(attrib_text && 0 == axutil_strcmp(attrib_text, "1"))
397
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "NULL value is set to a non nillable element virtualName");
398
status = AXIS2_FAILURE;
402
/* after all, we found this is a empty string */
403
status = adb_deviceMappingType_set_virtualName(_deviceMappingType, env,
408
if(AXIS2_FAILURE == status)
410
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "failed in setting the value for virtualName ");
413
axutil_qname_free(element_qname, env);
415
return AXIS2_FAILURE;
421
axutil_qname_free(element_qname, env);
422
element_qname = NULL;
428
* building size element
434
* because elements are ordered this works fine
438
if(current_node != NULL && is_early_node_valid)
440
current_node = axiom_node_get_next_sibling(current_node, env);
443
while(current_node && axiom_node_get_node_type(current_node, env) != AXIOM_ELEMENT)
445
current_node = axiom_node_get_next_sibling(current_node, env);
447
if(current_node != NULL)
449
current_element = (axiom_element_t *)axiom_node_get_data_element(current_node, env);
450
qname = axiom_element_get_qname(current_element, env, current_node);
454
is_early_node_valid = AXIS2_FALSE;
456
element_qname = axutil_qname_create(env, "size", "http://eucalyptus.ucsb.edu/", NULL);
460
(current_node && current_element && (axutil_qname_equals(element_qname, env, qname))))
462
if( current_node && current_element && (axutil_qname_equals(element_qname, env, qname)))
464
is_early_node_valid = AXIS2_TRUE;
468
text_value = axiom_element_get_text(current_element, env, current_node);
469
if(text_value != NULL)
471
status = adb_deviceMappingType_set_size(_deviceMappingType, env,
477
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "NULL value is set to a non nillable element size");
478
status = AXIS2_FAILURE;
481
if(AXIS2_FAILURE == status)
483
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "failed in setting the value for size ");
486
axutil_qname_free(element_qname, env);
488
return AXIS2_FAILURE;
494
axutil_qname_free(element_qname, env);
495
element_qname = NULL;
501
* building format element
507
* because elements are ordered this works fine
511
if(current_node != NULL && is_early_node_valid)
513
current_node = axiom_node_get_next_sibling(current_node, env);
516
while(current_node && axiom_node_get_node_type(current_node, env) != AXIOM_ELEMENT)
518
current_node = axiom_node_get_next_sibling(current_node, env);
520
if(current_node != NULL)
522
current_element = (axiom_element_t *)axiom_node_get_data_element(current_node, env);
523
qname = axiom_element_get_qname(current_element, env, current_node);
527
is_early_node_valid = AXIS2_FALSE;
529
element_qname = axutil_qname_create(env, "format", "http://eucalyptus.ucsb.edu/", NULL);
533
(current_node && current_element && (axutil_qname_equals(element_qname, env, qname))))
535
if( current_node && current_element && (axutil_qname_equals(element_qname, env, qname)))
537
is_early_node_valid = AXIS2_TRUE;
541
text_value = axiom_element_get_text(current_element, env, current_node);
542
if(text_value != NULL)
544
status = adb_deviceMappingType_set_format(_deviceMappingType, env,
551
* axis2_qname_t *qname = NULL;
552
* axiom_attribute_t *the_attri = NULL;
554
* qname = axutil_qname_create(env, "nil", "http://www.w3.org/2001/XMLSchema-instance", "xsi");
555
* the_attri = axiom_element_get_attribute(current_element, env, qname);
557
/* currently thereis a bug in the axiom_element_get_attribute, so we have to go to this bad method */
559
axiom_attribute_t *the_attri = NULL;
560
axis2_char_t *attrib_text = NULL;
561
axutil_hash_t *attribute_hash = NULL;
563
attribute_hash = axiom_element_get_all_attributes(current_element, env);
568
axutil_hash_index_t *hi;
572
for (hi = axutil_hash_first(attribute_hash, env); hi; hi = axutil_hash_next(env, hi))
574
axutil_hash_this(hi, &key, NULL, &val);
576
if(strstr((axis2_char_t*)key, "nil|http://www.w3.org/2001/XMLSchema-instance"))
578
the_attri = (axiom_attribute_t*)val;
586
attrib_text = axiom_attribute_get_value(the_attri, env);
590
/* this is hoping that attribute is stored in "http://www.w3.org/2001/XMLSchema-instance", this happnes when name is in default namespace */
591
attrib_text = axiom_element_get_attribute_value_by_name(current_element, env, "nil");
594
if(attrib_text && 0 == axutil_strcmp(attrib_text, "1"))
596
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "NULL value is set to a non nillable element format");
597
status = AXIS2_FAILURE;
601
/* after all, we found this is a empty string */
602
status = adb_deviceMappingType_set_format(_deviceMappingType, env,
607
if(AXIS2_FAILURE == status)
609
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "failed in setting the value for format ");
612
axutil_qname_free(element_qname, env);
614
return AXIS2_FAILURE;
620
axutil_qname_free(element_qname, env);
621
element_qname = NULL;
627
axis2_bool_t AXIS2_CALL
628
adb_deviceMappingType_is_particle()
637
adb_deviceMappingType_declare_parent_namespaces(
638
adb_deviceMappingType_t* _deviceMappingType,
639
const axutil_env_t *env, axiom_element_t *parent_element,
640
axutil_hash_t *namespaces, int *next_ns_index)
643
/* Here this is an empty function, Nothing to declare */
649
axiom_node_t* AXIS2_CALL
650
adb_deviceMappingType_serialize(
651
adb_deviceMappingType_t* _deviceMappingType,
652
const axutil_env_t *env, axiom_node_t *parent, axiom_element_t *parent_element, int parent_tag_closed, axutil_hash_t *namespaces, int *next_ns_index)
656
axis2_char_t *string_to_stream;
659
axiom_node_t *current_node = NULL;
664
axiom_namespace_t *ns1 = NULL;
666
axis2_char_t *qname_uri = NULL;
667
axis2_char_t *qname_prefix = NULL;
668
axis2_char_t *p_prefix = NULL;
669
axis2_bool_t ns_already_defined;
671
axis2_char_t *text_value_1;
672
axis2_char_t *text_value_1_temp;
674
axis2_char_t *text_value_2;
675
axis2_char_t *text_value_2_temp;
677
axis2_char_t text_value_3[64];
679
axis2_char_t *text_value_4;
680
axis2_char_t *text_value_4_temp;
682
axis2_char_t *start_input_str = NULL;
683
axis2_char_t *end_input_str = NULL;
684
unsigned int start_input_str_len = 0;
685
unsigned int end_input_str_len = 0;
688
axiom_data_source_t *data_source = NULL;
689
axutil_stream_t *stream = NULL;
693
AXIS2_ENV_CHECK(env, NULL);
694
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, NULL);
697
current_node = parent;
698
data_source = (axiom_data_source_t *)axiom_node_get_data_element(current_node, env);
701
stream = axiom_data_source_get_stream(data_source, env); /* assume parent is of type data source */
705
if(!parent_tag_closed)
708
string_to_stream = ">";
709
axutil_stream_write(stream, env, string_to_stream, axutil_strlen(string_to_stream));
714
if(!(p_prefix = (axis2_char_t*)axutil_hash_get(namespaces, "http://eucalyptus.ucsb.edu/", AXIS2_HASH_KEY_STRING)))
716
p_prefix = (axis2_char_t*)AXIS2_MALLOC(env->allocator, sizeof (axis2_char_t) * ADB_DEFAULT_NAMESPACE_PREFIX_LIMIT);
717
sprintf(p_prefix, "n%d", (*next_ns_index)++);
718
axutil_hash_set(namespaces, "http://eucalyptus.ucsb.edu/", AXIS2_HASH_KEY_STRING, p_prefix);
720
axiom_element_declare_namespace_assume_param_ownership(parent_element, env, axiom_namespace_create (env,
721
"http://eucalyptus.ucsb.edu/",
726
if (!_deviceMappingType->is_valid_deviceName)
729
/* no need to complain for minoccurs=0 element */
735
start_input_str = (axis2_char_t*)AXIS2_MALLOC(env->allocator, sizeof(axis2_char_t) *
736
(4 + axutil_strlen(p_prefix) +
737
axutil_strlen("deviceName")));
739
/* axutil_strlen("<:>") + 1 = 4 */
740
end_input_str = (axis2_char_t*)AXIS2_MALLOC(env->allocator, sizeof(axis2_char_t) *
741
(5 + axutil_strlen(p_prefix) + axutil_strlen("deviceName")));
742
/* axutil_strlen("</:>") + 1 = 5 */
750
* parsing deviceName element
755
sprintf(start_input_str, "<%s%sdeviceName>",
756
p_prefix?p_prefix:"",
757
(p_prefix && axutil_strcmp(p_prefix, ""))?":":"");
759
start_input_str_len = axutil_strlen(start_input_str);
760
sprintf(end_input_str, "</%s%sdeviceName>",
761
p_prefix?p_prefix:"",
762
(p_prefix && axutil_strcmp(p_prefix, ""))?":":"");
763
end_input_str_len = axutil_strlen(end_input_str);
765
text_value_1 = _deviceMappingType->property_deviceName;
767
axutil_stream_write(stream, env, start_input_str, start_input_str_len);
770
text_value_1_temp = axutil_xml_quote_string(env, text_value_1, AXIS2_TRUE);
771
if (text_value_1_temp)
773
axutil_stream_write(stream, env, text_value_1_temp, axutil_strlen(text_value_1_temp));
774
AXIS2_FREE(env->allocator, text_value_1_temp);
778
axutil_stream_write(stream, env, text_value_1, axutil_strlen(text_value_1));
781
axutil_stream_write(stream, env, end_input_str, end_input_str_len);
784
AXIS2_FREE(env->allocator,start_input_str);
785
AXIS2_FREE(env->allocator,end_input_str);
789
if(!(p_prefix = (axis2_char_t*)axutil_hash_get(namespaces, "http://eucalyptus.ucsb.edu/", AXIS2_HASH_KEY_STRING)))
791
p_prefix = (axis2_char_t*)AXIS2_MALLOC(env->allocator, sizeof (axis2_char_t) * ADB_DEFAULT_NAMESPACE_PREFIX_LIMIT);
792
sprintf(p_prefix, "n%d", (*next_ns_index)++);
793
axutil_hash_set(namespaces, "http://eucalyptus.ucsb.edu/", AXIS2_HASH_KEY_STRING, p_prefix);
795
axiom_element_declare_namespace_assume_param_ownership(parent_element, env, axiom_namespace_create (env,
796
"http://eucalyptus.ucsb.edu/",
801
if (!_deviceMappingType->is_valid_virtualName)
804
/* no need to complain for minoccurs=0 element */
810
start_input_str = (axis2_char_t*)AXIS2_MALLOC(env->allocator, sizeof(axis2_char_t) *
811
(4 + axutil_strlen(p_prefix) +
812
axutil_strlen("virtualName")));
814
/* axutil_strlen("<:>") + 1 = 4 */
815
end_input_str = (axis2_char_t*)AXIS2_MALLOC(env->allocator, sizeof(axis2_char_t) *
816
(5 + axutil_strlen(p_prefix) + axutil_strlen("virtualName")));
817
/* axutil_strlen("</:>") + 1 = 5 */
825
* parsing virtualName element
830
sprintf(start_input_str, "<%s%svirtualName>",
831
p_prefix?p_prefix:"",
832
(p_prefix && axutil_strcmp(p_prefix, ""))?":":"");
834
start_input_str_len = axutil_strlen(start_input_str);
835
sprintf(end_input_str, "</%s%svirtualName>",
836
p_prefix?p_prefix:"",
837
(p_prefix && axutil_strcmp(p_prefix, ""))?":":"");
838
end_input_str_len = axutil_strlen(end_input_str);
840
text_value_2 = _deviceMappingType->property_virtualName;
842
axutil_stream_write(stream, env, start_input_str, start_input_str_len);
845
text_value_2_temp = axutil_xml_quote_string(env, text_value_2, AXIS2_TRUE);
846
if (text_value_2_temp)
848
axutil_stream_write(stream, env, text_value_2_temp, axutil_strlen(text_value_2_temp));
849
AXIS2_FREE(env->allocator, text_value_2_temp);
853
axutil_stream_write(stream, env, text_value_2, axutil_strlen(text_value_2));
856
axutil_stream_write(stream, env, end_input_str, end_input_str_len);
859
AXIS2_FREE(env->allocator,start_input_str);
860
AXIS2_FREE(env->allocator,end_input_str);
864
if(!(p_prefix = (axis2_char_t*)axutil_hash_get(namespaces, "http://eucalyptus.ucsb.edu/", AXIS2_HASH_KEY_STRING)))
866
p_prefix = (axis2_char_t*)AXIS2_MALLOC(env->allocator, sizeof (axis2_char_t) * ADB_DEFAULT_NAMESPACE_PREFIX_LIMIT);
867
sprintf(p_prefix, "n%d", (*next_ns_index)++);
868
axutil_hash_set(namespaces, "http://eucalyptus.ucsb.edu/", AXIS2_HASH_KEY_STRING, p_prefix);
870
axiom_element_declare_namespace_assume_param_ownership(parent_element, env, axiom_namespace_create (env,
871
"http://eucalyptus.ucsb.edu/",
876
if (!_deviceMappingType->is_valid_size)
879
/* no need to complain for minoccurs=0 element */
885
start_input_str = (axis2_char_t*)AXIS2_MALLOC(env->allocator, sizeof(axis2_char_t) *
886
(4 + axutil_strlen(p_prefix) +
887
axutil_strlen("size")));
889
/* axutil_strlen("<:>") + 1 = 4 */
890
end_input_str = (axis2_char_t*)AXIS2_MALLOC(env->allocator, sizeof(axis2_char_t) *
891
(5 + axutil_strlen(p_prefix) + axutil_strlen("size")));
892
/* axutil_strlen("</:>") + 1 = 5 */
900
* parsing size element
905
sprintf(start_input_str, "<%s%ssize>",
906
p_prefix?p_prefix:"",
907
(p_prefix && axutil_strcmp(p_prefix, ""))?":":"");
909
start_input_str_len = axutil_strlen(start_input_str);
910
sprintf(end_input_str, "</%s%ssize>",
911
p_prefix?p_prefix:"",
912
(p_prefix && axutil_strcmp(p_prefix, ""))?":":"");
913
end_input_str_len = axutil_strlen(end_input_str);
915
sprintf (text_value_3, AXIS2_PRINTF_INT32_FORMAT_SPECIFIER, _deviceMappingType->property_size);
917
axutil_stream_write(stream, env, start_input_str, start_input_str_len);
919
axutil_stream_write(stream, env, text_value_3, axutil_strlen(text_value_3));
921
axutil_stream_write(stream, env, end_input_str, end_input_str_len);
924
AXIS2_FREE(env->allocator,start_input_str);
925
AXIS2_FREE(env->allocator,end_input_str);
929
if(!(p_prefix = (axis2_char_t*)axutil_hash_get(namespaces, "http://eucalyptus.ucsb.edu/", AXIS2_HASH_KEY_STRING)))
931
p_prefix = (axis2_char_t*)AXIS2_MALLOC(env->allocator, sizeof (axis2_char_t) * ADB_DEFAULT_NAMESPACE_PREFIX_LIMIT);
932
sprintf(p_prefix, "n%d", (*next_ns_index)++);
933
axutil_hash_set(namespaces, "http://eucalyptus.ucsb.edu/", AXIS2_HASH_KEY_STRING, p_prefix);
935
axiom_element_declare_namespace_assume_param_ownership(parent_element, env, axiom_namespace_create (env,
936
"http://eucalyptus.ucsb.edu/",
941
if (!_deviceMappingType->is_valid_format)
944
/* no need to complain for minoccurs=0 element */
950
start_input_str = (axis2_char_t*)AXIS2_MALLOC(env->allocator, sizeof(axis2_char_t) *
951
(4 + axutil_strlen(p_prefix) +
952
axutil_strlen("format")));
954
/* axutil_strlen("<:>") + 1 = 4 */
955
end_input_str = (axis2_char_t*)AXIS2_MALLOC(env->allocator, sizeof(axis2_char_t) *
956
(5 + axutil_strlen(p_prefix) + axutil_strlen("format")));
957
/* axutil_strlen("</:>") + 1 = 5 */
965
* parsing format element
970
sprintf(start_input_str, "<%s%sformat>",
971
p_prefix?p_prefix:"",
972
(p_prefix && axutil_strcmp(p_prefix, ""))?":":"");
974
start_input_str_len = axutil_strlen(start_input_str);
975
sprintf(end_input_str, "</%s%sformat>",
976
p_prefix?p_prefix:"",
977
(p_prefix && axutil_strcmp(p_prefix, ""))?":":"");
978
end_input_str_len = axutil_strlen(end_input_str);
980
text_value_4 = _deviceMappingType->property_format;
982
axutil_stream_write(stream, env, start_input_str, start_input_str_len);
985
text_value_4_temp = axutil_xml_quote_string(env, text_value_4, AXIS2_TRUE);
986
if (text_value_4_temp)
988
axutil_stream_write(stream, env, text_value_4_temp, axutil_strlen(text_value_4_temp));
989
AXIS2_FREE(env->allocator, text_value_4_temp);
993
axutil_stream_write(stream, env, text_value_4, axutil_strlen(text_value_4));
996
axutil_stream_write(stream, env, end_input_str, end_input_str_len);
999
AXIS2_FREE(env->allocator,start_input_str);
1000
AXIS2_FREE(env->allocator,end_input_str);
1012
* getter for deviceName.
1014
axis2_char_t* AXIS2_CALL
1015
adb_deviceMappingType_get_deviceName(
1016
adb_deviceMappingType_t* _deviceMappingType,
1017
const axutil_env_t *env)
1020
AXIS2_ENV_CHECK(env, NULL);
1021
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, NULL);
1024
return _deviceMappingType->property_deviceName;
1028
* setter for deviceName
1030
axis2_status_t AXIS2_CALL
1031
adb_deviceMappingType_set_deviceName(
1032
adb_deviceMappingType_t* _deviceMappingType,
1033
const axutil_env_t *env,
1034
const axis2_char_t* arg_deviceName)
1038
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
1039
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_FAILURE);
1041
if(_deviceMappingType->is_valid_deviceName &&
1042
arg_deviceName == _deviceMappingType->property_deviceName)
1045
return AXIS2_SUCCESS;
1048
adb_deviceMappingType_reset_deviceName(_deviceMappingType, env);
1051
if(NULL == arg_deviceName)
1053
/* We are already done */
1054
return AXIS2_SUCCESS;
1056
_deviceMappingType->property_deviceName = (axis2_char_t *)axutil_strdup(env, arg_deviceName);
1057
if(NULL == _deviceMappingType->property_deviceName)
1059
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Error allocating memeory for deviceName");
1060
return AXIS2_FAILURE;
1062
_deviceMappingType->is_valid_deviceName = AXIS2_TRUE;
1064
return AXIS2_SUCCESS;
1070
* resetter for deviceName
1072
axis2_status_t AXIS2_CALL
1073
adb_deviceMappingType_reset_deviceName(
1074
adb_deviceMappingType_t* _deviceMappingType,
1075
const axutil_env_t *env)
1079
void *element = NULL;
1081
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
1082
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_FAILURE);
1088
if(_deviceMappingType->property_deviceName != NULL)
1092
AXIS2_FREE(env-> allocator, _deviceMappingType->property_deviceName);
1093
_deviceMappingType->property_deviceName = NULL;
1098
_deviceMappingType->is_valid_deviceName = AXIS2_FALSE;
1099
return AXIS2_SUCCESS;
1103
* Check whether deviceName is nill
1105
axis2_bool_t AXIS2_CALL
1106
adb_deviceMappingType_is_deviceName_nil(
1107
adb_deviceMappingType_t* _deviceMappingType,
1108
const axutil_env_t *env)
1110
AXIS2_ENV_CHECK(env, AXIS2_TRUE);
1111
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_TRUE);
1113
return !_deviceMappingType->is_valid_deviceName;
1117
* Set deviceName to nill (currently the same as reset)
1119
axis2_status_t AXIS2_CALL
1120
adb_deviceMappingType_set_deviceName_nil(
1121
adb_deviceMappingType_t* _deviceMappingType,
1122
const axutil_env_t *env)
1124
return adb_deviceMappingType_reset_deviceName(_deviceMappingType, env);
1130
* getter for virtualName.
1132
axis2_char_t* AXIS2_CALL
1133
adb_deviceMappingType_get_virtualName(
1134
adb_deviceMappingType_t* _deviceMappingType,
1135
const axutil_env_t *env)
1138
AXIS2_ENV_CHECK(env, NULL);
1139
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, NULL);
1142
return _deviceMappingType->property_virtualName;
1146
* setter for virtualName
1148
axis2_status_t AXIS2_CALL
1149
adb_deviceMappingType_set_virtualName(
1150
adb_deviceMappingType_t* _deviceMappingType,
1151
const axutil_env_t *env,
1152
const axis2_char_t* arg_virtualName)
1156
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
1157
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_FAILURE);
1159
if(_deviceMappingType->is_valid_virtualName &&
1160
arg_virtualName == _deviceMappingType->property_virtualName)
1163
return AXIS2_SUCCESS;
1166
adb_deviceMappingType_reset_virtualName(_deviceMappingType, env);
1169
if(NULL == arg_virtualName)
1171
/* We are already done */
1172
return AXIS2_SUCCESS;
1174
_deviceMappingType->property_virtualName = (axis2_char_t *)axutil_strdup(env, arg_virtualName);
1175
if(NULL == _deviceMappingType->property_virtualName)
1177
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Error allocating memeory for virtualName");
1178
return AXIS2_FAILURE;
1180
_deviceMappingType->is_valid_virtualName = AXIS2_TRUE;
1182
return AXIS2_SUCCESS;
1188
* resetter for virtualName
1190
axis2_status_t AXIS2_CALL
1191
adb_deviceMappingType_reset_virtualName(
1192
adb_deviceMappingType_t* _deviceMappingType,
1193
const axutil_env_t *env)
1197
void *element = NULL;
1199
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
1200
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_FAILURE);
1206
if(_deviceMappingType->property_virtualName != NULL)
1210
AXIS2_FREE(env-> allocator, _deviceMappingType->property_virtualName);
1211
_deviceMappingType->property_virtualName = NULL;
1216
_deviceMappingType->is_valid_virtualName = AXIS2_FALSE;
1217
return AXIS2_SUCCESS;
1221
* Check whether virtualName is nill
1223
axis2_bool_t AXIS2_CALL
1224
adb_deviceMappingType_is_virtualName_nil(
1225
adb_deviceMappingType_t* _deviceMappingType,
1226
const axutil_env_t *env)
1228
AXIS2_ENV_CHECK(env, AXIS2_TRUE);
1229
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_TRUE);
1231
return !_deviceMappingType->is_valid_virtualName;
1235
* Set virtualName to nill (currently the same as reset)
1237
axis2_status_t AXIS2_CALL
1238
adb_deviceMappingType_set_virtualName_nil(
1239
adb_deviceMappingType_t* _deviceMappingType,
1240
const axutil_env_t *env)
1242
return adb_deviceMappingType_reset_virtualName(_deviceMappingType, env);
1251
adb_deviceMappingType_get_size(
1252
adb_deviceMappingType_t* _deviceMappingType,
1253
const axutil_env_t *env)
1256
AXIS2_ENV_CHECK(env, (int)0);
1257
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, (int)0);
1260
return _deviceMappingType->property_size;
1266
axis2_status_t AXIS2_CALL
1267
adb_deviceMappingType_set_size(
1268
adb_deviceMappingType_t* _deviceMappingType,
1269
const axutil_env_t *env,
1274
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
1275
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_FAILURE);
1277
if(_deviceMappingType->is_valid_size &&
1278
arg_size == _deviceMappingType->property_size)
1281
return AXIS2_SUCCESS;
1284
adb_deviceMappingType_reset_size(_deviceMappingType, env);
1286
_deviceMappingType->property_size = arg_size;
1287
_deviceMappingType->is_valid_size = AXIS2_TRUE;
1289
return AXIS2_SUCCESS;
1297
axis2_status_t AXIS2_CALL
1298
adb_deviceMappingType_reset_size(
1299
adb_deviceMappingType_t* _deviceMappingType,
1300
const axutil_env_t *env)
1304
void *element = NULL;
1306
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
1307
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_FAILURE);
1310
_deviceMappingType->is_valid_size = AXIS2_FALSE;
1311
return AXIS2_SUCCESS;
1315
* Check whether size is nill
1317
axis2_bool_t AXIS2_CALL
1318
adb_deviceMappingType_is_size_nil(
1319
adb_deviceMappingType_t* _deviceMappingType,
1320
const axutil_env_t *env)
1322
AXIS2_ENV_CHECK(env, AXIS2_TRUE);
1323
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_TRUE);
1325
return !_deviceMappingType->is_valid_size;
1329
* Set size to nill (currently the same as reset)
1331
axis2_status_t AXIS2_CALL
1332
adb_deviceMappingType_set_size_nil(
1333
adb_deviceMappingType_t* _deviceMappingType,
1334
const axutil_env_t *env)
1336
return adb_deviceMappingType_reset_size(_deviceMappingType, env);
1342
* getter for format.
1344
axis2_char_t* AXIS2_CALL
1345
adb_deviceMappingType_get_format(
1346
adb_deviceMappingType_t* _deviceMappingType,
1347
const axutil_env_t *env)
1350
AXIS2_ENV_CHECK(env, NULL);
1351
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, NULL);
1354
return _deviceMappingType->property_format;
1360
axis2_status_t AXIS2_CALL
1361
adb_deviceMappingType_set_format(
1362
adb_deviceMappingType_t* _deviceMappingType,
1363
const axutil_env_t *env,
1364
const axis2_char_t* arg_format)
1368
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
1369
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_FAILURE);
1371
if(_deviceMappingType->is_valid_format &&
1372
arg_format == _deviceMappingType->property_format)
1375
return AXIS2_SUCCESS;
1378
adb_deviceMappingType_reset_format(_deviceMappingType, env);
1381
if(NULL == arg_format)
1383
/* We are already done */
1384
return AXIS2_SUCCESS;
1386
_deviceMappingType->property_format = (axis2_char_t *)axutil_strdup(env, arg_format);
1387
if(NULL == _deviceMappingType->property_format)
1389
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Error allocating memeory for format");
1390
return AXIS2_FAILURE;
1392
_deviceMappingType->is_valid_format = AXIS2_TRUE;
1394
return AXIS2_SUCCESS;
1400
* resetter for format
1402
axis2_status_t AXIS2_CALL
1403
adb_deviceMappingType_reset_format(
1404
adb_deviceMappingType_t* _deviceMappingType,
1405
const axutil_env_t *env)
1409
void *element = NULL;
1411
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
1412
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_FAILURE);
1418
if(_deviceMappingType->property_format != NULL)
1422
AXIS2_FREE(env-> allocator, _deviceMappingType->property_format);
1423
_deviceMappingType->property_format = NULL;
1428
_deviceMappingType->is_valid_format = AXIS2_FALSE;
1429
return AXIS2_SUCCESS;
1433
* Check whether format is nill
1435
axis2_bool_t AXIS2_CALL
1436
adb_deviceMappingType_is_format_nil(
1437
adb_deviceMappingType_t* _deviceMappingType,
1438
const axutil_env_t *env)
1440
AXIS2_ENV_CHECK(env, AXIS2_TRUE);
1441
AXIS2_PARAM_CHECK(env->error, _deviceMappingType, AXIS2_TRUE);
1443
return !_deviceMappingType->is_valid_format;
1447
* Set format to nill (currently the same as reset)
1449
axis2_status_t AXIS2_CALL
1450
adb_deviceMappingType_set_format_nil(
1451
adb_deviceMappingType_t* _deviceMappingType,
1452
const axutil_env_t *env)
1454
return adb_deviceMappingType_reset_format(_deviceMappingType, env);