class Atatus::Transport::Filters::HashSanitizer
Constants
- FILTERED
- KEY_FILTERS
- VALUE_FILTERS
Attributes
key_filters[RW]
Public Class Methods
new()
click to toggle source
# File lib/atatus/transport/filters/hash_sanitizer.rb, line 44 def initialize @key_filters = KEY_FILTERS end
Public Instance Methods
filter_key?(key)
click to toggle source
# File lib/atatus/transport/filters/hash_sanitizer.rb, line 67 def filter_key?(key) @key_filters.any? { |regex| regex.match(key) } end
filter_value?(value)
click to toggle source
# File lib/atatus/transport/filters/hash_sanitizer.rb, line 71 def filter_value?(value) VALUE_FILTERS.any? { |regex| regex.match(value) } end
strip_from!(obj, key_filters = KEY_FILTERS)
click to toggle source
# File lib/atatus/transport/filters/hash_sanitizer.rb, line 48 def strip_from!(obj, key_filters = KEY_FILTERS) return unless obj&.is_a?(Hash) obj.each do |k, v| if filter_key?(k) next obj[k] = FILTERED end case v when Hash strip_from!(v) when String if filter_value?(v) obj[k] = FILTERED end end end end