Module: SkinnyControllers::Lookup::EnsureExistence
- Included in:
- SkinnyControllers::Lookup
- Defined in:
- lib/skinny_controllers/lookup/ensure_existence.rb
Class Method Summary collapse
-
.ensure_namespace!(namespace) ⇒ Module
Namespace.
- .ensure_operation_class!(qualified_name) ⇒ Object
- .ensure_policy_class!(qualified_name) ⇒ Object
-
.use_defailt_operation(qualified_name) ⇒ Class
This assumes the namespace already exists This is only to be used if there does not exist operation that goes by the name defined by qualified_name (hence the warn log at the top).
Class Method Details
.ensure_namespace!(namespace) ⇒ Module
Returns namespace.
7 8 9 10 |
# File 'lib/skinny_controllers/lookup/ensure_existence.rb', line 7 def ensure_namespace!(namespace) klass = namespace_lookup(namespace) klass || Namespace.create_namespace(namespace) end |
.ensure_operation_class!(qualified_name) ⇒ Object
12 13 14 15 |
# File 'lib/skinny_controllers/lookup/ensure_existence.rb', line 12 def ensure_operation_class!(qualified_name) klass = operation_lookup(qualified_name) klass || use_defailt_operation(qualified_name) end |
.ensure_policy_class!(qualified_name) ⇒ Object
17 18 19 20 |
# File 'lib/skinny_controllers/lookup/ensure_existence.rb', line 17 def ensure_policy_class!(qualified_name) klass = policy_lookup(qualified_name) klass || Lookup::Policy.define_policy_class(qualified_name) end |
.use_defailt_operation(qualified_name) ⇒ Class
This assumes the namespace already exists This is only to be used if there does not exist operation that goes by the name defined by qualified_name (hence the warn log at the top)
31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/skinny_controllers/lookup/ensure_existence.rb', line 31 def use_defailt_operation(qualified_name) SkinnyControllers.logger.warn("#{qualified_name} not found. Creating default...") parts = qualified_name.split('::') class_name = parts.pop namespace = parts.join('::').safe_constantize namespace.const_set( class_name, SkinnyControllers::Operation::Default.dup ) end |