Class: ChiliLogger::Values::TypeUniformizer::Desc

Inherits:
Object
  • Object
show all
Defined in:
lib/helpers/values/type_uniformizer/desc.rb

Overview

responsible for uniformizing log’s description primitive types

Instance Method Summary collapse

Constructor Details

#initializeDesc

Returns a new instance of Desc.



10
11
12
# File 'lib/helpers/values/type_uniformizer/desc.rb', line 10

def initialize
  @default = ChiliLogger::Values::Default.new
end

Instance Method Details

#action(action) ⇒ Object



45
46
47
48
49
50
# File 'lib/helpers/values/type_uniformizer/desc.rb', line 45

def action(action)
  return @default.undefined_string if action.nil?
  return @default.invalid_string unless action.is_a?(String)

  action
end

#desc(desc) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/helpers/values/type_uniformizer/desc.rb', line 14

def desc(desc)
  return {} unless desc.is_a?(Hash)

  uniformized_desc = {}
  valid_desc_attrs.each do |attr_name|
    # only overwrite if key was explicitly set in desc
    next unless desc.key?(attr_name)

    desc_attr = desc[attr_name]
    desc_attr = @default.invalid_string unless valid_desc_attr_formats.include?(desc_attr.class.name)
    desc_attr ||= @default.undefined_string # if type == nil
    uniformized_desc[attr_name] = desc_attr
  end

  uniformized_desc
end

#service(service) ⇒ Object



38
39
40
41
42
43
# File 'lib/helpers/values/type_uniformizer/desc.rb', line 38

def service(service)
  return @default.undefined_string if service.nil?
  return @default.invalid_string unless service.is_a?(String)

  service
end

#type(type) ⇒ Object



31
32
33
34
35
36
# File 'lib/helpers/values/type_uniformizer/desc.rb', line 31

def type(type)
  return @default.undefined_string if type.nil?
  return @default.invalid_string unless type.is_a?(String)

  type
end