lib/focused_controller/mixin.rb in focused_controller-0.1.0 vs lib/focused_controller/mixin.rb in focused_controller-0.2.0
- old
+ new
@@ -18,10 +18,32 @@
end
def call(env)
action(FocusedController.action_name).call(env)
end
+
+ def expose(name, &block)
+ if block_given?
+ define_method(name) do |*args|
+ ivar = "@#{name}"
+
+ if instance_variable_defined?(ivar)
+ instance_variable_get(ivar)
+ else
+ instance_variable_set(ivar, instance_exec(block, *args, &block))
+ end
+ end
+ else
+ attr_reader name
+ end
+
+ helper_method name
+ end
+
+ def controller_name
+ name.split('::')[-2].sub(/Controller$/, '').underscore
+ end
end
def action_name
self.class.name.demodulize.underscore
end
@@ -36,9 +58,9 @@
else
{}
end
end
- def run
+ def call
end
end
end