diff options
author | Thomas Müller <thomas.mueller@tmit.eu> | 2014-03-17 21:07:05 +0100 |
---|---|---|
committer | Thomas Müller <thomas.mueller@tmit.eu> | 2014-03-17 21:07:05 +0100 |
commit | 756bbe87866471a25e1d437b60eb895d515fc103 (patch) | |
tree | 7eb0b65f0aa481878451e515c6fb62a5c43bd0a9 /lib/public/route/iroute.php | |
parent | 6fbf3dd7c4e64a68d2b8a0a2c24a1b92de7868b1 (diff) | |
parent | 4a2b16d76dafbd83c3f8c137cba9edda375b206a (diff) | |
download | nextcloud-server-756bbe87866471a25e1d437b60eb895d515fc103.tar.gz nextcloud-server-756bbe87866471a25e1d437b60eb895d515fc103.zip |
Merge pull request #7649 from owncloud/routing-public
Move routing classes to an interface and expose it in the public api
Diffstat (limited to 'lib/public/route/iroute.php')
-rw-r--r-- | lib/public/route/iroute.php | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/lib/public/route/iroute.php b/lib/public/route/iroute.php new file mode 100644 index 00000000000..66fdb841821 --- /dev/null +++ b/lib/public/route/iroute.php @@ -0,0 +1,79 @@ +<?php +/** + * Copyright (c) 2014 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ +namespace OCP\Route; + +interface IRoute { + /** + * Specify PATCH as the method to use with this route + */ + public function patch(); + + /** + * Specify the method when this route is to be used + * + * @param string $method HTTP method (uppercase) + * @return \OCP\Route\IRoute + */ + public function method($method); + + /** + * The action to execute when this route matches, includes a file like + * it is called directly + * + * @param $file + */ + public function actionInclude($file); + + /** + * Specify GET as the method to use with this route + */ + public function get(); + + /** + * Specify POST as the method to use with this route + */ + public function post(); + + /** + * Specify DELETE as the method to use with this route + */ + public function delete(); + + /** + * The action to execute when this route matches + * + * @param string|callable $class the class or a callable + * @param string $function the function to use with the class + * @return \OCP\Route\IRoute + * + * This function is called with $class set to a callable or + * to the class with $function + */ + public function action($class, $function = null); + + /** + * Defaults to use for this route + * + * @param array $defaults The defaults + * @return \OCP\Route\IRoute + */ + public function defaults($defaults); + + /** + * Requirements for this route + * + * @param array $requirements The requirements + * @return \OCP\Route\IRoute + */ + public function requirements($requirements); + + /** + * Specify PUT as the method to use with this route + */ + public function put(); +} |