class Employer::Workshop
Attributes
logger[R]
Public Class Methods
new(config_code, skip_employees = false)
click to toggle source
# File lib/employer/workshop.rb, line 11 def initialize(config_code, skip_employees = false) @logger = Employer::Logger.new @boss = Employer::Boss.new(logger) @forking_employees = 0 @threading_employees = 0 instance_eval(config_code) unless skip_employees @forking_employees.times do @boss.allocate_employee(Employer::Employees::ForkingEmployee.new(logger)) end @threading_employees.times do @boss.allocate_employee(Employer::Employees::ThreadingEmployee.new(logger)) end end end
pipeline(filename)
click to toggle source
# File lib/employer/workshop.rb, line 7 def self.pipeline(filename) new(File.read(filename), true).pipeline end
Public Instance Methods
log_to(log_to_logger)
click to toggle source
# File lib/employer/workshop.rb, line 47 def log_to(log_to_logger) logger.append_to(log_to_logger) end
pipeline()
click to toggle source
# File lib/employer/workshop.rb, line 43 def pipeline @boss.pipeline end
run()
click to toggle source
# File lib/employer/workshop.rb, line 30 def run @boss.manage end
stop()
click to toggle source
# File lib/employer/workshop.rb, line 34 def stop @boss.stop_managing end
stop_now()
click to toggle source
# File lib/employer/workshop.rb, line 38 def stop_now @boss.stop_managing @boss.stop_employees end
Private Instance Methods
forking_employees(number)
click to toggle source
# File lib/employer/workshop.rb, line 53 def forking_employees(number) @forking_employees = number end
pipeline_backend(backend)
click to toggle source
# File lib/employer/workshop.rb, line 61 def pipeline_backend(backend) @boss.pipeline_backend = backend end
threading_employees(number)
click to toggle source
# File lib/employer/workshop.rb, line 57 def threading_employees(number) @threading_employees = number end