Class: Legion::Extensions::Synapse::Actor::Decay

Inherits:
Actors::Every
  • Object
show all
Defined in:
lib/legion/extensions/synapse/actors/decay.rb

Instance Method Summary collapse

Instance Method Details

#action(**_opts) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/legion/extensions/synapse/actors/decay.rb', line 14

def action(**_opts)
  return { status: :skipped, reason: :no_data } unless defined?(Legion::Data)

  Data::Model.define_synapse_model
  decayed = 0

  Data::Model::Synapse.where(status: 'active').each do |synapse|
    new_conf = Helpers::Confidence.decay(synapse.confidence, hours: 1)
    next if new_conf == synapse.confidence

    synapse.update(confidence: new_conf)
    decayed += 1
  end

  { decayed: decayed }
end

#check_subtask?Boolean

Returns:

  • (Boolean)


11
# File 'lib/legion/extensions/synapse/actors/decay.rb', line 11

def check_subtask? = false

#generate_task?Boolean

Returns:

  • (Boolean)


12
# File 'lib/legion/extensions/synapse/actors/decay.rb', line 12

def generate_task? = false

#runner_classObject



8
# File 'lib/legion/extensions/synapse/actors/decay.rb', line 8

def runner_class = self.class

#timeObject



9
# File 'lib/legion/extensions/synapse/actors/decay.rb', line 9

def time = 3600

#use_runner?Boolean

Returns:

  • (Boolean)


10
# File 'lib/legion/extensions/synapse/actors/decay.rb', line 10

def use_runner? = false