Sha256: 1a70049d51eb1c9d85eb9ec1a325e971064484725cd058b4043ce20d14f2f3e4

Contents?: true

Size: 1 KB

Versions: 2

Compression:

Stored size: 1 KB

Contents

module Mack
  module Logging # :nodoc:
    
    # Used to house a list of filters for parameter logging. The initial list
    # includes password and password_confirmation
    class Filter
      include Singleton
    
      # The list of parameters you want filtered for logging.
      attr_reader :list
    
      def initialize
        @list = [:password, :password_confirmation]
      end
    
      # Adds 'n' number of parameter names to the list
      def add(*args)
        @list << args
        @list.flatten!
      end
    
      # Removes 'n' number of parameter names from the list
      def remove(*args)
        @list = (@list - args)
      end
    
      class << self
      
        def remove(*args)
          Mack::Logging::Filter.instance.remove(*args)
        end
      
        def add(*args)
          Mack::Logging::Filter.instance.add(*args)
        end
      
        def list
          Mack::Logging::Filter.instance.list
        end
      
      end
    
    end # Filter
  end # Logging
end # Mack

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
mack-0.8.3 lib/mack/boot/logging/filter.rb
mack-0.8.3.1 lib/mack/boot/logging/filter.rb