当前位置: 首页>>代码示例>>Python>>正文


Python ImapThread.from_gmail_message方法代码示例

本文整理汇总了Python中inbox.models.backends.imap.ImapThread.from_gmail_message方法的典型用法代码示例。如果您正苦于以下问题:Python ImapThread.from_gmail_message方法的具体用法?Python ImapThread.from_gmail_message怎么用?Python ImapThread.from_gmail_message使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在inbox.models.backends.imap.ImapThread的用法示例。


在下文中一共展示了ImapThread.from_gmail_message方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: add_message_attrs

# 需要导入模块: from inbox.models.backends.imap import ImapThread [as 别名]
# 或者: from inbox.models.backends.imap.ImapThread import from_gmail_message [as 别名]
    def add_message_attrs(self, db_session, new_uid, msg, folder):
        """ Gmail-specific post-create-message bits. """
        # Disable autoflush so we don't try to flush a message with null
        # thread_id, causing a crash, and so that we don't flush on each
        # added/removed label.
        with db_session.no_autoflush:
            new_uid.message.g_msgid = msg.g_msgid
            # NOTE: g_thrid == g_msgid on the first message in the thread :)
            new_uid.message.g_thrid = msg.g_thrid

            # we rely on Gmail's threading instead of our threading algorithm.
            new_uid.message.thread_order = 0
            new_uid.update_imap_flags(msg.flags, msg.g_labels)

            # FIXME: @karim not sure if it's necessary to clean up strings like
            # \\Inbox, \\Trash, etc.
            new_uid.g_labels = [label for label in msg.g_labels]

            thread = new_uid.message.thread = ImapThread.from_gmail_message(
                db_session, new_uid.account.namespace, new_uid.message)

            # make sure this thread has all the correct labels
            common.update_thread_labels(thread, folder.name, msg.g_labels,
                                        db_session)
            return new_uid
开发者ID:cruiser,项目名称:inbox,代码行数:27,代码来源:gmail.py

示例2: add_gmail_attrs

# 需要导入模块: from inbox.models.backends.imap import ImapThread [as 别名]
# 或者: from inbox.models.backends.imap.ImapThread import from_gmail_message [as 别名]
def add_gmail_attrs(db_session, log, new_uid, flags, folder, g_thrid, g_msgid,
                    g_labels, created):
    """ Gmail-specific post-create-message bits. """
    # Disable autoflush so we don't try to flush a message with null
    # thread_id, causing a crash, and so that we don't flush on each
    # added/removed label.
    with db_session.no_autoflush:
        new_uid.message.g_msgid = g_msgid
        # NOTE: g_thrid == g_msgid on the first message in the thread :)
        new_uid.message.g_thrid = g_thrid
        new_uid.update_imap_flags(flags, g_labels)

        thread = new_uid.message.thread = ImapThread.from_gmail_message(
            db_session, new_uid.account.namespace, new_uid.message)

        # make sure this thread has all the correct labels
        new_labels = account.update_thread_labels(thread, folder.name,
                                                  g_labels, db_session)

        # Reconciliation for Drafts, Sent Mail folders:
        if (('draft' in new_labels or 'sent' in new_labels) and not
                created and new_uid.message.inbox_uid):
            reconcile_message(db_session, log, new_uid.message.inbox_uid,
                              new_uid.message)

        return new_uid
开发者ID:PaulReiber,项目名称:inbox,代码行数:28,代码来源:gmail.py

示例3: add_message_attrs

