You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by sa...@apache.org on 2005/10/24 10:17:17 UTC
svn commit: r327989 [4/4] -
/webservices/axis2/trunk/c/modules/xml/guththila/src/
Modified: webservices/axis2/trunk/c/modules/xml/guththila/src/guththila_xml_stream_writer.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/guththila/src/guththila_xml_stream_writer.c?rev=327989&r1=327988&r2=327989&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/guththila/src/guththila_xml_stream_writer.c (original)
+++ webservices/axis2/trunk/c/modules/xml/guththila/src/guththila_xml_stream_writer.c Mon Oct 24 01:15:14 2005
@@ -16,34 +16,30 @@
*/
#include "guththila_xml_stream_writer.h"
-#include <apr.h>
-#include <apr_pools.h>
-#include <apr_hash.h>
-#include <apr_tables.h>
-#include <apr_strings.h>
+#include "guththila_array.h"
+#include "guththila_hash.h"
-static apr_pool_t *guththila_apr_pool; /* a memory pool to be used for this module */
struct guththila_xml_stream_writer
{
FILE* writer;
- char* encoding;
+ guththila_char_t* encoding;
int prefix_defaulting;
- apr_array_header_t *element_stack; /*stack of element names (apr array is FILO)*/
- apr_hash_t* namespace_hash; /*hash map with key:namespace and value:prefix */
- apr_hash_t* prefix_hash; /*hash map with key:prefix and value:namespace*/
+ guththila_array_header_t *element_stack; /*stack of element names (apr array is FILO)*/
+ guththila_hash_t* namespace_hash; /*hash map with key:namespace and value:prefix */
+ guththila_hash_t* prefix_hash; /*hash map with key:prefix and value:namespace*/
int in_start_element;
int empty_element;
};
- guththila_xml_stream_writer_t* guththila_create_xml_stream_writer(FILE* writer, char* encoding, int prefix_defaulting)
+ guththila_xml_stream_writer_t* guththila_create_xml_stream_writer(guththila_environment_t *environment,FILE* writer, guththila_char_t* encoding, int prefix_defaulting)
{
- apr_status_t status;
+ guththila_status_t status;
guththila_xml_stream_writer_t *stream_writer;
if (!writer)
return 0;
- stream_writer = (guththila_xml_stream_writer_t*) malloc (sizeof (guththila_xml_stream_writer_t));
+ stream_writer = (guththila_xml_stream_writer_t*)guththila_malloc (environment->allocator,sizeof (guththila_xml_stream_writer_t));
stream_writer->writer = writer;
if (encoding)
stream_writer->encoding = encoding;
@@ -51,25 +47,20 @@
/*initialize APR pool, we ned this pool to allocate memory to hash map and stack*/
-
-
- if (!guththila_apr_pool)
- {
- status = apr_pool_create(&guththila_apr_pool, NULL);
- }
+
- stream_writer->element_stack = apr_array_make(guththila_apr_pool, 64, sizeof(char**));
- stream_writer->namespace_hash = apr_hash_make(guththila_apr_pool);
- stream_writer->prefix_hash = apr_hash_make(guththila_apr_pool);
+ stream_writer->element_stack = guththila_array_make(environment,64, sizeof(guththila_char_t**));
+ stream_writer->namespace_hash = guththila_hash_make(environment);
+ stream_writer->prefix_hash = guththila_hash_make(environment);
stream_writer->in_start_element = 0;
stream_writer->empty_element = 0;
return stream_writer;
}
- int guththila_xml_stream_writer_end_start_element(guththila_xml_stream_writer_t* stream_writer)
+ int guththila_xml_stream_writer_end_start_element(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer)
{
- char*** del_element;
+ guththila_char_t*** del_element;
if (!stream_writer)
return GUTHTHILA_STREAM_WRITER_ERROR_STREAM_STRUCT_NULL;
if (!stream_writer->in_start_element)
@@ -82,14 +73,14 @@
}
/*pop last element and delete that elelemt */
- del_element = (char***) apr_array_pop( stream_writer->element_stack );
+ del_element = (guththila_char_t***) guththila_array_pop( stream_writer->element_stack );
if (del_element)
{
if ((*del_element)[0])
- free((*del_element)[0]);
+ guththila_free(environment->allocator,(*del_element)[0]);
if ((*del_element)[1])
- free((*del_element)[1]);
- free(del_element);
+ guththila_free(environment->allocator,(*del_element)[1]);
+ guththila_free(environment->allocator,del_element);
}
del_element = 0;
@@ -104,23 +95,23 @@
return GUTHTHILA_SUCCESS;
}
- int guththila_xml_stream_writer_write_start_element(guththila_xml_stream_writer_t* stream_writer, char* local_name)
+ int guththila_xml_stream_writer_write_start_element(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name)
{
- char*** new_element;
+ guththila_char_t*** new_element;
if (!stream_writer)
return GUTHTHILA_STREAM_WRITER_ERROR_STREAM_STRUCT_NULL;
if (!local_name)
return GUTHTHILA_STREAM_WRITER_ERROR_LOCAL_NAME_NULL;
- guththila_xml_stream_writer_end_start_element(stream_writer);
+ guththila_xml_stream_writer_end_start_element(environment,stream_writer);
/*namespaces.pushContext();*/
fputs("<", stream_writer->writer);
fputs(local_name, stream_writer->writer);
/*push element to stack*/
- new_element = (char***)apr_array_push(stream_writer->element_stack);
- *new_element = (char**) malloc( sizeof(char**) * 2 );
+ new_element = (guththila_char_t***)guththila_array_push(stream_writer->element_stack);
+ *new_element = (guththila_char_t**) guththila_malloc(environment->allocator, sizeof(guththila_char_t**) * 2 );
(*new_element)[0] = 0;
- (*new_element)[1] = strdup(local_name);
+ (*new_element)[1] = guththila_strdup(environment->string,local_name);
/*end push element*/
stream_writer->in_start_element = 1;
@@ -129,11 +120,11 @@
}
- int guththila_xml_stream_writer_write_start_element_with_namespace(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* namespace_uri)
+ int guththila_xml_stream_writer_write_start_element_with_namespace(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* namespace_uri)
{
int is_declared ;
- char*** new_element;
- char* prefix;
+ guththila_char_t*** new_element;
+ guththila_char_t* prefix;
if (!stream_writer)
return GUTHTHILA_STREAM_WRITER_ERROR_STREAM_STRUCT_NULL;
if (!local_name)
@@ -141,9 +132,9 @@
if (!namespace_uri)
return GUTHTHILA_STREAM_WRITER_ERROR_guththila_namespace_t_NULL;
- guththila_xml_stream_writer_end_start_element(stream_writer);
+ guththila_xml_stream_writer_end_start_element(environment,stream_writer);
- prefix = guththila_xml_stream_writer_get_prefix(stream_writer, namespace_uri);
+ prefix = guththila_xml_stream_writer_get_prefix(environment,stream_writer, namespace_uri);
is_declared = (prefix != 0);
@@ -157,7 +148,7 @@
fputs("<", stream_writer->writer);
- if (prefix && strlen(prefix) != 0)
+ if (prefix && guththila_strlen(environment->string,prefix) != 0)
{
fputs(prefix, stream_writer->writer);
fputs(":", stream_writer->writer);
@@ -168,17 +159,17 @@
if (stream_writer->prefix_defaulting && !is_declared)
{
if (prefix)
- guththila_xml_stream_writer_write_namespace(stream_writer, prefix, namespace_uri);
+ guththila_xml_stream_writer_write_namespace(environment,stream_writer, prefix, namespace_uri);
}
/*push element to stack*/
- /*char** new_element = (char**)apr_array_push(stream_writer->element_stack);*/
- new_element = (char***)apr_array_push(stream_writer->element_stack);
- *new_element = (char**) malloc( sizeof(char**) * 2 );
+ /*guththila_char_t** new_element = (guththila_char_t**)apr_array_push(stream_writer->element_stack);*/
+ new_element = (guththila_char_t***)guththila_array_push(stream_writer->element_stack);
+ *new_element = (guththila_char_t**)guththila_malloc(environment->allocator ,sizeof(guththila_char_t**) * 2 );
if(prefix)
- (*new_element)[0] = strdup(prefix);
+ (*new_element)[0] = guththila_strdup(environment->string,prefix);
else
(*new_element)[0] = 0;
- (*new_element)[1] = strdup(local_name);
+ (*new_element)[1] = guththila_strdup(environment->string,local_name);
/*end push element*/
stream_writer->in_start_element = 1;
@@ -186,11 +177,11 @@
return GUTHTHILA_SUCCESS;
}
- int guththila_xml_stream_writer_write_start_element_with_namespace_prefix(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* namespace_uri, char* prefix)
+ int guththila_xml_stream_writer_write_start_element_with_namespace_prefix(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* namespace_uri, guththila_char_t* prefix)
{
- char* current_prefix;
+ guththila_char_t* current_prefix;
int is_current = 0;
- char*** new_element;
+ guththila_char_t*** new_element;
if (!stream_writer)
return GUTHTHILA_STREAM_WRITER_ERROR_STREAM_STRUCT_NULL;
if (!local_name)
@@ -200,15 +191,15 @@
if (!prefix)
return GUTHTHILA_STREAM_WRITER_ERROR_PREFIX_NULL;
- guththila_xml_stream_writer_end_start_element(stream_writer);
+ guththila_xml_stream_writer_end_start_element(environment,stream_writer);
- current_prefix = guththila_xml_stream_writer_get_prefix(stream_writer, namespace_uri);
+ current_prefix = guththila_xml_stream_writer_get_prefix(environment,stream_writer, namespace_uri);
if(current_prefix)
- is_current = ( strcmp(prefix, current_prefix) != 0 );
+ is_current = ( guththila_strcmp(environment->string,prefix, current_prefix) != 0 );
fputs("<", stream_writer->writer);
- if (prefix && strlen(prefix) != 0)
+ if (prefix && guththila_strlen(environment->string,prefix) != 0)
{
fputs(prefix, stream_writer->writer);
fputs(":", stream_writer->writer);
@@ -219,19 +210,19 @@
if (stream_writer->prefix_defaulting && !is_current)
{
if (prefix)
- guththila_xml_stream_writer_write_namespace(stream_writer, prefix, namespace_uri);
+ guththila_xml_stream_writer_write_namespace(environment,stream_writer, prefix, namespace_uri);
}
/*push element to stack*/
- /*char** new_element = (char**)apr_array_push(stream_writer->element_stack);*/
- new_element = (char***)apr_array_push(stream_writer->element_stack);
+ /*guththila_char_t** new_element = (guththila_char_t**)apr_array_push(stream_writer->element_stack);*/
+ new_element = (guththila_char_t***)guththila_array_push(stream_writer->element_stack);
- *new_element = (char**) malloc( sizeof(char**) * 2 );
+ *new_element = (guththila_char_t**) guththila_malloc( environment->allocator,sizeof(guththila_char_t**) * 2 );
if(prefix)
- (*new_element)[0] = strdup(prefix);
+ (*new_element)[0] = guththila_strdup(environment->string,prefix);
else
(*new_element)[0] = 0;
- (*new_element)[1] = strdup(local_name);
+ (*new_element)[1] = guththila_strdup(environment->string,local_name);
/*end push element*/
stream_writer->in_start_element = 1;
@@ -240,9 +231,9 @@
}
- int guththila_xml_stream_writer_write_empty_element(guththila_xml_stream_writer_t* stream_writer, char* local_name)
+ int guththila_xml_stream_writer_write_empty_element(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name)
{
- int ret = guththila_xml_stream_writer_write_start_element(stream_writer, local_name);
+ int ret = guththila_xml_stream_writer_write_start_element(environment,stream_writer, local_name);
if (ret != GUTHTHILA_SUCCESS)
return ret;
@@ -252,9 +243,9 @@
return GUTHTHILA_SUCCESS;
}
- int guththila_xml_stream_writer_write_empty_element_with_namespace(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* namespace_uri)
+ int guththila_xml_stream_writer_write_empty_element_with_namespace(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* namespace_uri)
{
- int ret = guththila_xml_stream_writer_write_start_element_with_namespace(stream_writer, local_name, namespace_uri);
+ int ret = guththila_xml_stream_writer_write_start_element_with_namespace(environment,stream_writer, local_name, namespace_uri);
if (ret != GUTHTHILA_SUCCESS)
return ret;
@@ -264,9 +255,9 @@
return GUTHTHILA_SUCCESS;
}
- int guththila_xml_stream_writer_write_empty_element_with_namespace_prefix(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* namespace_uri, char* prefix)
+ int guththila_xml_stream_writer_write_empty_element_with_namespace_prefix(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* namespace_uri, guththila_char_t* prefix)
{
- int ret = guththila_xml_stream_writer_write_start_element_with_namespace_prefix(stream_writer, local_name, namespace_uri, prefix);
+ int ret = guththila_xml_stream_writer_write_start_element_with_namespace_prefix(environment,stream_writer, local_name, namespace_uri, prefix);
if (ret != GUTHTHILA_SUCCESS)
return ret;
@@ -276,13 +267,13 @@
return GUTHTHILA_SUCCESS;
}
- int guththila_xml_stream_writer_write_end_element(guththila_xml_stream_writer_t* stream_writer)
+ int guththila_xml_stream_writer_write_end_element(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer)
{
- char*** element_data;
- guththila_xml_stream_writer_end_start_element(stream_writer);
+ guththila_char_t*** element_data;
+ guththila_xml_stream_writer_end_start_element(environment,stream_writer);
/* pop element stack*/
- element_data = (char***) apr_array_pop(stream_writer->element_stack);
+ element_data = (guththila_char_t***) guththila_array_pop(stream_writer->element_stack);
if (!element_data )
return GUTHTHILA_STREAM_WRITER_ERROR_guththila_element_t_guththila_stack_t_EMPTY;
@@ -290,14 +281,14 @@
fputs("</", stream_writer->writer);
- if ((*element_data)[0] && strlen((*element_data)[0]) > 0 )
+ if ((*element_data)[0] && guththila_strlen(environment->string,(*element_data)[0]) > 0 )
{
fputs((*element_data)[0], stream_writer->writer);
fputs(":", stream_writer->writer);
free( (*element_data)[0]);
}
- if((*element_data)[1] && strlen((*element_data)[1]) > 0)
+ if((*element_data)[1] && guththila_strlen(environment->string,(*element_data)[1]) > 0)
{
fputs((*element_data)[1], stream_writer->writer);
free( (*element_data)[1]);
@@ -313,12 +304,12 @@
}
- int guththila_xml_stream_writer_write_end_document(guththila_xml_stream_writer_t* stream_writer)
+ int guththila_xml_stream_writer_write_end_document(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer)
{
- while (!apr_is_empty_array(stream_writer->element_stack))
+ while (!guththila_is_empty_array(stream_writer->element_stack))
{
- int ret = guththila_xml_stream_writer_write_end_element (stream_writer);
+ int ret = guththila_xml_stream_writer_write_end_element (environment,stream_writer);
if (ret != GUTHTHILA_SUCCESS)
return ret;
@@ -327,7 +318,7 @@
}
- int guththila_xml_stream_writer_write_attribute(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* value)
+ int guththila_xml_stream_writer_write_attribute(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* value)
{
if (!stream_writer->in_start_element)
return GUTHTHILA_STREAM_WRITER_ERROR_ILLEGAL_STATE;
@@ -335,26 +326,26 @@
fputs(" ", stream_writer->writer);
fputs(local_name, stream_writer->writer);
fputs("=\"", stream_writer->writer);
- guththila_xml_stream_writer_write_encoded(stream_writer, value, 1);
+ guththila_xml_stream_writer_write_encoded(environment,stream_writer, value, 1);
fputs("\"", stream_writer->writer);
return GUTHTHILA_SUCCESS;
}
- int guththila_xml_stream_writer_write_attribute_with_namespace(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* value, char* namespace_uri)
+ int guththila_xml_stream_writer_write_attribute_with_namespace(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* value, guththila_char_t* namespace_uri)
{
- char* prefix;
+ guththila_char_t* prefix;
if (!stream_writer->in_start_element)
return GUTHTHILA_STREAM_WRITER_ERROR_ILLEGAL_STATE;
- prefix = guththila_xml_stream_writer_get_prefix(stream_writer, namespace_uri);
+ prefix = guththila_xml_stream_writer_get_prefix(environment,stream_writer, namespace_uri);
if (!prefix)
{
if (stream_writer->prefix_defaulting)
{
prefix = GUTHTHILA_DEFAULT_NS_PREFIX;
- guththila_xml_stream_writer_write_namespace(stream_writer, prefix, namespace_uri);
+ guththila_xml_stream_writer_write_namespace(environment,stream_writer, prefix, namespace_uri);
}
else
return GUTHTHILA_STREAM_WRITER_ERROR_guththila_namespace_t_NOT_DECLARED;
@@ -362,69 +353,69 @@
fputs(" ", stream_writer->writer);
- if (prefix && strlen(prefix) > 0)
+ if (prefix && guththila_strlen(environment->string,prefix) > 0)
{
fputs(prefix, stream_writer->writer);
fputs(":", stream_writer->writer);
}
fputs(local_name, stream_writer->writer);
fputs("=\"", stream_writer->writer);
- guththila_xml_stream_writer_write_encoded(stream_writer, value, 1);
+ guththila_xml_stream_writer_write_encoded(environment,stream_writer, value, 1);
fputs("\"", stream_writer->writer);
return GUTHTHILA_SUCCESS;
}
- int guththila_xml_stream_writer_write_attribute_with_namespace_prefix(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* value, char* namespace_uri, char* prefix)
+ int guththila_xml_stream_writer_write_attribute_with_namespace_prefix(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* value, guththila_char_t* namespace_uri, guththila_char_t* prefix)
{
- char* current_prefix;
+ guththila_char_t* current_prefix;
if (!stream_writer->in_start_element)
return GUTHTHILA_STREAM_WRITER_ERROR_ILLEGAL_STATE;
- current_prefix = guththila_xml_stream_writer_get_prefix(stream_writer, namespace_uri);
+ current_prefix = guththila_xml_stream_writer_get_prefix(environment,stream_writer, namespace_uri);
if (!current_prefix)
{
if (stream_writer->prefix_defaulting)
- guththila_xml_stream_writer_write_namespace(stream_writer, prefix, namespace_uri);
+ guththila_xml_stream_writer_write_namespace(environment,stream_writer, prefix, namespace_uri);
else
return GUTHTHILA_STREAM_WRITER_ERROR_guththila_namespace_t_NOT_DECLARED;
}
- else if (strcmp(current_prefix, prefix) != 0 )
+ else if ( guththila_strcmp(environment->string,current_prefix, prefix) != 0 )
return GUTHTHILA_STREAM_WRITER_ERROR_guththila_namespace_t_NOT_DECLARED;
fputs(" ", stream_writer->writer);
- if (prefix && strlen(prefix) > 0)
+ if (prefix && guththila_strlen(environment->string,prefix) > 0)
{
fputs(prefix, stream_writer->writer);
fputs(":", stream_writer->writer);
}
fputs(local_name, stream_writer->writer);
fputs("=\"", stream_writer->writer);
- guththila_xml_stream_writer_write_encoded(stream_writer, value, 1);
+ guththila_xml_stream_writer_write_encoded(environment,stream_writer, value, 1);
fputs("\"", stream_writer->writer);
return GUTHTHILA_SUCCESS;
}
- int guththila_xml_stream_writer_write_namespace(guththila_xml_stream_writer_t* stream_writer, char* prefix, char* namespace_uri)
+ int guththila_xml_stream_writer_write_namespace(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* prefix, guththila_char_t* namespace_uri)
{
- char* declared_prefix;
+ guththila_char_t* declared_prefix;
if (!stream_writer->in_start_element)
return GUTHTHILA_STREAM_WRITER_ERROR_ILLEGAL_STATE;
if (!prefix)
prefix = GUTHTHILA_DEFAULT_NS_PREFIX;
- declared_prefix = guththila_xml_stream_writer_get_prefix(stream_writer, namespace_uri);
- if (declared_prefix && strcmp(prefix, declared_prefix) == 0)
+ declared_prefix = guththila_xml_stream_writer_get_prefix(environment,stream_writer, namespace_uri);
+ if (declared_prefix && guththila_strcmp(environment->string,prefix, declared_prefix) == 0)
return GUTHTHILA_SUCCESS;
- guththila_xml_stream_writer_set_prefix(stream_writer, prefix, namespace_uri);
+ guththila_xml_stream_writer_set_prefix(environment,stream_writer, prefix, namespace_uri);
fputs(" ", stream_writer->writer);
fputs("xmlns", stream_writer->writer);
- if (strcmp(GUTHTHILA_DEFAULT_NS_PREFIX, prefix) != 0)
+ if ( guththila_strcmp(environment->string,GUTHTHILA_DEFAULT_NS_PREFIX, prefix) != 0)
{
fputs(":", stream_writer->writer);
fputs(prefix, stream_writer->writer);
@@ -435,17 +426,17 @@
return GUTHTHILA_SUCCESS;
}
- int guththila_xml_stream_writer_write_default_namespace(guththila_xml_stream_writer_t* stream_writer, char* namespace_uri)
+ int guththila_xml_stream_writer_write_default_namespace(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* namespace_uri)
{
- int ret = guththila_xml_stream_writer_write_namespace(stream_writer, GUTHTHILA_DEFAULT_NS_PREFIX, namespace_uri);
+ int ret = guththila_xml_stream_writer_write_namespace(environment,stream_writer, GUTHTHILA_DEFAULT_NS_PREFIX, namespace_uri);
return ret;
}
- int guththila_xml_stream_writer_write_comment(guththila_xml_stream_writer_t* stream_writer, char* data)
+ int guththila_xml_stream_writer_write_comment(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* data)
{
- char* ptr;
- guththila_xml_stream_writer_end_start_element(stream_writer);
+ guththila_char_t* ptr;
+ guththila_xml_stream_writer_end_start_element(environment,stream_writer);
if (!data)
return GUTHTHILA_STREAM_WRITER_ERROR_GUTHTHILA_COMMENT_NULL;
@@ -466,18 +457,18 @@
}
- int guththila_xml_stream_writer_write_processing_instruction(guththila_xml_stream_writer_t* stream_writer, char* target)
+ int guththila_xml_stream_writer_write_processing_instruction(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* target)
{
- int ret = guththila_xml_stream_writer_write_processing_instruction_data(stream_writer, target, 0);
+ int ret = guththila_xml_stream_writer_write_processing_instruction_data(environment,stream_writer, target, 0);
return ret;
}
- int guththila_xml_stream_writer_write_processing_instruction_data(guththila_xml_stream_writer_t* stream_writer, char* target, char* data)
+ int guththila_xml_stream_writer_write_processing_instruction_data(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* target, guththila_char_t* data)
{
if (!target)
return GUTHTHILA_STREAM_WRITER_ERROR_PROCESSING_INSTRUCTION_TARGET_NULL;
- guththila_xml_stream_writer_end_start_element(stream_writer);
+ guththila_xml_stream_writer_end_start_element(environment,stream_writer);
fputs("<?", stream_writer->writer);
fputs(target, stream_writer->writer);
@@ -494,13 +485,13 @@
}
- int guththila_xml_stream_writer_write_cdata(guththila_xml_stream_writer_t* stream_writer, char* data)
+ int guththila_xml_stream_writer_write_cdata(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* data)
{
- char* ptr;
+ guththila_char_t* ptr;
if (!data)
return GUTHTHILA_STREAM_WRITER_ERROR_CDATA_NULL;
- guththila_xml_stream_writer_end_start_element(stream_writer);
+ guththila_xml_stream_writer_end_start_element(environment,stream_writer);
ptr = data;
while (*ptr)
@@ -518,7 +509,7 @@
}
- int guththila_xml_stream_writer_write_dtd(guththila_xml_stream_writer_t* stream_writer, char* dtd)
+ int guththila_xml_stream_writer_write_dtd(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* dtd)
{
if (!dtd)
return GUTHTHILA_STREAM_WRITER_ERROR_DTD_NULL;
@@ -531,12 +522,12 @@
}
- int guththila_xml_stream_writer_write_entity_ref(guththila_xml_stream_writer_t* stream_writer, char* name)
+ int guththila_xml_stream_writer_write_entity_ref(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* name)
{
if (!name)
return GUTHTHILA_STREAM_WRITER_ERROR_ENTITY_REF_NULL;
- guththila_xml_stream_writer_end_start_element(stream_writer);
+ guththila_xml_stream_writer_end_start_element(environment,stream_writer);
fputs( "&", stream_writer->writer);
fputs(name, stream_writer->writer);
@@ -546,29 +537,29 @@
}
- int guththila_xml_stream_writer_write_start_document(guththila_xml_stream_writer_t* stream_writer)
+ int guththila_xml_stream_writer_write_start_document(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer)
{
- int ret = guththila_xml_stream_writer_write_start_document_with_version_encoding(stream_writer, 0, 0);
+ int ret = guththila_xml_stream_writer_write_start_document_with_version_encoding(environment,stream_writer, 0, 0);
return ret;
}
- int guththila_xml_stream_writer_write_start_document_with_version(guththila_xml_stream_writer_t* stream_writer, char* version)
+ int guththila_xml_stream_writer_write_start_document_with_version(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* version)
{
- int ret = guththila_xml_stream_writer_write_start_document_with_version_encoding(stream_writer, 0, version);
+ int ret = guththila_xml_stream_writer_write_start_document_with_version_encoding(environment,stream_writer, 0, version);
return ret;
}
- int guththila_xml_stream_writer_write_start_document_with_version_encoding(guththila_xml_stream_writer_t* stream_writer, char* encoding, char* version)
+ int guththila_xml_stream_writer_write_start_document_with_version_encoding(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* encoding, guththila_char_t* version)
{
if (!version)
version = "1.0";
encoding = "UTF-8"; /* The parameter is ignored*/
- if ( (strcmp("1.0", version) != 0) && (strcmp("1.1", version) != 0 ) )
+ if ( ( guththila_strcmp(environment->string,"1.0", version) != 0) && ( guththila_strcmp(environment->string,"1.1", version) != 0 ) )
return GUTHTHILA_STREAM_WRITER_ERROR_ILLEGAL_XML_VERSION;
fputs( "<?xml version=\"", stream_writer->writer);
@@ -581,30 +572,30 @@
return GUTHTHILA_SUCCESS;
}
- int guththila_xml_stream_writer_write_characters(guththila_xml_stream_writer_t* stream_writer, char* text)
+ int guththila_xml_stream_writer_write_characters(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* text)
{
if (!text)
return GUTHTHILA_STREAM_WRITER_ERROR_TEXT_NULL;
- guththila_xml_stream_writer_end_start_element(stream_writer);
+ guththila_xml_stream_writer_end_start_element(environment,stream_writer);
if (text)
- guththila_xml_stream_writer_write_encoded(stream_writer, text, 0);
+ guththila_xml_stream_writer_write_encoded(environment,stream_writer, text, 0);
return GUTHTHILA_SUCCESS;
}
- char* guththila_xml_stream_writer_get_prefix(guththila_xml_stream_writer_t* stream_writer, char* uri)
+ guththila_char_t* guththila_xml_stream_writer_get_prefix(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* uri)
{
- char* prefix;
+ guththila_char_t* prefix;
if (!uri)
return 0;
- prefix = apr_hash_get(stream_writer->namespace_hash, uri, APR_HASH_KEY_STRING );
+ prefix = guththila_hash_get(stream_writer->namespace_hash, uri, GUTHTHILA_HASH_KEY_STRING );
return prefix;
}
- int guththila_xml_stream_writer_set_prefix(guththila_xml_stream_writer_t* stream_writer, char* prefix, char* uri)
+ int guththila_xml_stream_writer_set_prefix(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* prefix, guththila_char_t* uri)
{
if (!prefix)
return GUTHTHILA_STREAM_WRITER_ERROR_PREFIX_NULL;
@@ -612,24 +603,24 @@
if (!uri)
return GUTHTHILA_STREAM_WRITER_ERROR_guththila_namespace_t_NULL;
- if ( strcmp(prefix, "xml") == 0 || strcmp (prefix, "xmlns") == 0)
+ if ( guththila_strcmp(environment->string,prefix, "xml") == 0 || guththila_strcmp(environment->string,prefix, "xmlns") == 0)
return GUTHTHILA_STREAM_WRITER_ERROR_ILLEGAL_PREFIX;
- apr_hash_set(stream_writer->namespace_hash, uri, APR_HASH_KEY_STRING, prefix);
- apr_hash_set(stream_writer->prefix_hash, prefix, APR_HASH_KEY_STRING, uri); /*over write another prefix*/
+ guththila_hash_set(stream_writer->namespace_hash, uri, GUTHTHILA_HASH_KEY_STRING, prefix);
+ guththila_hash_set(stream_writer->prefix_hash, prefix, GUTHTHILA_HASH_KEY_STRING, uri); /*over write another prefix*/
return GUTHTHILA_SUCCESS;
}
- int guththila_xml_stream_writer_set_default_prefix(guththila_xml_stream_writer_t* stream_writer, char* uri){
- return guththila_xml_stream_writer_set_prefix(stream_writer, GUTHTHILA_DEFAULT_NS_PREFIX, uri);
+ int guththila_xml_stream_writer_set_default_prefix(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* uri){
+ return guththila_xml_stream_writer_set_prefix(environment,stream_writer, GUTHTHILA_DEFAULT_NS_PREFIX, uri);
}
- int guththila_xml_stream_writer_write_encoded(guththila_xml_stream_writer_t* stream_writer, char* text, int in_attr)
+ int guththila_xml_stream_writer_write_encoded(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* text, int in_attr)
{
- char* start;
- char* ptr;
+ guththila_char_t* start;
+ guththila_char_t* ptr;
if (!text)
return GUTHTHILA_STREAM_WRITER_ERROR_TEXT_NULL;
@@ -638,10 +629,10 @@
for (ptr = text; *ptr; ptr++)
{
- char c = *ptr;
+ guththila_char_t c = *ptr;
if (c == '<' || c == '>' || c == '&')
{
- char* to_write = apr_pstrndup(guththila_apr_pool, start, (apr_size_t)(ptr - start));
+ guththila_char_t* to_write = guththila_strndup(environment->string, start, (guththila_ssize_t)(ptr - start));
if (to_write)
{
fputs( to_write, stream_writer->writer);
@@ -663,7 +654,7 @@
}
else if (in_attr && (c == '"' || c == '\''))
{
- char* to_write = apr_pstrndup(guththila_apr_pool, start, (apr_size_t)(ptr - start));
+ guththila_char_t* to_write = guththila_strndup(environment->string, start, (guththila_ssize_t)(ptr - start));
if (to_write)
{
fputs( to_write, stream_writer->writer);
@@ -686,7 +677,7 @@
if (ptr - start)
{
- char* to_write = apr_pstrndup(guththila_apr_pool, start, (apr_size_t)(ptr - start));
+ guththila_char_t* to_write = guththila_strndup(environment->string, start, (guththila_ssize_t)(ptr - start));
if (to_write)
{
fputs( to_write, stream_writer->writer);
Modified: webservices/axis2/trunk/c/modules/xml/guththila/src/guththila_xml_stream_writer.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/guththila/src/guththila_xml_stream_writer.h?rev=327989&r1=327988&r2=327989&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/guththila/src/guththila_xml_stream_writer.h (original)
+++ webservices/axis2/trunk/c/modules/xml/guththila/src/guththila_xml_stream_writer.h Mon Oct 24 01:15:14 2005
@@ -21,8 +21,8 @@
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
+#include "guththila_environment.h"
-#include "guththila_errno.h"
#define GUTHTHILA_DEFAULT_NS_PREFIX ""
@@ -35,85 +35,85 @@
-guththila_xml_stream_writer_t* guththila_create_xml_stream_writer(FILE* writer, char* encoding, int is_prefix_defaulting);
+guththila_xml_stream_writer_t* guththila_create_xml_stream_writer(guththila_environment_t *environment,FILE* writer, guththila_char_t* encoding, int is_prefix_defaulting);
- int guththila_xml_stream_writer_end_start_element(guththila_xml_stream_writer_t* stream_writer);
+ int guththila_xml_stream_writer_end_start_element(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer);
- int guththila_xml_stream_writer_write_start_element(guththila_xml_stream_writer_t* stream_writer, char* local_name);
+ int guththila_xml_stream_writer_write_start_element(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name);
- int guththila_xml_stream_writer_write_start_element_with_namespace(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* namespace_uri);
+ int guththila_xml_stream_writer_write_start_element_with_namespace(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* namespace_uri);
- int guththila_xml_stream_writer_write_start_element_with_namespace_prefix(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* namespace_uri, char* prefix);
+ int guththila_xml_stream_writer_write_start_element_with_namespace_prefix(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* namespace_uri, guththila_char_t* prefix);
- int guththila_xml_stream_writer_write_empty_element(guththila_xml_stream_writer_t* stream_writer, char* local_name);
+ int guththila_xml_stream_writer_write_empty_element(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name);
- int guththila_xml_stream_writer_write_empty_element_with_namespace(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* namespace_uri);
+ int guththila_xml_stream_writer_write_empty_element_with_namespace(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* namespace_uri);
- int guththila_xml_stream_writer_write_empty_element_with_namespace_prefix(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* namespace_uri, char* prefix);
+ int guththila_xml_stream_writer_write_empty_element_with_namespace_prefix(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* namespace_uri, guththila_char_t* prefix);
- int guththila_xml_stream_writer_write_end_element(guththila_xml_stream_writer_t* stream_writer);
+ int guththila_xml_stream_writer_write_end_element(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer);
- int guththila_xml_stream_writer_write_end_document(guththila_xml_stream_writer_t* stream_writer);
+ int guththila_xml_stream_writer_write_end_document(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer);
- int guththila_xml_stream_writer_write_attribute(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* value);
+ int guththila_xml_stream_writer_write_attribute(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* value);
- int guththila_xml_stream_writer_write_attribute_with_namespace(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* value, char* namespace_uri);
+ int guththila_xml_stream_writer_write_attribute_with_namespace(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* value, guththila_char_t* namespace_uri);
- int guththila_xml_stream_writer_write_attribute_with_namespace_prefix(guththila_xml_stream_writer_t* stream_writer, char* local_name, char* value, char* namespace_uri, char* prefix);
+ int guththila_xml_stream_writer_write_attribute_with_namespace_prefix(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* local_name, guththila_char_t* value, guththila_char_t* namespace_uri, guththila_char_t* prefix);
- int guththila_xml_stream_writer_write_namespace(guththila_xml_stream_writer_t* stream_writer, char* prefix, char* namespace_uri);
+ int guththila_xml_stream_writer_write_namespace(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* prefix, guththila_char_t* namespace_uri);
- int guththila_xml_stream_writer_write_default_namespace(guththila_xml_stream_writer_t* stream_writer, char* namespace_uri);
+ int guththila_xml_stream_writer_write_default_namespace(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* namespace_uri);
- int guththila_xml_stream_writer_write_comment(guththila_xml_stream_writer_t* stream_writer, char* data);
+ int guththila_xml_stream_writer_write_comment(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* data);
- int guththila_xml_stream_writer_write_processing_instruction(guththila_xml_stream_writer_t* stream_writer, char* target);
+ int guththila_xml_stream_writer_write_processing_instruction(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* target);
- int guththila_xml_stream_writer_write_processing_instruction_data(guththila_xml_stream_writer_t* stream_writer, char* target, char* data);
+ int guththila_xml_stream_writer_write_processing_instruction_data(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* target, guththila_char_t* data);
- int guththila_xml_stream_writer_write_cdata(guththila_xml_stream_writer_t* stream_writer, char* data);
+ int guththila_xml_stream_writer_write_cdata(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* data);
- int guththila_xml_stream_writer_write_dtd(guththila_xml_stream_writer_t* stream_writer, char* dtd);
+ int guththila_xml_stream_writer_write_dtd(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* dtd);
- int guththila_xml_stream_writer_write_entity_ref(guththila_xml_stream_writer_t* stream_writer, char* name);
+ int guththila_xml_stream_writer_write_entity_ref(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* name);
- int guththila_xml_stream_writer_write_start_document(guththila_xml_stream_writer_t* stream_writer);
+ int guththila_xml_stream_writer_write_start_document(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer);
- int guththila_xml_stream_writer_write_start_document_with_version(guththila_xml_stream_writer_t* stream_writer, char* version);
+ int guththila_xml_stream_writer_write_start_document_with_version(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* version);
- int guththila_xml_stream_writer_write_start_document_with_version_encoding(guththila_xml_stream_writer_t* stream_writer, char* encoding, char* version);
+ int guththila_xml_stream_writer_write_start_document_with_version_encoding(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* encoding, guththila_char_t* version);
- int guththila_xml_stream_writer_write_characters(guththila_xml_stream_writer_t* stream_writer, char* text);
+ int guththila_xml_stream_writer_write_characters(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* text);
- char* guththila_xml_stream_writer_get_prefix(guththila_xml_stream_writer_t* stream_writer, char* uri);
+ guththila_char_t* guththila_xml_stream_writer_get_prefix(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* uri);
- int guththila_xml_stream_writer_set_prefix(guththila_xml_stream_writer_t* stream_writer, char* prefix, char* uri);
+ int guththila_xml_stream_writer_set_prefix(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* prefix, guththila_char_t* uri);
- int guththila_xml_stream_writer_set_default_prefix(guththila_xml_stream_writer_t* stream_writer, char* uri);
+ int guththila_xml_stream_writer_set_default_prefix(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* uri);
- int guththila_xml_stream_writer_write_encoded(guththila_xml_stream_writer_t* stream_writer, char* text, int in_attr);
+ int guththila_xml_stream_writer_write_encoded(guththila_environment_t *environment,guththila_xml_stream_writer_t* stream_writer, guththila_char_t* text, int in_attr);
#endif /*GUTHTHILA_XML_STREAM_WRITER_H*/