Class: Kanal::Plugins::BatteriesBridge::BatteriesBridgePlugin
- Inherits:
-
Core::Plugins::Plugin
- Object
- Core::Plugins::Plugin
- Kanal::Plugins::BatteriesBridge::BatteriesBridgePlugin
- Includes:
- Core::Logging, Bridges
- Defined in:
- lib/kanal/plugins/batteries_bridge/batteries_bridge_plugin.rb
Overview
Plugin registers all needed hooks to process
Instance Method Summary collapse
-
#add_bridge(bridge) ⇒ BatteriesBridgePlugin
<description>.
-
#add_telegram ⇒ BatteriesBridgePlugin
<Description>.
-
#fail_loud ⇒ void
When bridge converter raises an error, raise it instead of swallowing (logs will be written in both cases).
-
#initialize ⇒ BatteriesBridgePlugin
constructor
A new instance of BatteriesBridgePlugin.
- #name ⇒ Object
-
#setup(core) ⇒ void
<description>.
Constructor Details
#initialize ⇒ BatteriesBridgePlugin
Returns a new instance of BatteriesBridgePlugin.
16 17 18 19 20 21 |
# File 'lib/kanal/plugins/batteries_bridge/batteries_bridge_plugin.rb', line 16 def initialize super @bridges = [] @fail_gracefully = true end |
Instance Method Details
#add_bridge(bridge) ⇒ BatteriesBridgePlugin
Returns <description>.
32 33 34 35 36 37 38 39 40 41 |
# File 'lib/kanal/plugins/batteries_bridge/batteries_bridge_plugin.rb', line 32 def add_bridge(bridge) raise "bridge should be instance of a Bridge class" unless bridge.is_a? Bridge return if @bridges.include? bridge bridge.fail_gracefully = @fail_gracefully @bridges << bridge self end |
#add_telegram ⇒ BatteriesBridgePlugin
<Description>
57 58 59 60 |
# File 'lib/kanal/plugins/batteries_bridge/batteries_bridge_plugin.rb', line 57 def add_telegram add_bridge TelegramBridge.new self end |
#fail_loud ⇒ void
This method returns an undefined value.
When bridge converter raises an error, raise it instead of swallowing (logs will be written in both cases)
48 49 50 |
# File 'lib/kanal/plugins/batteries_bridge/batteries_bridge_plugin.rb', line 48 def fail_loud @fail_gracefully = false end |
#name ⇒ Object
23 24 25 |
# File 'lib/kanal/plugins/batteries_bridge/batteries_bridge_plugin.rb', line 23 def name :batteries_bridge end |
#setup(core) ⇒ void
This method returns an undefined value.
Returns <description>.
67 68 69 70 71 72 73 74 75 |
# File 'lib/kanal/plugins/batteries_bridge/batteries_bridge_plugin.rb', line 67 def setup(core) unless core.plugin_registered? :batteries raise "[Kanal::Plugins::BatteriesBridge::BatteriesBridgePlugin]: cannot register plugin because :batteries plugin is not (maybe yet) registered in the core. It is required" end @bridges.each do |b| b.send("internal_setup", core.hooks) end end |