Class: Rufus::Scheduler::Win32::Service

Inherits:
Object
  • Object
show all
Defined in:
lib/rufus/scheduler/win32/service.rb,
lib/rufus/scheduler/win32/service/version.rb

Overview

Service wrapper around rufus-scheduler

Constant Summary collapse

VERSION =
'0.0.1'

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#loggerObject



53
54
55
# File 'lib/rufus/scheduler/win32/service.rb', line 53

def logger
  @logger ||= Logger.new(STDOUT)
end

Instance Method Details

#schedulerObject



49
50
51
# File 'lib/rufus/scheduler/win32/service.rb', line 49

def scheduler
  @scheduler ||= Rufus::Scheduler.new
end

#service_mainObject



16
17
18
19
20
21
22
23
# File 'lib/rufus/scheduler/win32/service.rb', line 16

def service_main
  logger.info 'Running Main Loop'
  while scheduler.up?
    logger.debug 'Still Running'
    sleep 10
  end
  logger.info 'Scheduler down. Exiting main loop'
end

#service_pauseObject



33
34
35
36
37
38
39
# File 'lib/rufus/scheduler/win32/service.rb', line 33

def service_pause
  logger.info 'Pausing scheduler service'

  scheduler.pause unless scheduler.paused?

  logger.info 'Paused scheduler service'
end

#service_resumeObject



41
42
43
44
45
46
47
# File 'lib/rufus/scheduler/win32/service.rb', line 41

def service_resume
  logger.info 'Resuming scheduler service'

  scheduler.resume if scheduler.paused?

  logger.info 'Resumed scheduler service'
end

#service_stopObject



25
26
27
28
29
30
31
# File 'lib/rufus/scheduler/win32/service.rb', line 25

def service_stop
  logger.info 'Stopping scheduler service'

  scheduler.shutdown(:wait)

  logger.info 'Service stopped'
end