X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fmodest-tny-send-queue.h;h=51e1fef5d4877bae5a9f8207c08c1ddcdee1ff65;hp=0e6a1de4ec3494778918431180b608d28cca9dba;hb=4d39841513a3a7f7aa9d38ab97cb9fcc9171e80b;hpb=0344beb7b1e6a60f4b6605c7c6d49fedfdd02676 diff --git a/src/modest-tny-send-queue.h b/src/modest-tny-send-queue.h index 0e6a1de..51e1fef 100644 --- a/src/modest-tny-send-queue.h +++ b/src/modest-tny-send-queue.h @@ -51,6 +51,7 @@ typedef struct _ModestTnySendQueue ModestTnySendQueue; typedef struct _ModestTnySendQueueClass ModestTnySendQueueClass; typedef enum { + MODEST_TNY_SEND_QUEUE_UNKNOWN, MODEST_TNY_SEND_QUEUE_WAITING, MODEST_TNY_SEND_QUEUE_SUSPENDED, MODEST_TNY_SEND_QUEUE_SENDING, @@ -64,6 +65,7 @@ struct _ModestTnySendQueue { struct _ModestTnySendQueueClass { TnyCamelSendQueueClass parent_class; + /* Signals */ void (*status_changed)(ModestTnySendQueue *self, const gchar *msg_id, ModestTnySendQueueStatus status); }; @@ -89,18 +91,6 @@ GType modest_tny_send_queue_get_type (void) G_GNUC_CONST; ModestTnySendQueue* modest_tny_send_queue_new (TnyCamelTransportAccount *account); - -/** - * modest_tny_send_queue_try_to_send: - * @self: a valid #ModestTnySendQueue instance - * - * Try to send the messages that are in the queue's outbox folder. - * This is not always necessary because the queue tries to send - * messages as soon as a message is added, and as soon as the queue - * is instantiated. - */ -void modest_tny_send_queue_try_to_send (ModestTnySendQueue* self); - /** * modest_tny_send_queue_sending_in_progress: * @self: a valid #ModestTnySendQueue instance @@ -109,7 +99,6 @@ void modest_tny_send_queue_try_to_send (ModestTnySendQueue* self); */ gboolean modest_tny_send_queue_sending_in_progress (ModestTnySendQueue* self); -#if 0 /** * modest_tny_send_queue_msg_is_being_sent: * @self: a valid #ModestTnySendQueue instance @@ -118,7 +107,6 @@ gboolean modest_tny_send_queue_sending_in_progress (ModestTnySendQueue* self); * Checks if message identifies with @msg_id is currently being sent. */ gboolean modest_tny_send_queue_msg_is_being_sent (ModestTnySendQueue* self, const gchar *msg_id); -#endif /** * modest_tny_send_queue_get_msg_status: @@ -132,6 +120,68 @@ gboolean modest_tny_send_queue_msg_is_being_sent (ModestTnySendQueue* self, cons ModestTnySendQueueStatus modest_tny_send_queue_get_msg_status (ModestTnySendQueue *self, const gchar *msg_id); +gchar * +modest_tny_send_queue_get_msg_id (TnyHeader *header); + +/** + * modest_tny_all_send_queues_get_msg_status: + * @header: a #TnyHeader + * + * obtain status of message (searching for it in all queues) + * + * Returns: a #ModestTnySendQueueStatus + */ +ModestTnySendQueueStatus +modest_tny_all_send_queues_get_msg_status (TnyHeader *header); + + +/** + * modest_tny_send_queue_to_string: + * @self: a valid #ModestTnySendQueue instance + * + * get a string representation of a send queue (for debugging) + * + * Returns: a newly allocated string, or NULL in case of error + */ +gchar* modest_tny_send_queue_to_string (ModestTnySendQueue *self); + +typedef void (*ModestTnySendQueueWakeupFunc) (ModestTnySendQueue *self, gboolean cancelled, GError *err, gpointer userdata); + +/** + * modest_tny_send_queue_wakeup: + * @self: a valid #ModestTnySendQueue instance + * + * Wakes up all suspended messages in the send queue. This means that + * the send queue will try to send them again. Note that you'd + * probably need a tny_send_queue_flush to force it + */ +void modest_tny_send_queue_wakeup (ModestTnySendQueue *self, + ModestTnySendQueueWakeupFunc callback, + gpointer userdata); + +/** + * modest_tny_send_queue_get_requested_send_receive: + * @self: a #ModestTnySendQueue + * + * gets if the last request to send queue was an interactive send + * receive or not. + * + * Returns: %TRUE if last request was an interactive send receive, + * %FALSE otherwise. + */ +gboolean modest_tny_send_queue_get_requested_send_receive (ModestTnySendQueue *self); + +/** + * modest_tny_send_queue_set_requested_send_receive: + * @self: a #ModestTnySendQueue + * @requested_send_receive: mode. + * + * this should be called on each call to process the queue, to distinguish if the + * action was an interactive send receive. + */ +void modest_tny_send_queue_set_requested_send_receive (ModestTnySendQueue *self, gboolean requested_send_receive); + + G_END_DECLS #endif /* __MODEST_TNY_SEND_QUEUE_H__ */