You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by sa...@apache.org on 2007/03/30 05:36:04 UTC
svn commit: r523922 - in /webservices/axis2/trunk/c/axiom/src/attachments:
axiom_mime_output.h mime_output.c
Author: samisa
Date: Thu Mar 29 20:36:04 2007
New Revision: 523922
URL: http://svn.apache.org/viewvc?view=rev&rev=523922
Log:
Removed ops
Modified:
webservices/axis2/trunk/c/axiom/src/attachments/axiom_mime_output.h
webservices/axis2/trunk/c/axiom/src/attachments/mime_output.c
Modified: webservices/axis2/trunk/c/axiom/src/attachments/axiom_mime_output.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/attachments/axiom_mime_output.h?view=diff&rev=523922&r1=523921&r2=523922
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/attachments/axiom_mime_output.h (original)
+++ webservices/axis2/trunk/c/axiom/src/attachments/axiom_mime_output.h Thu Mar 29 20:36:04 2007
@@ -40,7 +40,6 @@
/* This should be moved to header file later axis2_utils_defines.h*/
#define axis2_byte_t char
-typedef struct axiom_mime_output_ops axiom_mime_output_ops_t;
typedef struct axiom_mime_output axiom_mime_output_t;
@@ -49,27 +48,20 @@
* @{
*/
-/**
- * @brief Flow ops struct
- * Encapsulator struct for ops of axiom_mime_output
- */
-struct axiom_mime_output_ops
-{
-
- axis2_byte_t* (AXIS2_CALL *complete)(axiom_mime_output_t *mime_output,
- const axis2_env_t *env,
- axis2_byte_t **output_stream,
- int *output_stream_size,
- axis2_char_t *soap_body_buffer,
- axis2_array_list_t *binary_node_list,
- axis2_char_t *boundary,
- axis2_char_t *content_id,
- axis2_char_t *char_set_encoding,
- const axis2_char_t *soap_content_type);
-
- const axis2_char_t *(AXIS2_CALL *
- get_content_type_for_mime)(
- axiom_mime_output_t *mime_output,
+ AXIS2_EXTERN axis2_byte_t* AXIS2_CALL
+ axiom_mime_output_complete(axiom_mime_output_t *mime_output,
+ const axis2_env_t *env,
+ axis2_byte_t **output_stream,
+ int *output_stream_size,
+ axis2_char_t *soap_body_buffer,
+ axis2_array_list_t *binary_node_list,
+ axis2_char_t *boundary,
+ axis2_char_t *content_id,
+ axis2_char_t *char_set_encoding,
+ const axis2_char_t *soap_content_type);
+
+ AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
+ axiom_mime_output_get_content_type_for_mime(axiom_mime_output_t *mime_output,
const axis2_env_t *env,
axis2_char_t *boundary,
axis2_char_t *content_id,
@@ -79,43 +71,24 @@
/** Deallocate memory
* @return status code
*/
- void (AXIS2_CALL *free) (axiom_mime_output_t *mime_output,
- const axis2_env_t *env);
-
-};
-
-/**
- * @brief Flow struct
- * Flow
- */
-struct axiom_mime_output
-{
- axiom_mime_output_ops_t *ops;
-};
-
-/**
- * Creates mime_output struct
- * @return pointer to newly created mime_output
- */
-AXIS2_EXTERN axiom_mime_output_t * AXIS2_CALL
-axiom_mime_output_create (const axis2_env_t *env);
-
-AXIS2_EXTERN const axis2_char_t * AXIS2_CALL
-axiom_mime_output_get_content_type_for_mime(axiom_mime_output_t *mime_output,
- const axis2_env_t *env,
- axis2_char_t *boundary,
- axis2_char_t *content_id,
- axis2_char_t *char_set_encoding,
- const axis2_char_t *soap_content_type);
-
+ AXIS2_EXTERN void AXIS2_CALL
+ axiom_mime_output_free(axiom_mime_output_t *mime_output,
+ const axis2_env_t *env);
+
+ /**
+ * Creates mime_output struct
+ * @return pointer to newly created mime_output
+ */
+ AXIS2_EXTERN axiom_mime_output_t * AXIS2_CALL
+ axiom_mime_output_create (const axis2_env_t *env);
-#define AXIOM_MIME_OUTPUT_FREE(mime_output, env) ((mime_output)->ops->free (mime_output, env))
+#define AXIOM_MIME_OUTPUT_FREE(mime_output, env) axiom_mime_output_free (mime_output, env)
#define AXIOM_MIME_OUTPUT_COMPLETE(mime_output, env, output_stream, output_stream_size, soap_body_buffer, binary_node_list, boundary, content_id, char_set_encoding, soap_content_type) \
-((mime_output)->ops->complete(mime_output, env, output_stream, output_stream_size, soap_body_buffer, binary_node_list, boundary, content_id, char_set_encoding, soap_content_type))
+axiom_mime_output_complete(mime_output, env, output_stream, output_stream_size, soap_body_buffer, binary_node_list, boundary, content_id, char_set_encoding, soap_content_type)
#define AXIOM_MIME_OUTPUT_GET_CONTENT_TYPE_FOR_MIME(mime_output, env, boundary, content_id, char_set_encoding, soap_content_type) \
-((mime_output)->ops->get_content_type_for_mime(mime_output, env, boundary, content_id, char_set_encoding, soap_content_type))
+axiom_mime_output_get_content_type_for_mime(mime_output, env, boundary, content_id, char_set_encoding, soap_content_type)
/** @} */
Modified: webservices/axis2/trunk/c/axiom/src/attachments/mime_output.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/attachments/mime_output.c?view=diff&rev=523922&r1=523921&r2=523922
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/attachments/mime_output.c (original)
+++ webservices/axis2/trunk/c/axiom/src/attachments/mime_output.c Thu Mar 29 20:36:04 2007
@@ -25,133 +25,83 @@
axis2_char_t AXIS2_CRLF[] = { 13, 10 };
-typedef struct axiom_mime_output_impl
+struct axiom_mime_output
{
- axiom_mime_output_t mime_output;
-}
-axiom_mime_output_impl_t;
-
-#define AXIS2_INTF_TO_IMPL(mime_output) ((axiom_mime_output_impl_t *)(mime_output))
-
-
-axis2_status_t axis2_char_2_byte(const axis2_env_t *env, axis2_char_t *char_buffer, axis2_byte_t **byte_buffer, int *byte_buffer_size);
-
-axis2_status_t
-axis2_char_2_byte(const axis2_env_t *env, axis2_char_t *char_buffer, axis2_byte_t **byte_buffer, int *byte_buffer_size)
-{
- int length;
- int i = 0;
- axis2_byte_t *bytes;
- AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-
- length = axis2_strlen(char_buffer);
- bytes = AXIS2_MALLOC(env->allocator, length * sizeof(axis2_byte_t));
-
- for (i = 0; i < length; i++)
- {
- bytes[i] = (axis2_byte_t) char_buffer[i];
- }
- *byte_buffer = bytes;
- *byte_buffer_size = length;
- return AXIS2_SUCCESS;
-}
+ int dummy;
+};
-void AXIS2_CALL
-axiom_mime_output_free(axiom_mime_output_t *mime_output, const axis2_env_t *env);
+static axis2_status_t
+axis2_char_2_byte(const axis2_env_t *env,
+ axis2_char_t *char_buffer,
+ axis2_byte_t **byte_buffer,
+ int *byte_buffer_size);
+
+static axiom_mime_body_part_t *
+axis2_create_mime_body_part(axiom_text_t *text,
+ const axis2_env_t *env);
+
+static axis2_status_t
+axis2_write_body_part(axiom_mime_output_t *mime_output,
+ const axis2_env_t *env,
+ axis2_byte_t **output_stream,
+ int *output_stream_size,
+ axiom_mime_body_part_t *part,
+ axis2_char_t *boundary);
+
+static axis2_status_t
+axis2_write_mime_boundary(axiom_mime_output_t *mime_output,
+ const axis2_env_t *env,
+ axis2_byte_t **output_stream,
+ int *output_stream_size,
+ axis2_char_t *boundary);
+
+static axis2_status_t
+axis2_write_finish_writing_mime(axiom_mime_output_t *mime_output,
+ const axis2_env_t *env,
+ axis2_byte_t **output_stream,
+ int *output_stream_size,
+ axis2_char_t *boundary);
-axis2_byte_t * AXIS2_CALL
-axiom_mime_output_complete(axiom_mime_output_t *mime_output,
- const axis2_env_t *env,
- axis2_byte_t **output_stream,
- int *output_stream_size,
- axis2_char_t *soap_body_buffer,
- axis2_array_list_t *binary_node_list,
- axis2_char_t *boundary,
- axis2_char_t *content_id,
- axis2_char_t *char_set_encoding,
- const axis2_char_t *soap_content_type);
-axis2_status_t AXIS2_CALL
+static axis2_status_t
axis2_start_writing_mime(axiom_mime_output_t *mime_output,
- const axis2_env_t *env, axis2_byte_t **output_stream,
- int *output_stream_size, axis2_char_t *boundary);
-
-axiom_mime_body_part_t * AXIS2_CALL
-axis2_create_mime_body_part(axiom_text_t *text, const axis2_env_t *env);
-
-axis2_status_t AXIS2_CALL
-axis2_write_body_part(axiom_mime_output_t *mime_output, const axis2_env_t *env,
- axis2_byte_t **output_stream, int *output_stream_size,
- axiom_mime_body_part_t *part, axis2_char_t *boundary);
-
-axis2_status_t AXIS2_CALL
-axis2_write_mime_boundary(axiom_mime_output_t *mime_output, const axis2_env_t *env,
- axis2_byte_t **output_stream, int *output_stream_size,
- axis2_char_t *boundary);
-
-axis2_status_t AXIS2_CALL
-axis2_write_finish_writing_mime(axiom_mime_output_t *mime_output, const axis2_env_t *env,
- axis2_byte_t **output_stream, int *output_stream_size, axis2_char_t *boundary);
-
-
-/************************** End of Function headers ************************/
+ const axis2_env_t *env,
+ axis2_byte_t **output_stream,
+ int *output_stream_size,
+ axis2_char_t *boundary);
AXIS2_EXTERN axiom_mime_output_t * AXIS2_CALL
axiom_mime_output_create(const axis2_env_t *env)
{
- axiom_mime_output_impl_t *mime_output_impl = NULL;
-
+ axiom_mime_output_t *mime_output = NULL;
AXIS2_ENV_CHECK(env, NULL);
- mime_output_impl = (axiom_mime_output_impl_t *) AXIS2_MALLOC(env->allocator,
- sizeof(axiom_mime_output_impl_t));
-
- if (! mime_output_impl)
- {
- AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
- return NULL;
- }
-
- mime_output_impl->mime_output.ops = NULL;
+ mime_output = (axiom_mime_output_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(axiom_mime_output_t));
- mime_output_impl->mime_output.ops = AXIS2_MALLOC(env->allocator,
- sizeof(axiom_mime_output_ops_t));
- if (! mime_output_impl->mime_output.ops)
+ if (! mime_output)
{
- axiom_mime_output_free(&(mime_output_impl->mime_output), env);
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
- mime_output_impl->mime_output.ops->free = axiom_mime_output_free;
- mime_output_impl->mime_output.ops->complete = axiom_mime_output_complete;
- mime_output_impl->mime_output.ops->get_content_type_for_mime = axiom_mime_output_get_content_type_for_mime;
- return &(mime_output_impl->mime_output);
+ return mime_output;
}
-void AXIS2_CALL
+AXIS2_EXTERN void AXIS2_CALL
axiom_mime_output_free(axiom_mime_output_t *mime_output,
const axis2_env_t *env)
{
- axiom_mime_output_impl_t *mime_output_impl = NULL;
-
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
- mime_output_impl = AXIS2_INTF_TO_IMPL(mime_output);
-
- if (mime_output->ops)
- {
- AXIS2_FREE(env->allocator, mime_output->ops);
- mime_output->ops = NULL;
- }
- if (mime_output_impl)
+ if (mime_output)
{
- AXIS2_FREE(env->allocator, mime_output_impl);
- mime_output_impl = NULL;
+ AXIS2_FREE(env->allocator, mime_output);
+ mime_output = NULL;
}
return;
}
-axis2_byte_t * AXIS2_CALL
+AXIS2_EXTERN axis2_byte_t * AXIS2_CALL
axiom_mime_output_complete(axiom_mime_output_t *mime_output,
const axis2_env_t *env,
axis2_byte_t **output_stream,
@@ -348,7 +298,7 @@
return stream_buffer;
}
-axis2_status_t AXIS2_CALL
+static axis2_status_t
axis2_start_writing_mime(axiom_mime_output_t *mime_output,
const axis2_env_t *env, axis2_byte_t **output_stream,
int *output_stream_size, axis2_char_t *boundary)
@@ -357,7 +307,7 @@
return axis2_write_mime_boundary(mime_output, env, output_stream, output_stream_size, boundary);
}
-axis2_status_t AXIS2_CALL
+static axis2_status_t
axis2_write_mime_boundary(axiom_mime_output_t *mime_output, const axis2_env_t *env,
axis2_byte_t **output_stream, int *output_stream_size,
axis2_char_t *boundary)
@@ -395,7 +345,7 @@
return AXIS2_SUCCESS;
}
-axiom_mime_body_part_t * AXIS2_CALL
+static axiom_mime_body_part_t *
axis2_create_mime_body_part(axiom_text_t *text, const axis2_env_t *env)
{
axiom_data_handler_t *data_handler = NULL;
@@ -429,7 +379,7 @@
return mime_body_part;
}
-axis2_status_t AXIS2_CALL
+static axis2_status_t
axis2_write_body_part(axiom_mime_output_t *mime_output, const axis2_env_t *env,
axis2_byte_t **output_stream, int *output_stream_size,
axiom_mime_body_part_t *part, axis2_char_t *boundary)
@@ -481,7 +431,7 @@
}
-axis2_status_t AXIS2_CALL
+static axis2_status_t
axis2_write_finish_writing_mime(axiom_mime_output_t *mime_output, const axis2_env_t *env,
axis2_byte_t **output_stream, int *output_stream_size, axis2_char_t *boundary)
{
@@ -591,4 +541,27 @@
}
return content_type_string;
+}
+
+static axis2_status_t
+axis2_char_2_byte(const axis2_env_t *env,
+ axis2_char_t *char_buffer,
+ axis2_byte_t **byte_buffer,
+ int *byte_buffer_size)
+{
+ int length;
+ int i = 0;
+ axis2_byte_t *bytes;
+ AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+
+ length = axis2_strlen(char_buffer);
+ bytes = AXIS2_MALLOC(env->allocator, length * sizeof(axis2_byte_t));
+
+ for (i = 0; i < length; i++)
+ {
+ bytes[i] = (axis2_byte_t) char_buffer[i];
+ }
+ *byte_buffer = bytes;
+ *byte_buffer_size = length;
+ return AXIS2_SUCCESS;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org