Module: Artsy::EventService

Defined in:
lib/artsy-eventservice/config.rb,
lib/artsy-eventservice/version.rb,
lib/artsy-eventservice/artsy/event_service.rb,
lib/artsy-eventservice/artsy/event_service/publisher.rb,
lib/artsy-eventservice/artsy/event_service/rabbitmq_connection.rb

Defined Under Namespace

Modules: Config Classes: Publisher, RabbitMQConnection

Constant Summary collapse

VERSION =
'1.0.5'

Class Method Summary collapse

Class Method Details

.configObject



39
40
41
# File 'lib/artsy-eventservice/config.rb', line 39

def config
  Config
end

.configure {|Config| ... } ⇒ Object

Yields:



34
35
36
37
# File 'lib/artsy-eventservice/config.rb', line 34

def configure
  yield(Config) if block_given?
  Config
end

.consume(**args) ⇒ Object



17
18
19
# File 'lib/artsy-eventservice/artsy/event_service.rb', line 17

def self.consume(**args)
  raise 'Not implemented- try Sneakers'
end

.event_stream_enabled?Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/artsy-eventservice/artsy/event_service.rb', line 21

def self.event_stream_enabled?
  Artsy::EventService.config.event_stream_enabled
end

.post_data(topic:, data:, routing_key: nil) ⇒ Object

Post data without an event, data must be a string.



7
8
9
10
# File 'lib/artsy-eventservice/artsy/event_service.rb', line 7

def self.post_data(topic:, data:, routing_key: nil)
  return unless event_stream_enabled?
  Publisher.publish_data(topic: topic, data: data, routing_key: routing_key)
end

.post_event(topic:, event:, routing_key: nil) ⇒ Object



12
13
14
15
# File 'lib/artsy-eventservice/artsy/event_service.rb', line 12

def self.post_event(topic:, event:, routing_key: nil)
  return unless event_stream_enabled?
  Publisher.publish_event(topic: topic, event: event, routing_key: routing_key || event.routing_key)
end