Module: Cargosocket::StreamAdapters::CargobullAdapter
- Defined in:
- lib/cargosocket/stream_adapters/cargobull_adapter.rb
Class Method Summary collapse
- .channels(cargoenv, path, query) ⇒ Object
- .dispatch_to(m, *args) ⇒ Object
- .error(cargoenv, *args) ⇒ Object
- .if_value(value) {|value.last| ... } ⇒ Object
- .pop(cargoenv, *args) ⇒ Object
- .push(cargoenv, *args) ⇒ Object
- .reference(cargoenv, path, query) ⇒ Object
- .subscribe(cargoenv, *args) ⇒ Object
- .unsubscribe(cargoenv, *args) ⇒ Object
Class Method Details
.channels(cargoenv, path, query) ⇒ Object
14 15 16 17 18 19 |
# File 'lib/cargosocket/stream_adapters/cargobull_adapter.rb', line 14 def self.channels(cargoenv, path, query) r = dispatch_to(:call_no_transform, cargoenv, "CHANNELS", path, query) if r.first == 200 && r.last.is_a?(Array) && !r.last.empty? r.last.map(&:to_sym) end end |
.dispatch_to(m, *args) ⇒ Object
10 11 12 |
# File 'lib/cargosocket/stream_adapters/cargobull_adapter.rb', line 10 def self.dispatch_to(m, *args) Cargobull::Dispatch.send(m, *args) end |
.error(cargoenv, *args) ⇒ Object
36 37 38 |
# File 'lib/cargosocket/stream_adapters/cargobull_adapter.rb', line 36 def self.error(cargoenv, *args) if_value(dispatch_to(:call, cargoenv, "ERROR", *args), &Proc.new) end |
.if_value(value) {|value.last| ... } ⇒ Object
5 6 7 8 |
# File 'lib/cargosocket/stream_adapters/cargobull_adapter.rb', line 5 def self.if_value(value) return if value.last.nil? yield(value.last) end |
.pop(cargoenv, *args) ⇒ Object
44 45 46 |
# File 'lib/cargosocket/stream_adapters/cargobull_adapter.rb', line 44 def self.pop(cargoenv, *args) if_value(dispatch_to(:call, cargoenv, "POP", *args), &Proc.new) end |
.push(cargoenv, *args) ⇒ Object
40 41 42 |
# File 'lib/cargosocket/stream_adapters/cargobull_adapter.rb', line 40 def self.push(cargoenv, *args) if_value(dispatch_to(:call, cargoenv, "PUSH", *args), &Proc.new) end |
.reference(cargoenv, path, query) ⇒ Object
21 22 23 24 25 26 |
# File 'lib/cargosocket/stream_adapters/cargobull_adapter.rb', line 21 def self.reference(cargoenv, path, query) r = dispatch_to(:call_no_transform, cargoenv, "REFERENCE", path, query) if r.first == 200 r.last end end |
.subscribe(cargoenv, *args) ⇒ Object
28 29 30 |
# File 'lib/cargosocket/stream_adapters/cargobull_adapter.rb', line 28 def self.subscribe(cargoenv, *args) if_value(dispatch_to(:call, cargoenv, "SUBSCRIBE", *args), &Proc.new) end |
.unsubscribe(cargoenv, *args) ⇒ Object
32 33 34 |
# File 'lib/cargosocket/stream_adapters/cargobull_adapter.rb', line 32 def self.unsubscribe(cargoenv, *args) if_value(dispatch_to(:call, cargoenv, "UNSUBSCRIBE", *args), &Proc.new) end |