(self, message)
Copy mbox- or MMDF-specific state to message insofar as possible.
Copy mbox- or MMDF-specific state to message insofar as possible.
Copy mbox - or MMDF - specific state to message insofar as possible .
def _explain_to(self, message):
        """Copy mbox- or MMDF-specific state to message insofar as possible."""
        if isinstance(message, MaildirMessage):
            flags = set(self.get_flags())
            if 'O' in flags:
                message.set_subdir('cur')
            if 'F' in flags:
                message.add_flag('F')
            if 'A' in flags:
                message.add_flag('R')
            if 'R' in flags:
                message.add_flag('S')
            if 'D' in flags:
                message.add_flag('T')
            del message['status']
            del message['x-status']
            maybe_date = ' '.join(self.get_from().split()[-5:])
            try:
                message.set_date(calendar.timegm(time.strptime(maybe_date,
                                                      '%a %b %d %H:%M:%S %Y')))
            except (ValueError, OverflowError):
                pass
        elif isinstance(message, _mboxMMDFMessage):
            message.set_flags(self.get_flags())
            message.set_from(self.get_from())
        elif isinstance(message, MHMessage):
            flags = set(self.get_flags())
            if 'R' not in flags:
                message.add_sequence('unseen')
            if 'A' in flags:
                message.add_sequence('replied')
            if 'F' in flags:
                message.add_sequence('flagged')
            del message['status']
            del message['x-status']
        elif isinstance(message, BabylMessage):
            flags = set(self.get_flags())
            if 'R' not in flags:
                message.add_label('unseen')
            if 'D' in flags:
                message.add_label('deleted')
            if 'A' in flags:
                message.add_label('answered')
            del message['status']
            del message['x-status']
        elif isinstance(message, Message):
            pass
        else:
            raise TypeError('Cannot convert to specified type: %s' %
                            type(message))
def _explain_to ( self , message ) : if isinstance ( message , MaildirMessage ) : flags = set ( self . get_flags ( ) ) if 'O' in flags : message . set_subdir ( 'cur' ) if 'F' in flags : message . add_flag ( 'F' ) if 'A' in flags : message . add_flag ( 'R' ) if 'R' in flags : message . add_flag ( 'S' ) if 'D' in flags : message . add_flag ( 'T' ) del message [ 'status' ] del message [ 'x-status' ] maybe_date = ' ' . join ( self . get_from ( ) . split ( ) [ - 5 : ] ) try : message . set_date ( calendar . timegm ( time . strptime ( maybe_date , '%a %b %d %H:%M:%S %Y' ) ) ) except ( ValueError , OverflowError ) : pass elif isinstance ( message , _mboxMMDFMessage ) : message . set_flags ( self . get_flags ( ) ) message . set_from ( self . get_from ( ) ) elif isinstance ( message , MHMessage ) : flags = set ( self . get_flags ( ) ) if 'R' not in flags : message . add_sequence ( 'unseen' ) if 'A' in flags : message . add_sequence ( 'replied' ) if 'F' in flags : message . add_sequence ( 'flagged' ) del message [ 'status' ] del message [ 'x-status' ] elif isinstance ( message , BabylMessage ) : flags = set ( self . get_flags ( ) ) if 'R' not in flags : message . add_label ( 'unseen' ) if 'D' in flags : message . add_label ( 'deleted' ) if 'A' in flags : message . add_label ( 'answered' ) del message [ 'status' ] del message [ 'x-status' ] elif isinstance ( message , Message ) : pass else : raise TypeError ( 'Cannot convert to specified type: %s' % type ( message ) )