Class: SoarAuditorApi::AuditorAPI
- Inherits:
-
Object
- Object
- SoarAuditorApi::AuditorAPI
- Defined in:
- lib/soar_auditor_api/auditor_api.rb
Constant Summary collapse
- AUDIT_LEVELS =
[:debug, :info, :warn, :error, :fatal]
- DEFAULT_AUDIT_LEVEL =
:info
Instance Method Summary collapse
- #<<(data) ⇒ Object
-
#audit(data) ⇒ Object
Safety to ensure that the Auditor that extends this API implements this IOC method.
-
#configuration_is_valid?(configuration) ⇒ Boolean
Safety to ensure that the Auditor that extends this API implements this IOC method.
- #configure(configuration = nil) ⇒ Object
- #debug(data) ⇒ Object
- #error(data) ⇒ Object
- #fatal(data) ⇒ Object
- #info(data) ⇒ Object
-
#initialize ⇒ AuditorAPI
constructor
A new instance of AuditorAPI.
- #set_audit_level(minimum_audit_level) ⇒ Object
- #warn(data) ⇒ Object
Constructor Details
#initialize ⇒ AuditorAPI
Returns a new instance of AuditorAPI.
6 7 8 9 |
# File 'lib/soar_auditor_api/auditor_api.rb', line 6 def initialize @configuration = nil @minimum_audit_level = DEFAULT_AUDIT_LEVEL end |
Instance Method Details
#<<(data) ⇒ Object
25 26 27 |
# File 'lib/soar_auditor_api/auditor_api.rb', line 25 def <<(data) audit(data.to_s) if audit_filtered_out?(:info) end |
#audit(data) ⇒ Object
Safety to ensure that the Auditor that extends this API implements this IOC method
51 52 53 |
# File 'lib/soar_auditor_api/auditor_api.rb', line 51 def audit(data) raise NotImplementedError, "Class must implement audit method in Auditor extending the API" end |
#configuration_is_valid?(configuration) ⇒ Boolean
Safety to ensure that the Auditor that extends this API implements this IOC method
46 47 48 |
# File 'lib/soar_auditor_api/auditor_api.rb', line 46 def configuration_is_valid?(configuration) raise NotImplementedError, "Class must implement configuration_is_valid? method in Auditor extending the API" end |
#configure(configuration = nil) ⇒ Object
11 12 13 14 |
# File 'lib/soar_auditor_api/auditor_api.rb', line 11 def configure(configuration = nil) raise ArgumentError, "Invalid configuration provided" unless configuration_is_valid?(configuration) @configuration = configuration end |
#debug(data) ⇒ Object
21 22 23 |
# File 'lib/soar_auditor_api/auditor_api.rb', line 21 def debug(data) audit(data.to_s) if audit_filtered_out?(:debug) end |
#error(data) ⇒ Object
37 38 39 |
# File 'lib/soar_auditor_api/auditor_api.rb', line 37 def error(data) audit(data.to_s) if audit_filtered_out?(:error) end |
#fatal(data) ⇒ Object
41 42 43 |
# File 'lib/soar_auditor_api/auditor_api.rb', line 41 def fatal(data) audit(data.to_s) if audit_filtered_out?(:fatal) end |
#info(data) ⇒ Object
29 30 31 |
# File 'lib/soar_auditor_api/auditor_api.rb', line 29 def info(data) audit(data.to_s) if audit_filtered_out?(:info) end |
#set_audit_level(minimum_audit_level) ⇒ Object
16 17 18 19 |
# File 'lib/soar_auditor_api/auditor_api.rb', line 16 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) ⇒ Object
33 34 35 |
# File 'lib/soar_auditor_api/auditor_api.rb', line 33 def warn(data) audit(data.to_s) if audit_filtered_out?(:warn) end |