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

Inherits:
Transport::Message
  • Object
show all
Includes:
Logging::Helper
Defined in:
lib/legion/extensions/llm/vertex/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.



15
16
17
# File 'lib/legion/extensions/llm/vertex/transport/messages/registry_event.rb', line 15

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

Instance Method Details

#app_idObject



31
32
33
# File 'lib/legion/extensions/llm/vertex/transport/messages/registry_event.rb', line 31

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

#exchangeObject



19
20
21
# File 'lib/legion/extensions/llm/vertex/transport/messages/registry_event.rb', line 19

def exchange
  Transport::Exchanges::LlmRegistry
end

#persistentObject

rubocop:disable Naming/PredicateMethod



35
36
37
# File 'lib/legion/extensions/llm/vertex/transport/messages/registry_event.rb', line 35

def persistent # rubocop:disable Naming/PredicateMethod
  false
end

#routing_keyObject



23
24
25
# File 'lib/legion/extensions/llm/vertex/transport/messages/registry_event.rb', line 23

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

#typeObject



27
28
29
# File 'lib/legion/extensions/llm/vertex/transport/messages/registry_event.rb', line 27

def type
  'llm.registry.event'
end