Class: PoolParty::Resources::Conditional
- Inherits:
-
PoolParty::Resource
- Object
- Base
- PoolParty::Resource
- PoolParty::Resources::Conditional
- Defined in:
- lib/poolparty/resources/conditional.rb
Instance Attribute Summary
Attributes inherited from PoolParty::Resource
#exists, #graph_index, #meta_not_if, #meta_notifies, #meta_only_if, #meta_subscribes
Attributes inherited from Base
Class Method Summary collapse
Instance Method Summary collapse
- #conditions ⇒ Object
- #else_is(output) ⇒ Object
- #print_to_chef ⇒ Object
-
#when_is(val, output) ⇒ Object
When is.
Methods inherited from PoolParty::Resource
#after_compile, #after_loaded_requires_parent, #before_compile, #case_of, #cloud, #compile, define_resource, define_resource_methods, defined, defined_resources, #does_not_exist!, #exists!, #has_method_name, inherited, #initialize, is_base_resource_class?, method_defined!, method_defined?, #not_if, #notifies, #only_if, #pool, #print_variable, #requires, #subscribes
Methods inherited from Base
#add_ordered_resources_to_result, #after_loaded, #all_resources, #before_load, clouds_dot_rb_dir, #clouds_dot_rb_dir, #clouds_dot_rb_file, clouds_dot_rb_file, #compile_opts, #create_graph, #dependencies, #get_resource, #has_searchable_paths, #initialize, #method_missing, #ordered_resources, #output_resources_graph, #resources, #resources_graph, #resources_with_dependencies, #resources_without_dependencies, #run_in_context, #run_with_callbacks, #to_s, #valid?, #validations
Methods included from Delayed
Methods included from Callbacks
Methods included from SearchablePaths
Constructor Details
This class inherits a constructor from PoolParty::Resource
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class PoolParty::Base
Class Method Details
.has_method_name ⇒ Object
28 29 30 |
# File 'lib/poolparty/resources/conditional.rb', line 28 def self.has_method_name "case" end |
Instance Method Details
#conditions ⇒ Object
41 42 43 |
# File 'lib/poolparty/resources/conditional.rb', line 41 def conditions @conditions ||= [] end |
#else_is(output) ⇒ Object
37 38 39 |
# File 'lib/poolparty/resources/conditional.rb', line 37 def else_is(output) conditions.push([:else, output]) end |
#print_to_chef ⇒ Object
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/poolparty/resources/conditional.rb', line 45 def print_to_chef arr = [] arr << "case #{print_variable(name)}" conditions.each do |cond| if cond[0] == :else arr << "else" arr << " #{print_variable(cond[1])}" break else arr << "when #{print_variable(cond[0])}" arr << " #{print_variable(cond[1])}" end end arr << "end" arr.join("\n") end |
#when_is(val, output) ⇒ Object
When is
33 34 35 |
# File 'lib/poolparty/resources/conditional.rb', line 33 def when_is(val, output) conditions << [val, output] end |