Module: Karafka::Pro::Routing::Features::RecurringTasks::Topic

Defined in:
lib/karafka/pro/routing/features/recurring_tasks/topic.rb

Overview

Topic extensions to be able to check if given topic is a recurring tasks topic Please note, that this applies to both the schedules topics and reports topics

Instance Method Summary collapse

Instance Method Details

#recurring_tasks(active = false) ⇒ Object

Parameters:

  • active (Boolean) (defaults to: false)

    should this topic be considered related to recurring tasks



23
24
25
# File 'lib/karafka/pro/routing/features/recurring_tasks/topic.rb', line 23

def recurring_tasks(active = false)
  @recurring_tasks ||= Config.new(active: active)
end

#recurring_tasks?Boolean

Returns is this an ActiveJob topic.

Returns:

  • (Boolean)

    is this an ActiveJob topic



28
29
30
# File 'lib/karafka/pro/routing/features/recurring_tasks/topic.rb', line 28

def recurring_tasks?
  recurring_tasks.active?
end

#to_hHash

Returns topic with all its native configuration options plus active job namespace settings.

Returns:

  • (Hash)

    topic with all its native configuration options plus active job namespace settings



34
35
36
37
38
# File 'lib/karafka/pro/routing/features/recurring_tasks/topic.rb', line 34

def to_h
  super.merge(
    recurring_tasks: recurring_tasks.to_h
  ).freeze
end