Module: EventSystem::EventSubscriber

Defined in:
lib/event_system/event_subscriber.rb

Overview

Interface for components that respond to events Classes including this module must implement the handle_event method

Instance Method Summary collapse

Instance Method Details

#event_priorityInteger

Get the priority for this subscriber (lower numbers = higher priority) Override this method to control event handling order

Returns:

  • (Integer)

    Priority level (default: 0)



25
26
27
# File 'lib/event_system/event_subscriber.rb', line 25

def event_priority
  0
end

#handle_event(event) ⇒ void

This method returns an undefined value.

Handle an event that this subscriber is interested in

Parameters:

Raises:

  • (NotImplementedError)


10
11
12
# File 'lib/event_system/event_subscriber.rb', line 10

def handle_event(event)
  raise NotImplementedError, "#{self.class} must implement handle_event(event)"
end

#handles_event_type?(event_type) ⇒ Boolean

Check if this subscriber is interested in a specific event type Override this method to provide filtering logic

Parameters:

  • event_type (String)

    The event type to check

Returns:

  • (Boolean)

    True if this subscriber handles the event type



18
19
20
# File 'lib/event_system/event_subscriber.rb', line 18

def handles_event_type?(event_type)
  true # Default: handle all event types
end