Class: Screengem::Factories::TaskFactory
- Inherits:
- BasicObject
- Includes:
- Singleton
- Defined in:
- lib/screengem/factories/task_factory.rb
Overview
Knows how to create a Task from a task name.
Defined Under Namespace
Classes: TaskError
Instance Method Summary collapse
-
#method_missing(task_name, *args) ⇒ Object
rubocop:disable Style/MethodMissingSuper.
- #respond_to_missing?(_task_name) ⇒ Boolean
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(task_name, *args) ⇒ Object
rubocop:disable Style/MethodMissingSuper
9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/screengem/factories/task_factory.rb', line 9 def method_missing(task_name, *args) # rubocop:disable Style/MethodMissingSuper task_class_name = "#{task_name}_task".camelize task_class = "#{task_scope}::#{task_class_name}".constantize task_class.new(*args) rescue => e TaskError.new(" Unable to create task: '\#{task_class_name}'.\n Details: \#{e.message}\n MSG\nend\n") |
Instance Method Details
#respond_to_missing?(_task_name) ⇒ Boolean
21 22 23 |
# File 'lib/screengem/factories/task_factory.rb', line 21 def respond_to_missing?(_task_name, *) true end |