aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-simple-data-wrapper.c
diff options
context:
space:
mode:
Diffstat (limited to 'camel/camel-simple-data-wrapper.c')
-rw-r--r--camel/camel-simple-data-wrapper.c164
1 files changed, 65 insertions, 99 deletions
diff --git a/camel/camel-simple-data-wrapper.c b/camel/camel-simple-data-wrapper.c
index b0f4553360..7f128116dc 100644
--- a/camel/camel-simple-data-wrapper.c
+++ b/camel/camel-simple-data-wrapper.c
@@ -2,15 +2,15 @@
/* camel-simple-data-wrapper.c : simple implementation of a data wrapper */
/* store the data in a glib byte array */
-/*
+/*
*
- * Author :
+ * Author :
* Bertrand Guiheneuf <bertrand@helixcode.com>
*
* Copyright 1999, 2000 Helix Code, Inc. (http://www.helixcode.com)
*
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
@@ -28,37 +28,38 @@
#include "camel-simple-data-wrapper.h"
#include "camel-simple-data-wrapper-stream.h"
-#include "camel-log.h"
-static CamelDataWrapperClass *parent_class=NULL;
+static CamelDataWrapperClass *parent_class = NULL;
/* Returns the class for a CamelDataWrapper */
-#define CSDW_CLASS(so) CAMEL_SIMPLE_DATA_WRAPPER_CLASS (GTK_OBJECT(so)->klass)
+#define CSDW_CLASS(so) CAMEL_SIMPLE_DATA_WRAPPER_CLASS (GTK_OBJECT (so)->klass)
-static void my_construct_from_stream (CamelDataWrapper *data_wrapper,
+static void construct_from_stream (CamelDataWrapper *data_wrapper,
CamelStream *stream);
-static void my_write_to_stream (CamelDataWrapper *data_wrapper,
+static void write_to_stream (CamelDataWrapper *data_wrapper,
CamelStream *stream);
-static void my_finalize (GtkObject *object);
-static CamelStream * my_get_output_stream (CamelDataWrapper *data_wrapper);
+static void finalize (GtkObject *object);
+static CamelStream * get_output_stream (CamelDataWrapper *data_wrapper);
static void
camel_simple_data_wrapper_class_init (CamelSimpleDataWrapperClass *camel_simple_data_wrapper_class)
{
- CamelDataWrapperClass *camel_data_wrapper_class = CAMEL_DATA_WRAPPER_CLASS (camel_simple_data_wrapper_class);
- GtkObjectClass *gtk_object_class = GTK_OBJECT_CLASS (camel_data_wrapper_class);
+ CamelDataWrapperClass *camel_data_wrapper_class =
+ CAMEL_DATA_WRAPPER_CLASS (camel_simple_data_wrapper_class);
+ GtkObjectClass *gtk_object_class =
+ GTK_OBJECT_CLASS (camel_data_wrapper_class);
parent_class = gtk_type_class (camel_data_wrapper_get_type ());
- /* virtual method definition */
+
/* virtual method overload */
- camel_data_wrapper_class->write_to_stream = my_write_to_stream;
- camel_data_wrapper_class->construct_from_stream = my_construct_from_stream;
- camel_data_wrapper_class->get_output_stream = my_get_output_stream;
+ camel_data_wrapper_class->write_to_stream = write_to_stream;
+ camel_data_wrapper_class->construct_from_stream = construct_from_stream;
+ camel_data_wrapper_class->get_output_stream = get_output_stream;
- gtk_object_class->finalize = my_finalize;
+ gtk_object_class->finalize = finalize;
}
@@ -74,9 +75,9 @@ GtkType
camel_simple_data_wrapper_get_type (void)
{
static GtkType camel_simple_data_wrapper_type = 0;
-
- if (!camel_simple_data_wrapper_type) {
- GtkTypeInfo camel_simple_data_wrapper_info =
+
+ if (!camel_simple_data_wrapper_type) {
+ GtkTypeInfo camel_simple_data_wrapper_info =
{
"CamelSimpleDataWrapper",
sizeof (CamelSimpleDataWrapper),
@@ -87,160 +88,125 @@ camel_simple_data_wrapper_get_type (void)
/* reserved_2 */ NULL,
(GtkClassInitFunc) NULL,
};
-
- camel_simple_data_wrapper_type = gtk_type_unique (camel_data_wrapper_get_type (),
- &camel_simple_data_wrapper_info);
+
+ camel_simple_data_wrapper_type =
+ gtk_type_unique (camel_data_wrapper_get_type (),
+ &camel_simple_data_wrapper_info);
}
-
+
return camel_simple_data_wrapper_type;
}
-static void
-my_finalize (GtkObject *object)
+static void
+finalize (GtkObject *object)
{
- CamelSimpleDataWrapper *simple_data_wrapper = CAMEL_SIMPLE_DATA_WRAPPER (object);
+ CamelSimpleDataWrapper *simple_data_wrapper =
+ CAMEL_SIMPLE_DATA_WRAPPER (object);
- CAMEL_LOG_FULL_DEBUG ("Entering CamelMimePart::finalize\n");
- if (simple_data_wrapper->byte_array) g_byte_array_free (simple_data_wrapper->byte_array, TRUE);
+ if (simple_data_wrapper->byte_array)
+ g_byte_array_free (simple_data_wrapper->byte_array, TRUE);
GTK_OBJECT_CLASS (parent_class)->finalize (object);
- CAMEL_LOG_FULL_DEBUG ("Leaving CamelMimePart::finalize\n");
}
/**
- * camel_simple_data_wrapper_new: create a new CamelSimpleDataWrapper object
- *
- *
- *
- * Return value:
+ * camel_simple_data_wrapper_new:
+ *
+ * Return value: a new CamelSimpleDataWrapper object
**/
CamelSimpleDataWrapper *
camel_simple_data_wrapper_new (void)
{
- CamelSimpleDataWrapper *simple_data_wrapper;
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper:: Entering new()\n");
-
- simple_data_wrapper = (CamelSimpleDataWrapper *)gtk_type_new (CAMEL_SIMPLE_DATA_WRAPPER_TYPE);
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper:: Leaving new()\n");
- return simple_data_wrapper;
+ return (CamelSimpleDataWrapper *)
+ gtk_type_new (CAMEL_SIMPLE_DATA_WRAPPER_TYPE);
}
-
static void
-my_write_to_stream (CamelDataWrapper *data_wrapper, CamelStream *stream)
+write_to_stream (CamelDataWrapper *data_wrapper, CamelStream *stream)
{
- CamelSimpleDataWrapper *simple_data_wrapper = CAMEL_SIMPLE_DATA_WRAPPER (data_wrapper);
+ CamelSimpleDataWrapper *simple_data_wrapper =
+ CAMEL_SIMPLE_DATA_WRAPPER (data_wrapper);
GByteArray *array;
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper:: Entering my_write_to_stream\n");
- g_assert (data_wrapper);
- g_assert (stream);
-
array = simple_data_wrapper->byte_array;
if ( array && array->len)
camel_stream_write (stream, (gchar *)array->data, array->len);
else
parent_class->write_to_stream (data_wrapper, stream);
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper:: Leaving my_write_to_stream\n");
}
-#define my_CMSDW_TMP_BUF_SIZE 100
+#define CMSDW_TMP_BUF_SIZE 100
static void
-my_construct_from_stream (CamelDataWrapper *data_wrapper, CamelStream *stream)
+construct_from_stream (CamelDataWrapper *data_wrapper, CamelStream *stream)
{
- CamelSimpleDataWrapper *simple_data_wrapper = CAMEL_SIMPLE_DATA_WRAPPER (data_wrapper);
+ CamelSimpleDataWrapper *simple_data_wrapper =
+ CAMEL_SIMPLE_DATA_WRAPPER (data_wrapper);
gint nb_bytes_read;
static gchar *tmp_buf;
GByteArray *array;
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper:: Entering my_construct_from_stream\n");
+ if (!tmp_buf)
+ tmp_buf = g_new (gchar, CMSDW_TMP_BUF_SIZE);
- g_assert (data_wrapper);
- g_assert (stream);
-
- if (!tmp_buf) {
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper::construct_from_stream allocating new temp buffer "
- "with %d bytes\n", my_CMSDW_TMP_BUF_SIZE);
- tmp_buf = g_new (gchar, my_CMSDW_TMP_BUF_SIZE);
- }
-
array = simple_data_wrapper->byte_array;
- if (array) {
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper::construct_from_stream freeing old byte array\n");
+ if (array)
g_byte_array_free (array, FALSE);
- }
-
+
array = g_byte_array_new ();
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper::construct_from_stream new byte array address:%p\n", array);
simple_data_wrapper->byte_array = array;
- nb_bytes_read = camel_stream_read (stream, tmp_buf, my_CMSDW_TMP_BUF_SIZE);
- while (nb_bytes_read>0) {
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper::construct_from_stream read %d bytes from stream\n", nb_bytes_read);
- if (nb_bytes_read>0) g_byte_array_append (array, tmp_buf, nb_bytes_read);
- nb_bytes_read = camel_stream_read (stream, tmp_buf, my_CMSDW_TMP_BUF_SIZE);
+ nb_bytes_read = camel_stream_read (stream, tmp_buf, CMSDW_TMP_BUF_SIZE);
+ while (nb_bytes_read > 0) {
+ if (nb_bytes_read > 0)
+ g_byte_array_append (array, tmp_buf, nb_bytes_read);
+ nb_bytes_read = camel_stream_read (stream, tmp_buf,
+ CMSDW_TMP_BUF_SIZE);
};
-
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper:: Leaving my_construct_from_stream\n");
}
/**
- * camel_simple_data_wrapper_set_text: set some text as data wrapper content
+ * camel_simple_data_wrapper_set_text: set some text as data wrapper content
* @simple_data_wrapper: SimpleDataWrapper object
* @text: the text to use
- *
+ *
* Utility routine used to set up the content of a SimpleDataWrapper object
- * to be a character string.
+ * to be a character string.
**/
void
camel_simple_data_wrapper_set_text (CamelSimpleDataWrapper *simple_data_wrapper, const gchar *text)
{
GByteArray *array;
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper:: Entering set_text\n");
array = simple_data_wrapper->byte_array;
- if (array) {
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper::set_text freeing old byte array\n");
+ if (array)
g_byte_array_free (array, FALSE);
- }
-
+
array = g_byte_array_new ();
simple_data_wrapper->byte_array = array;
-
- g_byte_array_append (array, text, strlen (text));
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper:: Entering set_text\n");
+ g_byte_array_append (array, text, strlen (text));
}
-
-
-
static CamelStream *
-my_get_output_stream (CamelDataWrapper *data_wrapper)
+get_output_stream (CamelDataWrapper *data_wrapper)
{
CamelSimpleDataWrapper *simple_data_wrapper;
CamelStream *output_stream = NULL;
-
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper::get_output_stream leaving\n");
-
- g_assert (data_wrapper);
simple_data_wrapper = CAMEL_SIMPLE_DATA_WRAPPER (data_wrapper);
-
- if (simple_data_wrapper->byte_array && !(simple_data_wrapper->has_byte_array_stream)) {
+
+ if (simple_data_wrapper->byte_array &&
+ !(simple_data_wrapper->has_byte_array_stream)) {
output_stream = camel_simple_data_wrapper_stream_new (simple_data_wrapper);
camel_data_wrapper_set_output_stream (data_wrapper, output_stream);
}
- CAMEL_LOG_FULL_DEBUG ("CamelSimpleDataWrapper::get_output_stream leaving\n");
-
return parent_class->get_output_stream (data_wrapper);
-
}