CamelMedium

CamelMedium —

Synopsis




struct      CamelMedium;
            CamelMediumHeader;
void        camel_medium_add_header         (CamelMedium *medium,
                                             const char *name,
                                             const void *value);
void        camel_medium_set_header         (CamelMedium *medium,
                                             const char *name,
                                             const void *value);
void        camel_medium_remove_header      (CamelMedium *medium,
                                             const char *name);
const void* camel_medium_get_header         (CamelMedium *medium,
                                             const char *name);
GArray*     camel_medium_get_headers        (CamelMedium *medium);
void        camel_medium_free_headers       (CamelMedium *medium,
                                             GArray *headers);
CamelDataWrapper* camel_medium_get_content_object
                                            (CamelMedium *medium);
void        camel_medium_set_content_object (CamelMedium *medium,
                                             CamelDataWrapper *content);


Description

Details

struct CamelMedium

struct CamelMedium {
	CamelDataWrapper parent_object;

	/* The content of the medium, as opposed to our parent
	 * CamelDataWrapper, which wraps both the headers and the
	 * content.
	 */
	CamelDataWrapper *content;
};


CamelMediumHeader

typedef struct {
	const char *name;
	const char *value;
} CamelMediumHeader;


camel_medium_add_header ()

void        camel_medium_add_header         (CamelMedium *medium,
                                             const char *name,
                                             const void *value);

Adds a header to a CamelMedium.

medium : a CamelMedium object
name : name of the header
value : value of the header

camel_medium_set_header ()

void        camel_medium_set_header         (CamelMedium *medium,
                                             const char *name,
                                             const void *value);

Sets the value of a header. Any other occurances of the header will be removed. Setting a NULL header can be used to remove the header also.

medium : a CamelMedium object
name : name of the header
value : value of the header

camel_medium_remove_header ()

void        camel_medium_remove_header      (CamelMedium *medium,
                                             const char *name);

Removes the named header from the medium. All occurances of the header are removed.

medium : a CamelMedium
name : the name of the header

camel_medium_get_header ()

const void* camel_medium_get_header         (CamelMedium *medium,
                                             const char *name);

Gets the value of the named header in the medium, or NULL if it is unset. The caller should not modify or free the data.

If the header occurs more than once, only retrieve the first instance of the header. For multi-occuring headers, use :get_headers().

medium : a CamelMedium object
name : the name of the header
Returns : the value of the named header, or NULL

camel_medium_get_headers ()

GArray*     camel_medium_get_headers        (CamelMedium *medium);

Gets an array of all header name/value pairs (as CamelMediumHeader structures). The values will be decoded to UTF-8 for any headers that are recognized by Camel. The caller should not modify the returned data.

medium : a CamelMedium object
Returns : the array of headers, which must be freed with camel_medium_free_headers.

camel_medium_free_headers ()

void        camel_medium_free_headers       (CamelMedium *medium,
                                             GArray *headers);

Frees headers.

medium : a CamelMedium object
headers : an array of headers returned from camel_medium_get_headers

camel_medium_get_content_object ()

CamelDataWrapper* camel_medium_get_content_object
                                            (CamelMedium *medium);

Getss a data wrapper that represents the content of the medium, without its headers.

medium : a CamelMedium object
Returns : a CamelDataWrapper containing medium's content

camel_medium_set_content_object ()

void        camel_medium_set_content_object (CamelMedium *medium,
                                             CamelDataWrapper *content);

Sets the content of medium to be content.

medium : a CamelMedium object
content : a CamelDataWrapper object