Class: CommandProcessor::LoggableProcessor
- Inherits:
-
Object
- Object
- CommandProcessor::LoggableProcessor
- Defined in:
- lib/command_processor/extensions/loggable_processor.rb
Instance Method Summary collapse
- #execute(command) ⇒ Object
-
#initialize(processor, logger, blacklisted_parameters = []) ⇒ LoggableProcessor
constructor
A new instance of LoggableProcessor.
Constructor Details
#initialize(processor, logger, blacklisted_parameters = []) ⇒ LoggableProcessor
Returns a new instance of LoggableProcessor.
3 4 5 6 7 |
# File 'lib/command_processor/extensions/loggable_processor.rb', line 3 def initialize(processor, logger, blacklisted_parameters=[]) @processor = processor @logger = logger @blacklisted_parameters = blacklisted_parameters end |
Instance Method Details
#execute(command) ⇒ Object
9 10 11 12 13 14 15 16 17 |
# File 'lib/command_processor/extensions/loggable_processor.rb', line 9 def execute(command) parameters = command.to_params filtered_parameters = parameters.inject({}) do |memo, (key, value)| filtered_value = @blacklisted_parameters.include?(key) ? "[FILTERED]" : value memo.merge(key => filtered_value) end @logger.info("Processing #{command.class.name}\n Parameters: #{filtered_parameters}") @processor.execute(command) end |