diff options
Diffstat (limited to 'src/plugins/push-notification/push-notification-txn-msg.h')
-rw-r--r-- | src/plugins/push-notification/push-notification-txn-msg.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/plugins/push-notification/push-notification-txn-msg.h b/src/plugins/push-notification/push-notification-txn-msg.h new file mode 100644 index 0000000..777f115 --- /dev/null +++ b/src/plugins/push-notification/push-notification-txn-msg.h @@ -0,0 +1,39 @@ +/* Copyright (c) 2015-2018 Dovecot authors, see the included COPYING file */ + +#ifndef PUSH_NOTIFICATION_TXN_MSG_H +#define PUSH_NOTIFICATION_TXN_MSG_H + +struct mail_transaction_commit_changes; +struct push_notification_event_config; +struct push_notification_txn; +struct push_notification_txn_event; + +struct push_notification_txn_msg { + const char *mailbox; + uint32_t uid; + uint32_t uid_validity; + + ARRAY(struct push_notification_txn_event *) eventdata; + + /* Private */ + unsigned int save_idx; +}; + +struct push_notification_txn_msg * +push_notification_txn_msg_create(struct push_notification_txn *txn, + struct mail *mail); +void push_notification_txn_msg_end( + struct push_notification_txn *ptxn, + struct mail_transaction_commit_changes *changes); + +void * +push_notification_txn_msg_get_eventdata(struct push_notification_txn_msg *msg, + const char *event_name); +void push_notification_txn_msg_set_eventdata( + struct push_notification_txn *txn, + struct push_notification_txn_msg *msg, + struct push_notification_event_config *event, void *data); +void push_notification_txn_msg_deinit_eventdata( + struct push_notification_txn_msg *msg); + +#endif |