class SoarAuditorApi::AuditorAPI
Constants
- AUDIT_LEVELS
- DEFAULT_AUDIT_LEVEL
Public Class Methods
new(configuration = nil)
click to toggle source
# File lib/soar_auditor_api/auditor_api.rb, line 6 def initialize(configuration = nil) @minimum_audit_level = DEFAULT_AUDIT_LEVEL configure(configuration) if configuration end
Public Instance Methods
<<(data)
click to toggle source
# File lib/soar_auditor_api/auditor_api.rb, line 26 def <<(data) audit(data.to_s) if audit_filtered_out?(:info) end
audit(data)
click to toggle source
Safety to ensure that the Auditor that extends this API implements this IOC method
# File lib/soar_auditor_api/auditor_api.rb, line 52 def audit(data) raise NotImplementedError, "Class must implement audit method in Auditor extending the API" end
configuration_is_valid?(configuration)
click to toggle source
Safety to ensure that the Auditor that extends this API implements this IOC method
# File lib/soar_auditor_api/auditor_api.rb, line 47 def configuration_is_valid?(configuration) raise NotImplementedError, "Class must implement configuration_is_valid? method in Auditor extending the API" end
configure(configuration = nil)
click to toggle source
# File lib/soar_auditor_api/auditor_api.rb, line 11 def configure(configuration = nil) raise ArgumentError, "Invalid configuration provided" unless configuration_is_valid?(configuration) prefer_direct_call? @configuration = configuration end
debug(data)
click to toggle source
# File lib/soar_auditor_api/auditor_api.rb, line 22 def debug(data) audit(data.to_s) if audit_filtered_out?(:debug) end
error(data)
click to toggle source
# File lib/soar_auditor_api/auditor_api.rb, line 38 def error(data) audit(data.to_s) if audit_filtered_out?(:error) end
fatal(data)
click to toggle source
# File lib/soar_auditor_api/auditor_api.rb, line 42 def fatal(data) audit(data.to_s) if audit_filtered_out?(:fatal) end
info(data)
click to toggle source
# File lib/soar_auditor_api/auditor_api.rb, line 30 def info(data) audit(data.to_s) if audit_filtered_out?(:info) end
prefer_direct_call?()
click to toggle source
# File lib/soar_auditor_api/auditor_api.rb, line 56 def prefer_direct_call? raise NotImplementedError, "Class must implement prefer_direct_call? method in Auditor extending the API" end
set_audit_level(minimum_audit_level)
click to toggle source
# File lib/soar_auditor_api/auditor_api.rb, line 17 def set_audit_level(minimum_audit_level) raise ArgumentError, "Invalid audit level specified" unless AUDIT_LEVELS.include?(minimum_audit_level) @minimum_audit_level = minimum_audit_level end
warn(data)
click to toggle source
# File lib/soar_auditor_api/auditor_api.rb, line 34 def warn(data) audit(data.to_s) if audit_filtered_out?(:warn) end
Private Instance Methods
audit_filtered_out?(audit_level)
click to toggle source
# File lib/soar_auditor_api/auditor_api.rb, line 62 def audit_filtered_out?(audit_level) return AUDIT_LEVELS.index(@minimum_audit_level) <= AUDIT_LEVELS.index(audit_level) end