Class: Yast::ReducedRecorder

Inherits:
Cheetah::DefaultRecorder
  • Object
show all
Defined in:
library/system/src/lib/yast2/execute.rb

Overview

specific recorder which can be used when some sensitive information that should not go to log

Instance Method Summary collapse

Constructor Details

#initialize(skip: [], logger: Y2Logger.instance) ⇒ ReducedRecorder

Returns a new instance of ReducedRecorder.

Parameters:

  • skip (Array<Symbol>|Symbol) (defaults to: [])

    possible symbols are :stdin, :stdout, :stderr and :args. Those streams won't be recorded.



257
258
259
260
261
262
263
264
265
266
267
268
# File 'library/system/src/lib/yast2/execute.rb', line 257

def initialize(skip: [], logger: Y2Logger.instance)
  super(logger)

  skip = Array(skip)

  skip.each do |m|
    method = PARAM_MAPPING[m]
    raise ArgumentError, "Invalid value '#{m.inspect}'" unless method

    define_singleton_method(method) { |_| } # intentionally empty
  end
end