diff --git a/src/Pecee/SimpleRouter/Route/ILoadableRoute.php b/src/Pecee/SimpleRouter/Route/ILoadableRoute.php index 92ef82a..4036337 100644 --- a/src/Pecee/SimpleRouter/Route/ILoadableRoute.php +++ b/src/Pecee/SimpleRouter/Route/ILoadableRoute.php @@ -51,4 +51,19 @@ interface ILoadableRoute extends IRoute */ public function setName($name); + /** + * Get regular expression match used for matching route (if defined). + * + * @return string + */ + public function getMatch(); + + /** + * Add regular expression match for the entire route. + * + * @param string $regex + * @return static + */ + public function setMatch($regex); + } \ No newline at end of file diff --git a/src/Pecee/SimpleRouter/Route/IRoute.php b/src/Pecee/SimpleRouter/Route/IRoute.php index a8df2da..175cd68 100644 --- a/src/Pecee/SimpleRouter/Route/IRoute.php +++ b/src/Pecee/SimpleRouter/Route/IRoute.php @@ -113,21 +113,6 @@ interface IRoute public function getDefaultNamespace(); - /** - * Get regular expression match used for matching route (if defined). - * - * @return string - */ - public function getMatch(); - - /** - * Add regular expression match for the entire route. - * - * @param string $regex - * @return static - */ - public function setMatch($regex); - /** * Get parameter names. * diff --git a/src/Pecee/SimpleRouter/Route/LoadableRoute.php b/src/Pecee/SimpleRouter/Route/LoadableRoute.php index 656cd5c..39e9d0a 100644 --- a/src/Pecee/SimpleRouter/Route/LoadableRoute.php +++ b/src/Pecee/SimpleRouter/Route/LoadableRoute.php @@ -8,7 +8,7 @@ use Pecee\SimpleRouter\Exceptions\HttpException; abstract class LoadableRoute extends Route implements ILoadableRoute { /** - * @var + * @var string */ protected $url; @@ -17,6 +17,8 @@ abstract class LoadableRoute extends Route implements ILoadableRoute */ protected $name; + protected $regex; + /** * Loads and renders middlewares-classes * @@ -171,6 +173,29 @@ abstract class LoadableRoute extends Route implements ILoadableRoute return (strtolower($this->name) === strtolower($name)); } + /** + * Add regular expression match for the entire route. + * + * @param string $regex + * @return static + */ + public function setMatch($regex) + { + $this->regex = $regex; + + return $this; + } + + /** + * Get regular expression match used for matching route (if defined). + * + * @return string + */ + public function getMatch() + { + return $this->regex; + } + /** * Sets the router name, which makes it easier to obtain the url or router at a later point. * Alias for LoadableRoute::setName(). diff --git a/src/Pecee/SimpleRouter/Route/Route.php b/src/Pecee/SimpleRouter/Route/Route.php index 0c12af9..978a1f5 100644 --- a/src/Pecee/SimpleRouter/Route/Route.php +++ b/src/Pecee/SimpleRouter/Route/Route.php @@ -40,7 +40,6 @@ abstract class Route implements IRoute /* Default options */ protected $namespace; - protected $regex; protected $requestMethods = []; protected $where = []; protected $parameters = []; @@ -313,29 +312,6 @@ abstract class Route implements IRoute return ($this->namespace === null) ? $this->defaultNamespace : $this->namespace; } - /** - * Add regular expression match for the entire route. - * - * @param string $regex - * @return static - */ - public function setMatch($regex) - { - $this->regex = $regex; - - return $this; - } - - /** - * Get regular expression match used for matching route (if defined). - * - * @return string - */ - public function getMatch() - { - return $this->regex; - } - /** * Export route settings to array so they can be merged with another route. *