Module: LiteCable::BroadcastAdapters
- Defined in:
- lib/lite_cable/broadcast_adapters.rb,
lib/lite_cable/broadcast_adapters/base.rb,
lib/lite_cable/broadcast_adapters/memory.rb,
lib/lite_cable/broadcast_adapters/any_cable.rb
Overview
:nodoc:
Defined Under Namespace
Classes: AnyCable, Base, Memory
Class Method Summary collapse
Class Method Details
.lookup_adapter(args) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/lite_cable/broadcast_adapters.rb', line 9 def lookup_adapter(args) adapter, = Array(args) path_to_adapter = "lite_cable/broadcast_adapters/#{adapter}" adapter_class_name = adapter.to_s.split("_").map(&:capitalize).join unless BroadcastAdapters.const_defined?(adapter_class_name, false) begin require path_to_adapter rescue LoadError => e # We couldn't require the adapter itself. if e.path == path_to_adapter raise e.class, "Couldn't load the '#{adapter}' broadcast adapter for LiteCable", e.backtrace # Bubbled up from the adapter require. else raise e.class, "Error loading the '#{adapter}' broadcast adapter for LiteCable", e.backtrace end end end BroadcastAdapters.const_get(adapter_class_name, false).new(**( || {})) end |