Class: Qup::Adapter::Kestrel

Inherits:
Qup::Adapter show all
Defined in:
lib/qup/adapter/kestrel.rb,
lib/qup/adapter/kestrel/queue.rb,
lib/qup/adapter/kestrel/topic.rb,
lib/qup/adapter/kestrel/destination.rb

Overview

Internal: The backing adapter for Qup that uses Kestrel as the messaging infrastructure

Defined Under Namespace

Classes: Destination, Queue, Topic

Instance Method Summary collapse

Methods inherited from Qup::Adapter

register

Constructor Details

#initialize(uri, options = {}) ⇒ Kestrel

Internal: Create a new Kestrel Adapter

uri - the URI instance for this adapter to use



15
16
17
18
19
20
# File 'lib/qup/adapter/kestrel.rb', line 15

def initialize( uri, options = {} )
  @uri        = uri
  @addr       = "#{@uri.host}:#{@uri.port}"
  @options    = options
  @closed     = false
end

Instance Method Details

#closeObject

Internal: Close the Kestrel adapter

Return nothing



43
44
45
# File 'lib/qup/adapter/kestrel.rb', line 43

def close
  @closed = true
end

#closed?Boolean

Internal: Is the Kestrel Adapter closed

Returns true or false

Returns:

  • (Boolean)


50
51
52
# File 'lib/qup/adapter/kestrel.rb', line 50

def closed?
  @closed
end

#queue(name) ⇒ Object

Internal: Create a new Queue from this Adapter

name - the String name of the Queue

Returns a Qup::Queue



27
28
29
# File 'lib/qup/adapter/kestrel.rb', line 27

def queue( name )
  Qup::Adapter::Kestrel::Queue.new( @addr, name )
end

#topic(name) ⇒ Object

Internal: Create a new Topic from this Adapter

name - the name of this Topic

Returns a Qup::Topic



36
37
38
# File 'lib/qup/adapter/kestrel.rb', line 36

def topic( name )
  Qup::Adapter::Kestrel::Topic.new( @addr, name )
end