Module: Mattock::ConfigurableTask
- Includes:
- CascadingDefinition, Configurable, Mattock::Configurable::DirectoryStructure, DeferredDefinition
- Included in:
- Rake::FileCreationTask, Rake::FileTask, Rake::MultiTask, Rake::Task
- Defined in:
- lib/mattock/task.rb
Overview
A configurable subclass of Rake::Task, such that you can use a configuration block to change how a common task behaves, while still overriding Rake API methods like Task#needed? and Task#timestamp
Defined Under Namespace
Modules: ClassMethods
Constant Summary
Constants included from Configurable
Mattock::Configurable::RequiredField
Instance Attribute Summary collapse
-
#base_task ⇒ Object
Returns the value of attribute base_task.
Class Method Summary collapse
Instance Method Summary collapse
Methods included from Mattock::Configurable::DirectoryStructure
Methods included from DeferredDefinition
add_settings, #finalize_configuration, #resolve_runtime_configuration, #runtime?, #runtime_definition, #setup_deferred
Methods included from CascadingDefinition
#confirm_configuration, #confirm_step, #confirm_steps, #default_configuration, #define, #setup_cascade
Methods included from Configurable
#check_required, #copy_settings, #copy_settings_to, #fail_unless_set, #field_unset?, #proxy_settings, #proxy_settings_to, #proxy_value, #setup_defaults, #to_hash, #unset?, #unset_defaults_guard, unset_defaults_guard
Methods included from Mattock::Configurable::ClassMethods
#default_value_for, #default_values, #field_metadata, #field_names, #included, #inspect_instance, #missing_required_fields_on, #nested, #nil_fields, #required_fields, #runtime_required_fields, #runtime_setting, #set_defaults_on, #setting, #settings, #to_hash
Instance Attribute Details
#base_task ⇒ Object
Returns the value of attribute base_task.
67 68 69 |
# File 'lib/mattock/task.rb', line 67 def base_task @base_task end |
Class Method Details
.included(sub) ⇒ Object
57 58 59 60 61 62 |
# File 'lib/mattock/task.rb', line 57 def self.included(sub) sub.extend ClassMethods Configurable.included(sub) Configurable::DirectoryStructure.included(sub) DeferredDefinition.add_settings(sub) end |
Instance Method Details
#action(*task_args) ⇒ Object
73 74 |
# File 'lib/mattock/task.rb', line 73 def action(*task_args) end |
#inspect ⇒ Object
76 77 78 |
# File 'lib/mattock/task.rb', line 76 def inspect "#{self.class.name}: #{self.task_args.inspect}\nConfiguration:\n#{self.class.inspect_instance(self, " ")}" end |
#resolve_configuration ⇒ Object
69 70 71 |
# File 'lib/mattock/task.rb', line 69 def resolve_configuration super end |