Move MessageType instantiation out of Resolvers into Tasks
This commit is contained in:
@@ -168,8 +168,7 @@ class ScheduleStartResolver(BinnedSchedulesBaseResolver):
|
||||
"""
|
||||
log_prefix = 'Scheduled Nudge'
|
||||
|
||||
def schedule_bin(self):
|
||||
msg_type = RecurringNudge(abs(self.day_offset))
|
||||
def schedule_bin(self, msg_type):
|
||||
_annotate_for_monitoring(msg_type, self.site, self.bin_num, self.target_datetime, self.day_offset)
|
||||
|
||||
for (user, language, context) in self.schedules_for_bin():
|
||||
@@ -240,8 +239,7 @@ class UpgradeReminderResolver(BinnedSchedulesBaseResolver):
|
||||
"""
|
||||
log_prefix = 'Upgrade Reminder'
|
||||
|
||||
def schedule_bin(self):
|
||||
msg_type = UpgradeReminder()
|
||||
def schedule_bin(self, msg_type):
|
||||
_annotate_for_monitoring(msg_type, self.site, self.bin_num, self.target_datetime, self.day_offset)
|
||||
|
||||
for (user, language, context) in self.schedules_for_bin():
|
||||
@@ -337,8 +335,7 @@ class CourseUpdateResolver(BinnedSchedulesBaseResolver):
|
||||
"""
|
||||
log_prefix = 'Course Update'
|
||||
|
||||
def schedule_bin(self):
|
||||
msg_type = CourseUpdate()
|
||||
def schedule_bin(self, msg_type):
|
||||
_annotate_for_monitoring(msg_type, self.site, self.bin_num, self.target_datetime, self.day_offset)
|
||||
|
||||
for (user, language, context) in self._course_update_schedules_for_bin():
|
||||
|
||||
@@ -134,6 +134,7 @@ class ScheduleMessageBaseTask(Task):
|
||||
def run(
|
||||
self, site_id, target_day_str, day_offset, bin_num, org_list, exclude_orgs=False, override_recipient_email=None,
|
||||
):
|
||||
msg_type = self.make_message_type(day_offset)
|
||||
return self.resolver(
|
||||
self.async_send_task,
|
||||
Site.objects.get(id=site_id),
|
||||
@@ -143,7 +144,10 @@ class ScheduleMessageBaseTask(Task):
|
||||
org_list,
|
||||
exclude_orgs=exclude_orgs,
|
||||
override_recipient_email=override_recipient_email,
|
||||
).schedule_bin()
|
||||
).schedule_bin(msg_type)
|
||||
|
||||
def make_message_type(self, day_offset):
|
||||
raise NotImplementedError()
|
||||
|
||||
|
||||
@task(ignore_result=True, routing_key=ROUTING_KEY)
|
||||
@@ -170,6 +174,9 @@ class ScheduleRecurringNudge(ScheduleMessageBaseTask):
|
||||
resolver = resolvers.ScheduleStartResolver
|
||||
async_send_task = _recurring_nudge_schedule_send
|
||||
|
||||
def make_message_type(self, day_offset):
|
||||
return resolvers.RecurringNudge(abs(day_offset))
|
||||
|
||||
|
||||
@task(ignore_result=True, routing_key=ROUTING_KEY)
|
||||
def _upgrade_reminder_schedule_send(site_id, msg_str):
|
||||
@@ -192,6 +199,9 @@ class ScheduleUpgradeReminder(ScheduleMessageBaseTask):
|
||||
resolver = resolvers.UpgradeReminderResolver
|
||||
async_send_task = _upgrade_reminder_schedule_send
|
||||
|
||||
def make_message_type(self, day_offset):
|
||||
return resolvers.UpgradeReminder()
|
||||
|
||||
|
||||
|
||||
@task(ignore_result=True, routing_key=ROUTING_KEY)
|
||||
@@ -214,3 +224,6 @@ class ScheduleCourseUpdate(ScheduleMessageBaseTask):
|
||||
log_prefix = 'Course Update'
|
||||
resolver = resolvers.CourseUpdateResolver
|
||||
async_send_task = _course_update_schedule_send
|
||||
|
||||
def make_message_type(self, day_offset):
|
||||
return resolvers.CourseUpdate()
|
||||
|
||||
Reference in New Issue
Block a user