summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2016-03-25 15:27:28 +0200
committerLars Wirzenius <liw@liw.fi>2016-03-25 15:27:28 +0200
commitd42e1340819aeb5903b3d180d509cbadc84768f7 (patch)
tree2a69b0057f3b404b73235b564b09f80c03763480
parent5b68b264d524027713109836e933621af9346acc (diff)
downloaddistix-d42e1340819aeb5903b3d180d509cbadc84768f7.tar.gz
Simplify logic by using helper method
-rw-r--r--distixlib/plugins/import_mail_plugin.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/distixlib/plugins/import_mail_plugin.py b/distixlib/plugins/import_mail_plugin.py
index b43d089..b78eaee 100644
--- a/distixlib/plugins/import_mail_plugin.py
+++ b/distixlib/plugins/import_mail_plugin.py
@@ -76,10 +76,7 @@ class ImportMailPlugin(cliapp.Plugin):
msg_ids = self._get_message_ids(msg)
if referenced_tickets:
for ticket in referenced_tickets:
- for existing_msg in ticket.get_messages():
- if self._equal_messages(existing_msg, msg):
- break
- else:
+ if not self._contains_message(ticket, msg):
ticket.add_message(msg)
cache.add_msg_ids_for_ticket_id(
ticket.get_ticket_id(), msg_ids)
@@ -95,6 +92,11 @@ class ImportMailPlugin(cliapp.Plugin):
all_tickets.append(new_ticket)
return ticket_store.add_ticket(new_ticket)
+ def _contains_message(self, ticket, msg):
+ return any(
+ self._equal_messages(existing, msg)
+ for existing in ticket.get_messages())
+
def _equal_messages(self, msg1, msg2):
return msg1.as_string() == msg2.as_string()