Class: Kaal::EnabledEntryEnumerator

Inherits:
Object
  • Object
show all
Defined in:
lib/kaal/core/enabled_entry_enumerator.rb

Overview

Enumerates scheduler entries from persisted definitions or the in-memory registry.

Instance Method Summary collapse

Constructor Details

#initialize(configuration:, registry:, definition_registry_provider: -> { Kaal.definition_registry }) ⇒ EnabledEntryEnumerator

Returns a new instance of EnabledEntryEnumerator.



10
11
12
13
14
# File 'lib/kaal/core/enabled_entry_enumerator.rb', line 10

def initialize(configuration:, registry:, definition_registry_provider: -> { Kaal.definition_registry })
  @configuration = configuration
  @registry = registry
  @definition_registry_provider = definition_registry_provider
end

Instance Method Details

#eachObject



16
17
18
19
20
21
# File 'lib/kaal/core/enabled_entry_enumerator.rb', line 16

def each(&)
  resolve_entries.each(&)
rescue StandardError => e
  @configuration.logger&.warn("Failed to iterate enabled definitions: #{e.message}")
  yield_registry_entries(&)
end