class Pushr::Daemon::App
Attributes
apps[R]
Public Class Methods
load()
click to toggle source
# File lib/pushr/daemon/app.rb, line 9 def load @apps = Pushr::Configuration.all.keep_if { |c| c.enabled == true }.map { |c| App.new(c) } end
new(config)
click to toggle source
# File lib/pushr/daemon/app.rb, line 26 def initialize(config) @config = config @handlers = [] @provider = nil end
start()
click to toggle source
# File lib/pushr/daemon/app.rb, line 17 def start @apps.map(&:start) end
stop()
click to toggle source
# File lib/pushr/daemon/app.rb, line 21 def stop @apps.map(&:stop) end
total_connections()
click to toggle source
# File lib/pushr/daemon/app.rb, line 13 def total_connections @apps.map(&:connections).inject(0, :+) end
Public Instance Methods
connections()
click to toggle source
# File lib/pushr/daemon/app.rb, line 32 def connections @config.connections end
start()
click to toggle source
# File lib/pushr/daemon/app.rb, line 36 def start @provider = load_provider(@config.name, @config) @provider.start end
stop()
click to toggle source
# File lib/pushr/daemon/app.rb, line 41 def stop @provider.stop end
Protected Instance Methods
load_provider(klass, options)
click to toggle source
# File lib/pushr/daemon/app.rb, line 47 def load_provider(klass, options) begin middleware = Pushr::Daemon.const_get("#{klass}".camelize) rescue NameError message = "Could not find matching push provider for #{klass.inspect}. " \ "You may need to install an additional gem (such as pushr-#{klass})." raise LoadError, message end middleware.new(options) end