# 需要导入模块: from inbox.models.backends.imap import ImapThread [as 别名]
# 或者: from inbox.models.backends.imap.ImapThread import from_gmail_message [as 别名]
    def add_message_attrs(self, db_session, new_uid, msg, folder):
        """ Gmail-specific post-create-message bits. """
        # Disable autoflush so we don't try to flush a message with null
        # thread_id, causing a crash, and so that we don't flush on each
        # added/removed label.
        with db_session.no_autoflush:
            new_uid.message.g_msgid = msg.g_msgid
            # NOTE: g_thrid == g_msgid on the first message in the thread :)
            new_uid.message.g_thrid = msg.g_thrid

            # we rely on Gmail's threading instead of our threading algorithm.
            new_uid.message.thread_order = 0
            new_uid.update_imap_flags(msg.flags, msg.g_labels)

            thread = new_uid.message.thread = ImapThread.from_gmail_message(
                db_session, new_uid.account.namespace, new_uid.message)

            # make sure this thread has all the correct labels
            new_labels = common.update_thread_labels(thread, folder.name,
                                                     msg.g_labels, db_session)

            # Reconciliation for Drafts, Sent Mail folders:
            if (('draft' in new_labels or 'sent' in new_labels) and not
                    msg.created and new_uid.message.inbox_uid):
                reconcile_message(db_session, new_uid.message.inbox_uid,
                                  new_uid.message)

            return new_uid
开发者ID:mishravikas,项目名称:inbox,代码行数:30,代码来源:gmail.py

示例4: add_message_to_thread

# 需要导入模块: from inbox.models.backends.imap import ImapThread [as 别名]
# 或者: from inbox.models.backends.imap.ImapThread import from_gmail_message [as 别名]
 def add_message_to_thread(self, db_session, message_obj, raw_message):
     """Associate message_obj to the right Thread object, creating a new
     thread if necessary. We rely on Gmail's threading as defined by
     X-GM-THRID instead of our threading algorithm."""
     # NOTE: g_thrid == g_msgid on the first message in the thread
     message_obj.g_msgid = raw_message.g_msgid
     message_obj.g_thrid = raw_message.g_thrid
     with db_session.no_autoflush:
         # Disable autoflush so we don't try to flush a message with null
         # thread_id.
         message_obj.thread = ImapThread.from_gmail_message(db_session, self.namespace_id, message_obj)
开发者ID:rf-,项目名称:sync-engine,代码行数:13,代码来源:gmail.py

示例5: add_message_attrs

# 需要导入模块: from inbox.models.backends.imap import ImapThread [as 别名]
# 或者: from inbox.models.backends.imap.ImapThread import from_gmail_message [as 别名]
    def add_message_attrs(self, db_session, new_uid, msg):
        """ Gmail-specific post-create-message bits. """
        # Disable autoflush so we don't try to flush a message with null
        # thread_id, causing a crash, and so that we don't flush on each
        # added/removed label.
        with db_session.no_autoflush:
            # NOTE: g_thrid == g_msgid on the first message in the thread :)
            new_uid.message.g_msgid = msg.g_msgid
            new_uid.message.g_thrid = msg.g_thrid

            # We rely on Gmail's threading instead of our threading algorithm.
            new_uid.message.thread = ImapThread.from_gmail_message(
                db_session, new_uid.account.namespace, new_uid.message)

        return new_uid
开发者ID:wakermahmud,项目名称:sync-engine,代码行数:17,代码来源:gmail.py

示例6: add_message_attrs

# 需要导入模块: from inbox.models.backends.imap import ImapThread [as 别名]
# 或者: from inbox.models.backends.imap.ImapThread import from_gmail_message [as 别名]
    def add_message_attrs(self, db_session, new_uid, msg):
        """ Gmail-specific post-create-message bits. """
        # Disable autoflush so we don't try to flush a message with null
        # thread_id, causing a crash, and so that we don't flush on each
        # added/removed label.
        with db_session.no_autoflush:
            new_uid.message.g_msgid = msg.g_msgid
            # NOTE: g_thrid == g_msgid on the first message in the thread :)
            new_uid.message.g_thrid = msg.g_thrid

            # we rely on Gmail's threading instead of our threading algorithm.
            new_uid.update_flags_and_labels(msg.flags, msg.g_labels)

            thread = new_uid.message.thread = ImapThread.from_gmail_message(
                db_session, new_uid.account.namespace, new_uid.message)

        # make sure this thread has all the correct labels
        common.add_any_new_thread_labels(thread, new_uid, db_session)
        return new_uid
开发者ID:PriviPK,项目名称:privipk-sync-engine,代码行数:21,代码来源:gmail.py


注:本文中的inbox.models.backends.imap.ImapThread.from_gmail_message方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。