2014-04-26 09:18:56 +00:00
|
|
|
package Meta
|
|
|
|
|
|
|
|
type Impact byte
|
|
|
|
|
|
|
|
const (
|
2015-06-17 15:44:52 +00:00
|
|
|
ImpactNone = Impact(iota) // None impact
|
|
|
|
ImpactLow = Impact(iota) // Low impact
|
|
|
|
ImpactMiddle = Impact(iota) // Middle impact
|
|
|
|
ImpactHigh = Impact(iota) // High impact
|
|
|
|
ImpactCritical = Impact(iota) // Critical impact
|
|
|
|
ImpactUnknown = Impact(iota) // Unknown impact
|
2014-04-26 09:18:56 +00:00
|
|
|
)
|
|
|
|
|
2015-06-17 15:44:52 +00:00
|
|
|
// Formats a impact as string.
|
2015-02-25 19:53:50 +00:00
|
|
|
func (pri Impact) Format() (result string) {
|
2014-04-26 09:18:56 +00:00
|
|
|
switch pri {
|
|
|
|
case ImpactCritical:
|
|
|
|
result = `I:CRITICAL`
|
|
|
|
case ImpactHigh:
|
|
|
|
result = `I:HIGH`
|
|
|
|
case ImpactLow:
|
|
|
|
result = `I:LOW`
|
|
|
|
case ImpactMiddle:
|
|
|
|
result = `I:MIDDLE`
|
|
|
|
case ImpactNone:
|
|
|
|
result = `I:NONE`
|
|
|
|
case ImpactUnknown:
|
|
|
|
result = `I:UNKNOWN`
|
|
|
|
default:
|
|
|
|
result = `I:N/A`
|
|
|
|
}
|
|
|
|
|
|
|
|
return
|
|
|
|
}
|
2015-02-25 19:53:50 +00:00
|
|
|
|
2015-06-17 15:44:52 +00:00
|
|
|
// Parse a impact from a string.
|
2015-02-25 19:53:50 +00:00
|
|
|
func ParseImpact(pri string) (value Impact) {
|
|
|
|
switch pri {
|
|
|
|
case `I:CRITICAL`:
|
|
|
|
value = ImpactCritical
|
|
|
|
case `I:HIGH`:
|
|
|
|
value = ImpactHigh
|
|
|
|
case `I:LOW`:
|
|
|
|
value = ImpactLow
|
|
|
|
case `I:MIDDLE`:
|
|
|
|
value = ImpactMiddle
|
|
|
|
case `I:NONE`:
|
|
|
|
value = ImpactNone
|
|
|
|
case `I:UNKNOWN`:
|
|
|
|
value = ImpactUnknown
|
|
|
|
default:
|
|
|
|
value = ImpactUnknown
|
|
|
|
}
|
|
|
|
|
|
|
|
return
|
|
|
|
}
|