Module: Tasker::Events

Defined in:
lib/tasker.rb,
lib/tasker/events.rb,
lib/tasker/events/catalog.rb,
lib/tasker/events/publisher.rb,
lib/tasker/events/custom_registry.rb,
lib/tasker/events/definition_loader.rb,
lib/tasker/events/subscription_loader.rb,
lib/tasker/events/event_payload_builder.rb,
lib/tasker/events/subscribers/base_subscriber.rb,
lib/tasker/events/subscribers/metrics_subscriber.rb,
lib/tasker/events/subscribers/telemetry_subscriber.rb

Overview

Namespace for event system components used in Tasker

Defined Under Namespace

Modules: Subscribers Classes: Catalog, CustomRegistry, DefinitionLoader, EventPayloadBuilder, Publisher, SubscriptionLoader

Class Method Summary collapse

Class Method Details

.register_custom_event(name, description: 'Custom event', fired_by: []) ⇒ void

This method returns an undefined value.

Register a custom event

Parameters:

  • name (String)

    Event name (must contain namespace, e.g., 'order.fulfilled')

  • description (String) (defaults to: 'Custom event')

    Human-readable description

  • fired_by (Array<String>) (defaults to: [])

    Components that fire this event

Raises:

  • (ArgumentError)

    If event name is invalid or conflicts with system events



22
23
24
25
26
27
28
# File 'lib/tasker/events.rb', line 22

def register_custom_event(name, description: 'Custom event', fired_by: [])
  Tasker::Events::CustomRegistry.instance.register_event(
    name,
    description: description,
    fired_by: fired_by
  )
end