Module: CapistranoMulticonfigParallel::BaseActorHelper::InstanceMethods
- Defined in:
- lib/capistrano_multiconfig_parallel/helpers/base_actor_helper.rb
Instance Method Summary collapse
- #setup_actor_supervision(class_name, options) ⇒ Object
- #setup_actor_supervision_details(class_name, options) ⇒ Object
- #setup_pool_of_actor(class_name, options) ⇒ Object
- #setup_supervision_group ⇒ Object
Instance Method Details
#setup_actor_supervision(class_name, options) ⇒ Object
52 53 54 55 56 57 58 |
# File 'lib/capistrano_multiconfig_parallel/helpers/base_actor_helper.rb', line 52 def setup_actor_supervision(class_name, ) if version_less_than_seventeen? class_name.supervise_as(*setup_actor_supervision_details(class_name, )) else class_name.supervise setup_actor_supervision_details(class_name, ) end end |
#setup_actor_supervision_details(class_name, options) ⇒ Object
41 42 43 44 45 46 47 48 49 |
# File 'lib/capistrano_multiconfig_parallel/helpers/base_actor_helper.rb', line 41 def setup_actor_supervision_details(class_name, ) arguments = ([:args].is_a?(Array) ? [:args] : [[:args]]).compact if version_less_than_seventeen? [[:actor_name], [:type], *arguments] else #supervises_opts = options[:supervises].present? ? { supervises: options[:supervises] } : {} { as: [:actor_name], type: [:type], args: arguments, size: .fetch(:size, nil) } end end |
#setup_pool_of_actor(class_name, options) ⇒ Object
68 69 70 71 72 73 74 75 76 77 |
# File 'lib/capistrano_multiconfig_parallel/helpers/base_actor_helper.rb', line 68 def setup_pool_of_actor(class_name, ) if version_less_than_seventeen? class_name.pool([:type], as: [:actor_name], size: .fetch(:size, 10)) else # config = Celluloid::Supervision::Configuration.new # config.define setup_actor_supervision_details(class_name, options) = setup_actor_supervision_details(class_name, ) class_name.pool *[[:type], .except(:type)] end end |
#setup_supervision_group ⇒ Object
60 61 62 63 64 65 66 |
# File 'lib/capistrano_multiconfig_parallel/helpers/base_actor_helper.rb', line 60 def setup_supervision_group if version_less_than_seventeen? Celluloid::SupervisionGroup.run! else Celluloid::Supervision::Container.run! end end |