Class: Legion::Extensions::Llm::Gemini::Transport::Messages::RegistryEvent

Inherits:
Transport::Message
  • Object
show all
Defined in:
lib/legion/extensions/llm/gemini/transport/messages/registry_event.rb

Overview

Publishes lex-llm RegistryEvent envelopes to the llm.registry exchange.

Instance Method Summary collapse

Constructor Details

#initialize(event:, **options) ⇒ RegistryEvent

Returns a new instance of RegistryEvent.



13
14
15
# File 'lib/legion/extensions/llm/gemini/transport/messages/registry_event.rb', line 13

def initialize(event:, **options)
  super(**event.to_h.merge(options))
end

Instance Method Details

#app_idObject



29
30
31
# File 'lib/legion/extensions/llm/gemini/transport/messages/registry_event.rb', line 29

def app_id
  @options[:app_id] || RegistryPublisher::APP_ID
end

#exchangeObject



17
18
19
# File 'lib/legion/extensions/llm/gemini/transport/messages/registry_event.rb', line 17

def exchange
  Transport::Exchanges::LlmRegistry
end

#persistentObject

rubocop:disable Naming/PredicateMethod



33
34
35
# File 'lib/legion/extensions/llm/gemini/transport/messages/registry_event.rb', line 33

def persistent # rubocop:disable Naming/PredicateMethod
  false
end

#routing_keyObject



21
22
23
# File 'lib/legion/extensions/llm/gemini/transport/messages/registry_event.rb', line 21

def routing_key
  @options[:routing_key] || "llm.registry.#{@options.fetch(:event_type)}"
end

#typeObject



25
26
27
# File 'lib/legion/extensions/llm/gemini/transport/messages/registry_event.rb', line 25

def type
  'llm.registry.event'
end