Class: StatModule::Finding

Inherits:
JSONable show all
Defined in:
lib/finding.rb

Instance Method Summary collapse

Methods inherited from JSONable

#to_json

Constructor Details

#initialize(failure, rule, description) ⇒ Finding

Returns a new instance of Finding.

Raises:



6
7
8
9
10
11
12
13
# File 'lib/finding.rb', line 6

def initialize(failure, rule, description)
  raise TypeException unless rule.is_a?(String) && description.is_a?(String)
  @failure = failure
  @rule = rule
  @description = description
  @categories = []
  @fixes = []
end

Instance Method Details

#categoriesObject



59
60
61
# File 'lib/finding.rb', line 59

def categories
  @categories
end

#categories=(categories) ⇒ Object

Raises:



50
51
52
53
54
55
56
57
# File 'lib/finding.rb', line 50

def categories=(categories)
  raise TypeException unless categories.is_a?(Array)
  categories.each { |item|
    raise TypeException unless Category.all.include?(item)
    raise DuplicateElementException if @categories.include?(item)
    @categories.push(item)
  }
end

#descriptionObject



37
38
39
# File 'lib/finding.rb', line 37

def description
  @description
end

#description=(description) ⇒ Object

Raises:



32
33
34
35
# File 'lib/finding.rb', line 32

def description=(description)
  raise TypeException unless description.is_a?(String)
  @description = description
end

#detailObject



46
47
48
# File 'lib/finding.rb', line 46

def detail
  @detail
end

#detail=(detail) ⇒ Object

Raises:



41
42
43
44
# File 'lib/finding.rb', line 41

def detail=(detail)
  raise TypeException unless detail.is_a?(StatModule::Detail)
  @detail = detail
end

#failureObject



19
20
21
# File 'lib/finding.rb', line 19

def failure
  @failure
end

#failure=(failure) ⇒ Object



15
16
17
# File 'lib/finding.rb', line 15

def failure=(failure)
  @failure = failure
end

#fixesObject



99
100
101
# File 'lib/finding.rb', line 99

def fixes
  @fixes
end

#fixes=(fixes) ⇒ Object

Raises:



90
91
92
93
94
95
96
97
# File 'lib/finding.rb', line 90

def fixes=(fixes)
  raise TypeException unless fixes.is_a?(Array)
  @fixes.each { |item|
    raise TypeException unless item.is_a?(StatModule::Fix)
    raise DuplicateElementException if @fixes.include?(item)
    @fixes.push(item)
  }
end

#locationObject



68
69
70
# File 'lib/finding.rb', line 68

def location
  @location
end

#location=(location) ⇒ Object

Raises:



63
64
65
66
# File 'lib/finding.rb', line 63

def location=(location)
  raise TypeException unless location.is_a?(Location)
  @location = location
end

#recommendationObject



86
87
88
# File 'lib/finding.rb', line 86

def recommendation
  @recommendation
end

#recommendation=(recommendation) ⇒ Object

Raises:



81
82
83
84
# File 'lib/finding.rb', line 81

def recommendation=(recommendation)
  raise TypeException unless recommendation.is_a?(String)
  @recommendation = recommendation
end

#ruleObject



28
29
30
# File 'lib/finding.rb', line 28

def rule
  @rule
end

#rule=(rule) ⇒ Object

Raises:



23
24
25
26
# File 'lib/finding.rb', line 23

def rule=(rule)
  raise TypeException unless rule.is_a?(String)
  @rule = rule
end

#time_to_fixObject



77
78
79
# File 'lib/finding.rb', line 77

def time_to_fix
  @timeToFix
end

#time_to_fix=(time_to_fix) ⇒ Object

Raises:



72
73
74
75
# File 'lib/finding.rb', line 72

def time_to_fix=(time_to_fix)
  raise TypeException unless time_to_fix.is_a?(Integer)
  @timeToFix = time_to_fix
end