Sha256: 8ba49799cb74357d117ee6090fc02a100ad221730652aad43e08be345b577e08
Contents?: true
Size: 926 Bytes
Versions: 9
Compression:
Stored size: 926 Bytes
Contents
module ModernTimes module Base module Worker attr_accessor :name, :index, :thread module ClassMethods def default_name name = self.name.sub(/Worker$/, '') name.sub(/::/, '_') end def create_supervisor(manager, worker_options) Supervisor.new(manager, self, {}, worker_options) end end def self.included(base) base.extend(ClassMethods) end def initialize(opts={}) @name = opts[:name] || self.class.default_name end # One time initialization prior to first thread def setup end def start raise "Need to override start method in #{self.class.name}" end def stop raise "Need to override stop method in #{self.class.name}" end def status raise "Need to override status method in #{self.class.name}" end end end end
Version data entries
9 entries across 9 versions & 1 rubygems