CamelIMAPXServer

CamelIMAPXServer

Functions

Properties

CamelIMAPXStore * store Read / Write / Construct Only

Signals

void refresh-mailbox Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── CamelIMAPXServer

Description

Functions

camel_imapx_server_new ()

CamelIMAPXServer *
camel_imapx_server_new (struct _CamelIMAPXStore *store);

camel_imapx_server_ref_store ()

struct _CamelIMAPXStore *
camel_imapx_server_ref_store (CamelIMAPXServer *is);

camel_imapx_server_ref_settings ()

struct _CamelIMAPXSettings *
camel_imapx_server_ref_settings (CamelIMAPXServer *is);

camel_imapx_server_ref_input_stream ()

GInputStream *
camel_imapx_server_ref_input_stream (CamelIMAPXServer *is);

Returns the GInputStream for is , which is owned by either a GTcpConnection or a GSubprocess. If the CamelIMAPXServer is not yet connected or has lost its connection, the function returns NULL.

The returned GInputStream is referenced for thread-safety and must be unreferenced with g_object_unref() when finished with it.

Parameters

Returns

a GInputStream, or NULL

Since: 3.12


camel_imapx_server_ref_output_stream ()

GOutputStream *
camel_imapx_server_ref_output_stream (CamelIMAPXServer *is);

Returns the GOutputStream for is , which is owned by either a GTcpConnection or a GSubprocess. If the CamelIMAPXServer is not yet connected or has lost its connection, the function returns NULL.

The returned GOutputStream is referenced for thread-safety and must be unreferenced with g_object_unref() when finished with it.

Parameters

Returns

a GOutputStream, or NULL

Since: 3.12


camel_imapx_server_ref_selected ()

CamelIMAPXMailbox *
camel_imapx_server_ref_selected (CamelIMAPXServer *is);

Returns the CamelIMAPXMailbox representing the currently selected mailbox (or mailbox being selected if a SELECT command is in progress) on the IMAP server, or NULL if no mailbox is currently selected or being selected on the server.

The returned CamelIMAPXMailbox is reference for thread-safety and should be unreferenced with g_object_unref() when finished with it.

Parameters

Returns

a CamelIMAPXMailbox, or NULL

Since: 3.12


camel_imapx_server_is_connected ()

gboolean
camel_imapx_server_is_connected (CamelIMAPXServer *imapx_server);

CAMEL_IMAPX_SERVER_ERROR

#define CAMEL_IMAPX_SERVER_ERROR (camel_imapx_server_error_quark ())

camel_imapx_server_error_quark ()

GQuark
camel_imapx_server_error_quark (void);

camel_imapx_server_register_untagged_handler ()

const CamelIMAPXUntaggedRespHandlerDesc *
camel_imapx_server_register_untagged_handler
                               (CamelIMAPXServer *is,
                                const gchar *untagged_response,
                                const CamelIMAPXUntaggedRespHandlerDesc *desc);

Register a new handler function for IMAP untagged responses. Pass in a NULL descriptor to delete an existing handler (the untagged response will remain known, but will no longer be acted upon if the handler is deleted). The return value is intended to be used in cases where e.g. an extension to existing handler code is implemented with just some new code to be run before or after the original handler code

Parameters

is

a CamelIMAPXServer instance

 

untagged_response

a string representation of the IMAP untagged response code. Must be all-uppercase with underscores allowed (see RFC 3501)

 

desc

a CamelIMAPXUntaggedRespHandlerDesc handler description structure. The descriptor structure is expected to remain stable over the lifetime of the CamelIMAPXServer instance it was registered with. It is the responsibility of the caller to ensure this

 

Returns

the CamelIMAPXUntaggedRespHandlerDesc previously registered for this untagged response, if any, NULL otherwise.

Since: 3.6

Types and Values

struct CamelIMAPXServer

struct CamelIMAPXServer;

enum CamelIMAPXServerError

Members

CAMEL_IMAPX_SERVER_ERROR_CONCURRENT_CONNECT_FAILED

   

CAMEL_IMAPX_SERVER_ERROR_TRY_RECONNECT

   

struct CamelIMAPXUntaggedRespHandlerDesc

struct CamelIMAPXUntaggedRespHandlerDesc {
	const gchar *untagged_response;
	const CamelIMAPXUntaggedRespHandler handler;
	const gchar *next_response;
	gboolean skip_stream_when_done;
};

IMAP untagged response handler function descriptor. Use in conjunction with camel_imapx_server_register_untagged_handler() to register a new handler function for a given untagged response code

Members

const gchar *untagged_response;

a string representation of the IMAP untagged response code. Must be all-uppercase with underscores allowed (see RFC 3501)

 

const CamelIMAPXUntaggedRespHandler handler;

an untagged response handler function for CamelIMAPXServer

 

const gchar *next_response;

the IMAP untagged code to call a registered handler for directly after successfully running handler . If not NULL, skip_stream_when_done for the current handler has no effect

 

gboolean skip_stream_when_done;

whether or not to skip the current IMAP untagged response in the GInputStream. Set to TRUE if your handler does not eat the stream up to the next response token

 

Since: 3.6

Property Details

The “store” property

  “store”                    CamelIMAPXStore *

IMAPX store for this server.

Flags: Read / Write / Construct Only

Signal Details

The “refresh-mailbox” signal

void
user_function (CamelIMAPXServer  *camelimapxserver,
               CamelIMAPXMailbox *arg1,
               gpointer           user_data)

Flags: Run Last