Class: Core::Server
Overview
actual server manager
Constant Summary collapse
Instance Method Summary collapse
- #register_worker(klass) ⇒ Object
- #start ⇒ Object
- #start_workers ⇒ Object
- #stop ⇒ Object
- #stop_workers ⇒ Object
Instance Method Details
#register_worker(klass) ⇒ Object
21 22 23 24 |
# File 'lib/svcbase/server.rb', line 21 def register_worker(klass) log.info('server') { "Registered server worker #{klass}" } @workers << klass end |
#start ⇒ Object
42 43 44 45 46 47 48 |
# File 'lib/svcbase/server.rb', line 42 def start log.info('server') { "Server #{ID} starting" } log.info('server') { "Commit: #{Core::Version::ID}" } log.info('server') { "Tag: #{Core::Version::TAG}" } start_workers end |
#start_workers ⇒ Object
26 27 28 29 30 31 32 |
# File 'lib/svcbase/server.rb', line 26 def start_workers @workers.each do |inst| inst.worker_start rescue StandardError => e log.fatal('server') { ["ERROR in worker #{inst}", e] } end end |
#stop ⇒ Object
50 51 52 53 54 55 56 |
# File 'lib/svcbase/server.rb', line 50 def stop log.info('server') { "Server #{ID} stopping" } stop_workers log.info('server') { "Server #{ID} stopped" } end |
#stop_workers ⇒ Object
34 35 36 37 38 39 40 |
# File 'lib/svcbase/server.rb', line 34 def stop_workers @workers.each do |inst| inst.worker_stop rescue StandardError => e log.fatal('server') { ["ERROR in worker #{inst}", e] } end end |