Sha256: 7489edf4f2b865329447da95ea90dd178afed8db8e1ecbc5d4e1ae18916f3e1f
Contents?: true
Size: 1001 Bytes
Versions: 1
Compression:
Stored size: 1001 Bytes
Contents
# frozen_string_literal: true require_relative './filter.rb' require_relative '../../device.rb' module Fusuma module Plugin module Filters # Filter device log class LibinputDeviceFilter < Filter DEFAULT_SOURCE = 'libinput_command_input' def config_param_types { source: String, keep_device_names: [Array, String] } end def keep?(record) keep_device_ids.any? { |device_id| record.to_s =~ /^\s?#{device_id}/ } end private # @return [Array] def keep_device_ids @keep_device_ids ||= Device.all.select do |device| keep_device_names.any? { |name| device.name.match(name) } end.map(&:id) end # @return [Array] def keep_device_names Array(config_params(:keep_device_names)).tap do |names| break Device.all.map(&:name) if names.empty? end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fusuma-1.2 | lib/fusuma/plugin/filters/libinput_device_filter.rb |