Module: TaskTempest::Settings
- Included in:
- Engine
- Defined in:
- lib/task_tempest/settings.rb
Defined Under Namespace
Modules: ClassMethods, InstanceMethods
Constant Summary collapse
- DEFAULTS =
{ # Basic settings :threads => 10, :log_level => Logger::INFO, :queue => nil, :bookkeeping_interval => 10*60, # 10 minutes :log_name => nil, # Delay settings :no_message_sleep => 1, :pulse_delay => 0.25, # Timeout settings :timeout_method => Timeout.method(:timeout), :task_timeout => nil, :shutdown_timeout => 5, # 5 seconds # Directory settings :root_dir => File.(Dir.pwd), :log_dir => File.(Dir.pwd), :task_dir => File.(Dir.pwd), # Callback settings :before_initialize => Proc.new{ |logger| }, :after_initialize => Proc.new{ |logger| }, :on_internal_exception => Proc.new{ |e, logger| }, :on_task_exception => Proc.new{ |e, logger| }, :on_require => Proc.new{ |files, logger| }, :on_bookkeeping => Proc.new{ |book, logger| }, :on_task_timeout => Proc.new{ |task, logger| } }
Class Method Summary collapse
Class Method Details
.included(mod) ⇒ Object
39 40 41 42 43 44 |
# File 'lib/task_tempest/settings.rb', line 39 def self.included(mod) mod..class_eval{ attr_accessor :settings } mod.settings = Struct.new(*DEFAULTS.keys).new(*DEFAULTS.values) mod.send(:include, InstanceMethods) mod.send(:extend, ClassMethods) end |