Module: Zhong

Defined in:
lib/zhong.rb,
lib/zhong/at.rb,
lib/zhong/job.rb,
lib/zhong/web.rb,
lib/zhong/every.rb,
lib/zhong/version.rb,
lib/zhong/scheduler.rb,
lib/zhong/web_helpers.rb

Defined Under Namespace

Modules: WebHelpers Classes: At, Every, Job, MultiAt, Scheduler, Web

Constant Summary collapse

VERSION =
"0.1.5"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.loggerObject



42
43
44
45
46
# File 'lib/zhong.rb', line 42

def self.logger
  @logger ||= Logger.new(STDOUT).tap do |logger|
    logger.formatter = -> (_, datetime, _, msg) { "#{datetime}: #{msg}\n" }
  end
end

.redisObject



48
49
50
# File 'lib/zhong.rb', line 48

def self.redis
  @redis ||= Redis.new(url: ENV["REDIS_URL"])
end

.tzObject

Returns the value of attribute tz.



19
20
21
# File 'lib/zhong.rb', line 19

def tz
  @tz
end

Class Method Details

.jobsObject



38
39
40
# File 'lib/zhong.rb', line 38

def self.jobs
  scheduler.jobs
end

.schedule(&block) ⇒ Object



22
23
24
# File 'lib/zhong.rb', line 22

def self.schedule(&block)
  scheduler.instance_eval(&block) if block_given?
end

.schedulerObject



34
35
36
# File 'lib/zhong.rb', line 34

def self.scheduler
  @scheduler ||= Scheduler.new(logger: logger, redis: redis, tz: tz)
end

.startObject



26
27
28
# File 'lib/zhong.rb', line 26

def self.start
  scheduler.start
end

.stopObject



30
31
32
# File 'lib/zhong.rb', line 30

def self.stop
  scheduler.stop
end