Class: Legion::Extensions::Knowledge::Actor::MaintenanceRunner

Inherits:
Actors::Every
  • Object
show all
Includes:
Logging::Helper, Settings::Helper
Defined in:
lib/legion/extensions/knowledge/actors/maintenance_runner.rb

Overview

rubocop:disable Legion/Extension/EveryActorRequiresTime

Instance Method Summary collapse

Instance Method Details

#argsObject



32
33
34
35
36
37
38
# File 'lib/legion/extensions/knowledge/actors/maintenance_runner.rb', line 32

def args
  path = corpus_path
  return { path: path } if path && !path.empty?

  monitors = Runners::Monitor.resolve_monitors
  monitors.any? ? { path: monitors.first[:path] } : { path: nil }
end

#check_subtask?Boolean

Returns:

  • (Boolean)


13
# File 'lib/legion/extensions/knowledge/actors/maintenance_runner.rb', line 13

def check_subtask?  = false

#enabled?Boolean

rubocop:disable Legion/Extension/ActorEnabledSideEffects

Returns:

  • (Boolean)


23
24
25
26
27
28
29
30
# File 'lib/legion/extensions/knowledge/actors/maintenance_runner.rb', line 23

def enabled? # rubocop:disable Legion/Extension/ActorEnabledSideEffects
  return true if corpus_path && !corpus_path.empty?

  Runners::Monitor.resolve_monitors.any?
rescue StandardError => e
  handle_exception(e, level: :warn, operation: 'knowledge.maintenance_runner.enabled')
  false
end

#generate_task?Boolean

Returns:

  • (Boolean)


14
# File 'lib/legion/extensions/knowledge/actors/maintenance_runner.rb', line 14

def generate_task?  = false

#runner_classObject



11
# File 'lib/legion/extensions/knowledge/actors/maintenance_runner.rb', line 11

def runner_class    = 'Legion::Extensions::Knowledge::Runners::Maintenance'

#runner_functionObject



12
# File 'lib/legion/extensions/knowledge/actors/maintenance_runner.rb', line 12

def runner_function = 'health'

#timeObject



16
17
18
19
20
21
# File 'lib/legion/extensions/knowledge/actors/maintenance_runner.rb', line 16

def time
  settings[:actors][:maintenance_interval]
rescue StandardError => e
  handle_exception(e, level: :warn, operation: 'knowledge.maintenance_runner.time')
  21_600
end