Class: Dap::Filter::FilterExtractHostname

Inherits:
Object
  • Object
show all
Includes:
BaseDecoder
Defined in:
lib/dap/filter/names.rb

Instance Attribute Summary

Attributes included from Base

#name, #opts

Instance Method Summary collapse

Methods included from BaseDecoder

#process

Methods included from Base

#process

Constructor Details

#initialize(*args) ⇒ FilterExtractHostname

Returns a new instance of FilterExtractHostname.



11
12
13
14
# File 'lib/dap/filter/names.rb', line 11

def initialize(*args)
  @valid_fqdns = IO.readlines(VALID_FQDNS_FILE).map(&:rstrip).map(&:downcase)
  super(*args)
end

Instance Method Details

#decode(data) ⇒ Object



16
17
18
19
20
21
22
23
# File 'lib/dap/filter/names.rb', line 16

def decode(data)
  data = data.strip.gsub(/.*\@/, '').gsub(/^\*+/, '').gsub(/^\.+/, '').gsub(/\.+$/, '').downcase
  return unless data =~ MATCH_FQDN

  return unless @valid_fqdns.include?(data.split('.').last)

  { 'hostname' => data }
end