diff options
author | Bernhard Posselt <nukeawhale@gmail.com> | 2013-05-02 17:30:51 +0200 |
---|---|---|
committer | Bernhard Posselt <nukeawhale@gmail.com> | 2013-05-02 17:30:51 +0200 |
commit | 51d71796adc83cf937281920ffe588094ddbe5fb (patch) | |
tree | 62024071441ee6bfdd2fcca59e21275b53b7864a | |
parent | d7014ce74f0f94e5558a2c309f4c9c49a04c3255 (diff) |
move external api stuff to appframework
-rw-r--r-- | appinfo/api.php | 36 | ||||
-rw-r--r-- | external/apiresult.php | 55 | ||||
-rw-r--r-- | external/external.php | 42 | ||||
-rw-r--r-- | external/feedapi.php | 1 | ||||
-rw-r--r-- | external/folderapi.php | 1 | ||||
-rw-r--r-- | tests/unit/external/APIResultTest.php | 45 |
6 files changed, 20 insertions, 160 deletions
diff --git a/appinfo/api.php b/appinfo/api.php index d018fef23..98b9f992a 100644 --- a/appinfo/api.php +++ b/appinfo/api.php @@ -26,7 +26,7 @@ namespace OCA\News; use \OCA\News\DependencyInjection\DIContainer; -use \OCA\News\External\External; +use \OCA\AppFramework\External\External; /** @@ -41,7 +41,7 @@ use \OCA\News\External\External; ); \OCP\API::register('get', '/apps/news/folders/{folderId}', - function($urlParams) { + function($params) { return External::main('FolderAPI', 'get', $params, new DIContainer()); }, 'news', @@ -49,7 +49,7 @@ use \OCA\News\External\External; ); \OCP\API::register('post', '/apps/news/folders', - function($urlParams) { + function($params) { return External::main('FolderAPI', 'create', $params, new DIContainer()); }, 'news', @@ -57,7 +57,7 @@ use \OCA\News\External\External; ); \OCP\API::register('delete', '/apps/news/folders/{folderId}', - function($urlParams) { + function($params) { return External::main('FolderAPI', 'delete', $params, new DIContainer()); }, 'news', @@ -65,7 +65,7 @@ use \OCA\News\External\External; ); \OCP\API::register('put', '/apps/news/folders/{folderId}', - function($urlParams) { + function($params) { return External::main('FolderAPI', 'update', $params, new DIContainer()); }, 'news', @@ -77,7 +77,7 @@ use \OCA\News\External\External; * Feed API */ \OCP\API::register('get', '/apps/news/feeds', - function($urlParams) { + function($params) { return External::main('FeedAPI', 'getAll', $params, new DIContainer()); }, 'news', @@ -85,7 +85,7 @@ use \OCA\News\External\External; ); \OCP\API::register('get', '/apps/news/feeds/{feedId}', - function($urlParams) { + function($params) { return External::main('FeedAPI', 'get', $params, new DIContainer()); }, 'news', @@ -93,7 +93,7 @@ use \OCA\News\External\External; ); \OCP\API::register('post', '/apps/news/feeds/{feedId}', - function($urlParams) { + function($params) { return External::main('FeedAPI', 'create', $params, new DIContainer()); }, 'news', @@ -101,7 +101,7 @@ use \OCA\News\External\External; ); \OCP\API::register('delete', '/apps/news/feeds/{feedId}', - function($urlParams) { + function($params) { return External::main('FeedAPI', 'delete', $params, new DIContainer()); }, 'news', @@ -109,7 +109,7 @@ use \OCA\News\External\External; ); \OCP\API::register('put', '/apps/news/feeds/{feedId}/move', - function($urlParams) { + function($params) { return External::main('FeedAPI', 'move', $params, new DIContainer()); }, 'news', @@ -117,7 +117,7 @@ use \OCA\News\External\External; ); \OCP\API::register('get', '/apps/news/feeds/{feedId}/read', - function($urlParams) { + function($params) { return External::main('FeedAPI', 'read', $params, new DIContainer()); }, 'news', @@ -128,7 +128,7 @@ use \OCA\News\External\External; * Item API */ \OCP\API::register('get', '/apps/news/items', - function($urlParams) { + function($params) { return External::main('ItemAPI', 'getAll', $params, new DIContainer()); }, 'news', @@ -136,7 +136,7 @@ use \OCA\News\External\External; ); \OCP\API::register('get', '/apps/news/items/updated', - function($urlParams) { + function($params) { return External::main('ItemAPI', 'getUpdated', $params, new DIContainer()); }, 'news', @@ -144,7 +144,7 @@ use \OCA\News\External\External; ); \OCP\API::register('get', '/apps/news/items/{itemId}', - function($urlParams) { + function($params) { return External::main('ItemAPI', 'get', $params, new DIContainer()); }, 'news', @@ -152,7 +152,7 @@ use \OCA\News\External\External; ); \OCP\API::register('put', '/apps/news/items/{itemId}/read', - function($urlParams) { + function($params) { return External::main('ItemAPI', 'read', $params, new DIContainer()); }, 'news', @@ -160,7 +160,7 @@ use \OCA\News\External\External; ); \OCP\API::register('put', '/apps/news/items/{itemId}/unread', - function($urlParams) { + function($params) { return External::main('ItemAPI', 'unread', $params, new DIContainer()); }, 'news', @@ -168,7 +168,7 @@ use \OCA\News\External\External; ); \OCP\API::register('put', '/apps/news/items/{feedId}/{guidHash}/star', - function($urlParams) { + function($params) { return External::main('ItemAPI', 'star', $params, new DIContainer()); }, 'news', @@ -176,7 +176,7 @@ use \OCA\News\External\External; ); \OCP\API::register('put', '/apps/news/items/{feedId}/{guidHash}/unstar', - function($urlParams) { + function($params) { return External::main('ItemAPI', 'unstar', $params, new DIContainer()); }, 'news', diff --git a/external/apiresult.php b/external/apiresult.php deleted file mode 100644 index 64702b125..000000000 --- a/external/apiresult.php +++ /dev/null @@ -1,55 +0,0 @@ -<?php - -/** -* ownCloud - News -* -* @author Alessandro Cosentino -* @author Bernhard Posselt -* @copyright 2012 Alessandro Cosentino cosenal@gmail.com -* @copyright 2012 Bernhard Posselt nukeawhale@gmail.com -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE -* License as published by the Free Software Foundation; either -* version 3 of the License, or any later version. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU AFFERO GENERAL PUBLIC LICENSE for more details. -* -* You should have received a copy of the GNU Affero General Public -* License along with this library. If not, see <http://www.gnu.org/licenses/>. -* -*/ - -namespace OCA\News\External; - -class APIResult { - - const OK = 100; - const SERVER_ERROR = 996; - const UNAUTHORISED = 997; - const NOT_FOUND = 998; - const UNKNOWN_ERROR = 999; - - private $data; - private $statusCode; - - public function __construct($data, $statusCode=APIResult::OK) { - $this->data = $data; - $this->statusCode = $statusCode; - } - - - public function getData() { - return $this->data; - } - - - public function getStatusCode() { - return $this->statusCode; - } - - -} diff --git a/external/external.php b/external/external.php deleted file mode 100644 index ea9657c90..000000000 --- a/external/external.php +++ /dev/null @@ -1,42 +0,0 @@ -<?php - -/** -* ownCloud - News -* -* @author Alessandro Cosentino -* @author Bernhard Posselt -* @copyright 2012 Alessandro Cosentino cosenal@gmail.com -* @copyright 2012 Bernhard Posselt nukeawhale@gmail.com -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE -* License as published by the Free Software Foundation; either -* version 3 of the License, or any later version. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU AFFERO GENERAL PUBLIC LICENSE for more details. -* -* You should have received a copy of the GNU Affero General Public -* License along with this library. If not, see <http://www.gnu.org/licenses/>. -* -*/ - -namespace OCA\News\External; - -class External { - - - /** - * Simple main function for API calls - */ - public static function main($controllerName, $methodName, $urlParams, - \Pimple $container) { - $container['urlParams'] = $urlParams; - $response = $container[$controllerName]->$methodName(); - return new \OC_OCS_Result($response->getData(), $response->getStatusCode()); - } - - -}
\ No newline at end of file diff --git a/external/feedapi.php b/external/feedapi.php index 6b888b52d..0087886a2 100644 --- a/external/feedapi.php +++ b/external/feedapi.php @@ -26,6 +26,7 @@ namespace OCA\News\External; use \OCA\AppFramework\Core\API; +use \OCA\AppFramework\External\APIResult; use \OCA\AppFramework\Controller\Controller; use \OCA\AppFramework\Http\Request; diff --git a/external/folderapi.php b/external/folderapi.php index 629b1cff5..6b8aa9c47 100644 --- a/external/folderapi.php +++ b/external/folderapi.php @@ -26,6 +26,7 @@ namespace OCA\News\External; use \OCA\AppFramework\Core\API; +use \OCA\AppFramework\External\APIResult; use \OCA\AppFramework\Controller\Controller; use \OCA\AppFramework\Http\Request; diff --git a/tests/unit/external/APIResultTest.php b/tests/unit/external/APIResultTest.php deleted file mode 100644 index 2287e683a..000000000 --- a/tests/unit/external/APIResultTest.php +++ /dev/null @@ -1,45 +0,0 @@ -<?php - -/** -* ownCloud - News -* -* @author Alessandro Cosentino -* @author Bernhard Posselt -* @copyright 2012 Alessandro Cosentino cosenal@gmail.com -* @copyright 2012 Bernhard Posselt nukeawhale@gmail.com -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE -* License as published by the Free Software Foundation; either -* version 3 of the License, or any later version. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU AFFERO GENERAL PUBLIC LICENSE for more details. -* -* You should have received a copy of the GNU Affero General Public -* License along with this library. If not, see <http://www.gnu.org/licenses/>. -* -*/ - -namespace OCA\News\External; - -require_once(__DIR__ . "/../../classloader.php"); - - -class APIResultTest extends \PHPUnit_Framework_TestCase { - - - public function testGetStatusCode() { - $result = new APIResult(null, APIResult::SERVER_ERROR); - $this->assertEquals(996, $result->getStatusCode()); - } - - public function testGetData() { - $result = new APIResult('hi'); - $this->assertEquals('hi', $result->getData()); - $this->assertEquals(100, $result->getStatusCode()); - } - -}
\ No newline at end of file |