From e34392fee3373766febad2bd017b19a817e22a97 Mon Sep 17 00:00:00 2001 From: Jeremy Lecour Date: Tue, 26 Jan 2021 13:26:55 +0100 Subject: [PATCH] =?UTF-8?q?On=20passe=20l'action=20courante=20=C3=A0=20la?= =?UTF-8?q?=20classe=20d'action=20=C3=A0=20ex=C3=A9cuter?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/services/email_action/base.rb | 6 ++++++ app/services/email_action/metadata_mapping.rb | 3 ++- app/services/rule_set_processor.rb | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/app/services/email_action/base.rb b/app/services/email_action/base.rb index 11d8099..40faa2c 100644 --- a/app/services/email_action/base.rb +++ b/app/services/email_action/base.rb @@ -7,6 +7,12 @@ module EmailAction class Base + attr_reader :action + + def initialize(action) + @action = action + end + def process(email) fail NotImplementedError end diff --git a/app/services/email_action/metadata_mapping.rb b/app/services/email_action/metadata_mapping.rb index 5c1872b..74e91ce 100644 --- a/app/services/email_action/metadata_mapping.rb +++ b/app/services/email_action/metadata_mapping.rb @@ -5,9 +5,10 @@ module EmailAction attr_accessor :metadata_mapping_class - def initialize(metadata_mapping_class: ::MetadataMapping) + def initialize(action:, metadata_mapping_class: ::MetadataMapping) @metadata_mapping_class = metadata_mapping_class + super(action: action) end def process(email) diff --git a/app/services/rule_set_processor.rb b/app/services/rule_set_processor.rb index 5444d11..9488167 100644 --- a/app/services/rule_set_processor.rb +++ b/app/services/rule_set_processor.rb @@ -46,7 +46,7 @@ class RuleSetProcessor next unless action.enabled? klass = action.class_name.constantize - email_action = klass.new + email_action = klass.new(action: action) email = email_action.process(email) rescue NameError => ex Rails.logger.error "Skipped action##{action.id} '#{action.name}' - #{ex.inspect}"