Skip to content

Instantly share code, notes, and snippets.

@atombender
Last active August 29, 2015 14:02
Show Gist options
  • Save atombender/1fca75a3e2ac048350e3 to your computer and use it in GitHub Desktop.
Save atombender/1fca75a3e2ac048350e3 to your computer and use it in GitHub Desktop.
require_relative './lib/pebbles/river'
logfile = File.open("./daemontest.log", 'a')
logfile.sync = true
logger = Logger.new(logfile)
$logger = logger
Listener1 = Class.new do
def call(message)
$logger.info "message #{message.inspect}"
nil
end
end
Listener2 = Class.new do
def call(message)
$logger.info "message #{message.inspect}"
nil
end
end
adapter = Class.new do
def configure_start_command(command)
command.option :verbose, '-v', '--verbose', 'Be verbose.'
end
def on_start(options)
puts "on_start #{options.inspect}"
puts " verbose? #{options[:verbose].inspect}"
end
def configure_supervisor(supervisor)
supervisor.add_listener(Listener1.new,
name: 'daemontest1',
event: 'create|update|delete')
supervisor.add_listener(Listener2.new,
name: 'daemontest2',
event: 'create|update|delete')
end
end.new
daemon = Pebbles::River::DaemonHelper.new(adapter, logger: logger)
daemon.run
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment