Class: OnStomp::Components::Scopes::ReceiptScope

Inherits:
Object
  • Object
show all
Includes:
Interfaces::FrameMethods
Defined in:
lib/onstomp/components/scopes/receipt_scope.rb

Overview

Adds a receipt callback to all receipt-able frames generated on this scope

Instance Attribute Summary (collapse)

Instance Method Summary (collapse)

Methods included from Interfaces::FrameMethods

#abort, #ack, #beat, #begin, #commit, #disconnect, #nack, #send, #subscribe, #unsubscribe

Constructor Details

- (ReceiptScope) initialize(callback, client)

A new instance of ReceiptScope



9
10
11
12
13
# File 'lib/onstomp/components/scopes/receipt_scope.rb', line 9

def initialize callback, client
  @callback = callback
  @client = client
  @connection = client.connection
end

Instance Attribute Details

- (Object) callback (readonly)

Returns the value of attribute callback



7
8
9
# File 'lib/onstomp/components/scopes/receipt_scope.rb', line 7

def callback
  @callback
end

- (Object) client (readonly)

Returns the value of attribute client



7
8
9
# File 'lib/onstomp/components/scopes/receipt_scope.rb', line 7

def client
  @client
end

- (Object) connection (readonly)

Returns the value of attribute connection



7
8
9
# File 'lib/onstomp/components/scopes/receipt_scope.rb', line 7

def connection
  @connection
end

Instance Method Details

- (OnStomp::Components::Frame) transmit(frame, cbs = {})

Wraps OnStomp::Client#transmit, applying the #callback as a receipt handler for all frames before they are sent to the broker.

Parameters:

Returns:

See Also:



21
22
23
24
# File 'lib/onstomp/components/scopes/receipt_scope.rb', line 21

def transmit frame, cbs={}
  cbs[:receipt] ||= callback
  client.transmit frame, cbs
end