*/
protected static $actions = array();
- /**
- * registers an api call
- * @param string $method the http method
- * @param string $url the url to match
- * @param callable $action the function to run
- * @param string $app the id of the app registering the call
- * @param int $authLevel the level of authentication required for the call
- * @param array $defaults
- * @param array $requirements
- */
- public static function register($method, $url, $action, $app,
- $authLevel = API::USER_AUTH,
- $defaults = array(),
- $requirements = array()) {
- $name = strtolower($method).$url;
- $name = str_replace(array('/', '{', '}'), '_', $name);
- if(!isset(self::$actions[$name])) {
- $oldCollection = OC::$server->getRouter()->getCurrentCollection();
- OC::$server->getRouter()->useCollection('ocs');
- OC::$server->getRouter()->create($name, $url)
- ->method($method)
- ->defaults($defaults)
- ->requirements($requirements)
- ->action('OC_API', 'call');
- self::$actions[$name] = array();
- OC::$server->getRouter()->useCollection($oldCollection);
- }
- self::$actions[$name][] = array('app' => $app, 'action' => $action, 'authlevel' => $authLevel);
- }
-
/**
* respond to a call
* @param \OC\OCS\Result $result
* @deprecated 9.1.0 Use the AppFramework
*/
class API {
-
- /**
- * API authentication levels
- * @since 8.1.0
- */
- const GUEST_AUTH = 0;
- const USER_AUTH = 1;
- const SUBADMIN_AUTH = 2;
- const ADMIN_AUTH = 3;
-
/**
* API Response Codes
* @since 8.1.0
const RESPOND_SERVER_ERROR = 996;
const RESPOND_NOT_FOUND = 998;
const RESPOND_UNKNOWN_ERROR = 999;
-
- /**
- * registers an api call
- * @param string $method the http method
- * @param string $url the url to match
- * @param callable $action the function to run
- * @param string $app the id of the app registering the call
- * @param int $authLevel the level of authentication required for the call (See `self::*_AUTH` constants)
- * @param array $defaults
- * @param array $requirements
- * @since 5.0.0
- * @deprecated 9.1.0 Use the AppFramework
- */
- public static function register($method, $url, $action, $app, $authLevel = self::USER_AUTH,
- $defaults = array(), $requirements = array()){
- \OC_API::register($method, $url, $action, $app, $authLevel, $defaults, $requirements);
- }
-
}