Class: RemoteService::Connector::Nats

Inherits:
Object
  • Object
show all
Defined in:
lib/remote_service/connector/nats.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(brokers:) ⇒ Nats

Returns a new instance of Nats.



8
9
10
# File 'lib/remote_service/connector/nats.rb', line 8

def initialize(brokers:)
  @brokers = brokers
end

Instance Attribute Details

#brokersObject (readonly)

Returns the value of attribute brokers.



6
7
8
# File 'lib/remote_service/connector/nats.rb', line 6

def brokers
  @brokers
end

Instance Method Details

#publish(to_queue, message) ⇒ Object



21
22
23
# File 'lib/remote_service/connector/nats.rb', line 21

def publish(to_queue, message)
  NATS.publish(to_queue, message)
end

#request(to_queue, message, &block) ⇒ Object



25
26
27
# File 'lib/remote_service/connector/nats.rb', line 25

def request(to_queue, message, &block)
  NATS.request(to_queue, message, &block)
end

#start(&block) ⇒ Object



12
13
14
15
# File 'lib/remote_service/connector/nats.rb', line 12

def start(&block)
  return connection_thread if !block_given?
  connect(&block)
end

#stopObject



17
18
19
# File 'lib/remote_service/connector/nats.rb', line 17

def stop
  NATS.stop
end

#subscribe(service_queue, &block) ⇒ Object



29
30
31
# File 'lib/remote_service/connector/nats.rb', line 29

def subscribe(service_queue, &block)
  NATS.subscribe(service_queue, queue: service_queue, &block)
end