1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52:
<?php
namespace Coast\Controller;
use Coast\Request;
use Coast\Response;
use Coast\Controller;
abstract class Action
{
protected $_controller;
public function __construct(Controller $controller)
{
$this->_controller = $controller;
}
public function __get($name)
{
return $this->_controller->$name;
}
public function __set($name, $value)
{
$this->_controller->$name = $value;
}
public function __isset($name)
{
return isset($this->_controller->$name);
}
public function __unset($name)
{
unset($this->_controller->$name);
}
public function __call($name, array $args)
{
return call_user_func_array(array($this->_controller, $name), $args);
}
public function preDispatch(Request $req, Response $res)
{}
public function postDispatch(Request $req, Response $res)
{}
}