class Violation

Rule definition for violations

Attributes

line_numbers[R]
logical_resource_ids[R]

Public Class Methods

count_failures(violations) click to toggle source
# File lib/cfn-nag/violation.rb, line 47
def count_failures(violations)
  violations.inject(0) do |count, violation|
    if violation.type == Violation::FAILING_VIOLATION
      count += if empty?(violation.logical_resource_ids)
                 1
               else
                 violation.logical_resource_ids.size
               end
    end
    count
  end
end
count_warnings(violations) click to toggle source
# File lib/cfn-nag/violation.rb, line 34
def count_warnings(violations)
  violations.inject(0) do |count, violation|
    if violation.type == Violation::WARNING
      count += if empty?(violation.logical_resource_ids)
                 1
               else
                 violation.logical_resource_ids.size
               end
    end
    count
  end
end
new(id:, type:, message:, logical_resource_ids: [], line_numbers: []) click to toggle source
Calls superclass method RuleDefinition::new
# File lib/cfn-nag/violation.rb, line 9
def initialize(id:,
               type:,
               message:,
               logical_resource_ids: [],
               line_numbers: [])
  super id: id,
        type: type,
        message: message

  @logical_resource_ids = logical_resource_ids
  @line_numbers = line_numbers
end

Private Class Methods

empty?(array) click to toggle source
# File lib/cfn-nag/violation.rb, line 62
def empty?(array)
  array.nil? || array.empty?
end

Public Instance Methods

to_h() click to toggle source
Calls superclass method RuleDefinition#to_h
# File lib/cfn-nag/violation.rb, line 26
def to_h
  super.to_h.merge(
    logical_resource_ids: @logical_resource_ids,
    line_numbers: @line_numbers
  )
end
to_s() click to toggle source
# File lib/cfn-nag/violation.rb, line 22
def to_s
  "#{super} #{@logical_resource_ids}"
end