Module: Rapns::Daemon
- Defined in:
- lib/rapns/daemon.rb,
lib/rapns/daemon/feeder.rb,
lib/rapns/daemon/delivery.rb,
lib/rapns/daemon/app_runner.rb,
lib/rapns/daemon/reflectable.rb,
lib/rapns/daemon/gcm/delivery.rb,
lib/rapns/daemon/apns/delivery.rb,
lib/rapns/daemon/delivery_queue.rb,
lib/rapns/daemon/gcm/app_runner.rb,
lib/rapns/daemon/apns/app_runner.rb,
lib/rapns/daemon/apns/connection.rb,
lib/rapns/daemon/delivery_handler.rb,
lib/rapns/daemon/delivery_queue_18.rb,
lib/rapns/daemon/delivery_queue_19.rb,
lib/rapns/daemon/interruptible_sleep.rb,
lib/rapns/daemon/store/active_record.rb,
lib/rapns/daemon/gcm/delivery_handler.rb,
lib/rapns/daemon/apns/delivery_handler.rb,
lib/rapns/daemon/apns/feedback_receiver.rb,
lib/rapns/daemon/store/active_record/reconnectable.rb
Defined Under Namespace
Modules: Apns, Gcm, InterruptibleSleep, Reflectable, Store
Classes: AppRunner, Delivery, DeliveryHandler, DeliveryQueue, DeliveryQueue18, DeliveryQueue19, Feeder
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.store ⇒ Object
Returns the value of attribute store.
31
32
33
|
# File 'lib/rapns/daemon.rb', line 31
def store
@store
end
|
Class Method Details
.initialize_store ⇒ Object
58
59
60
61
62
63
64
65
66
67
68
|
# File 'lib/rapns/daemon.rb', line 58
def self.initialize_store
return if store
begin
require "rapns/daemon/store/#{Rapns.config.store}"
klass = "Rapns::Daemon::Store::#{Rapns.config.store.to_s.camelcase}".constantize
self.store = klass.new
rescue StandardError, LoadError => e
Rapns.logger.error("Failed to load '#{Rapns.config.store}' storage backend.")
Rapns.logger.error(e)
end
end
|
.shutdown(quiet = false) ⇒ Object
51
52
53
54
55
56
|
# File 'lib/rapns/daemon.rb', line 51
def self.shutdown(quiet = false)
puts "\nShutting down..." unless quiet
Feeder.stop
AppRunner.stop
delete_pid_file
end
|
.start ⇒ Object
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
# File 'lib/rapns/daemon.rb', line 34
def self.start
setup_signal_traps if trap_signals?
initialize_store
return unless store
if daemonize?
daemonize
store.after_daemonize
end
write_pid_file
Upgraded.check(:exit => true)
AppRunner.sync
Feeder.start
end
|