diff options
-rw-r--r-- | appinfo/bootstrap.php | 24 | ||||
-rw-r--r-- | appinfo/routes.php | 40 | ||||
-rw-r--r-- | external_api/feed.php | 29 | ||||
-rw-r--r-- | external_api/folder.php | 18 | ||||
-rw-r--r-- | feed.bl.php | 2 | ||||
-rw-r--r-- | folder.bl.php | 2 |
6 files changed, 69 insertions, 46 deletions
diff --git a/appinfo/bootstrap.php b/appinfo/bootstrap.php index 10ddeadc6..ae011cc45 100644 --- a/appinfo/bootstrap.php +++ b/appinfo/bootstrap.php @@ -46,11 +46,11 @@ namespace OCA\News; \OC::$CLASSPATH['OCA\News\NewsController'] = 'apps/news/controller/news.controller.php'; \OC::$CLASSPATH['OCA\News\NewsAjaxController'] = 'apps/news/controller/news.ajax.controller.php'; -\OC::$CLASSPATH['OCA\News\FolderBL'] = 'apps/news/folder.bl.php'; -\OC::$CLASSPATH['OCA\News\FeedBL'] = 'apps/news/feed.bl.php'; +\OC::$CLASSPATH['OCA\News\FolderBl'] = 'apps/news/folder.bl.php'; +\OC::$CLASSPATH['OCA\News\FeedBl'] = 'apps/news/feed.bl.php'; -\OC::$CLASSPATH['OCA\News\API_Folder'] = 'apps/news/external_api/folder.php'; -\OC::$CLASSPATH['OCA\News\API_Feed'] = 'apps/news/external_api/feed.php'; +\OC::$CLASSPATH['OCA\News\FolderApi'] = 'apps/news/external_api/folder.php'; +\OC::$CLASSPATH['OCA\News\FeedApi'] = 'apps/news/external_api/feed.php'; /** @@ -115,23 +115,23 @@ function createDIContainer(){ /** * BUSINESS LAYER OBJECTS */ - $newsContainer['FolderBL'] = $newsContainer->share(function($c){ - return new FolderBL($c['FolderMapper']); + $newsContainer['FolderBl'] = $newsContainer->share(function($c){ + return new FolderBl($c['FolderMapper']); }); - $newsContainer['FeedBL'] = $newsContainer->share(function($c){ - return new FeedBL($c['FeedMapper']); + $newsContainer['FeedBl'] = $newsContainer->share(function($c){ + return new FeedBl($c['FeedMapper']); }); /** * EXTERNAL API LAYER */ - $newsContainer['API_Folder'] = $newsContainer->share(function($c){ - return new API_Folder($c['FolderBL']); + $newsContainer['FolderApi'] = $newsContainer->share(function($c){ + return new FolderApi($c['FolderBl']); }); - $newsContainer['API_Feed'] = $newsContainer->share(function($c){ - return new API_Feed($c['FeedBL']); + $newsContainer['FeedApi'] = $newsContainer->share(function($c){ + return new FeedApi($c['FeedBl']); }); diff --git a/appinfo/routes.php b/appinfo/routes.php index 0370ecb93..1427d4443 100644 --- a/appinfo/routes.php +++ b/appinfo/routes.php @@ -205,24 +205,54 @@ $this->create('news_ajax_importOPML', '/import')->action( /** * External API */ + /** * Feed API */ + \OCP\API::register( - 'get', '/news/feeds', array('OCA\News\API_Feed', 'getAll'), 'news', \OC_API::USER_AUTH + 'get', '/news/feeds', + function($urlParams) { + $container = createDIContainer(); + return $container['FeedApi']->getAll($urlParams); + }, + 'news', \OC_API::USER_AUTH ); \OCP\API::register( - 'get', '/news/feeds/{feedid}', array('OCA\News\API_Feed', 'getById'), 'news', \OC_API::USER_AUTH + 'get', '/news/feeds/{feedid}', + function($urlParams) { + $container = createDIContainer(); + return $container['FeedApi']->getById($urlParams); + }, + 'news', \OC_API::USER_AUTH ); \OCP\API::register( - 'post', '/news/feeds/create', array('OCA\News\API_Feed', 'create'), 'news', \OC_API::USER_AUTH + 'post', '/news/feeds/create', + function($urlParams) { + $container = createDIContainer(); + return $container['FeedApi']->create($urlParams); + }, + 'news', \OC_API::USER_AUTH ); + /** * Folder API */ + \OCP\API::register( - 'get', '/news/folders', array('OCA\News\API_Folder', 'getAll'), 'news', \OC_API::USER_AUTH + 'get', '/news/folders', + function($urlParams) { + $container = createDIContainer(); + return $container['FolderApi']->getAll($urlParams); + }, + 'news', \OC_API::USER_AUTH ); + \OCP\API::register( - 'post', '/news/folders/create', array('OCA\News\API_Folder', 'create'), 'news', \OC_API::USER_AUTH + 'post', '/news/folders/create', + function($urlParams) { + $container = createDIContainer(); + return $container['FolderApi']->create($urlParams); + }, + 'news', \OC_API::USER_AUTH );
\ No newline at end of file diff --git a/external_api/feed.php b/external_api/feed.php index fcdfd2c7f..7dfd5763f 100644 --- a/external_api/feed.php +++ b/external_api/feed.php @@ -4,16 +4,14 @@ namespace OCA\News; use \OCA\News\Controller\FeedController; -class API_Feed { +class FeedApi { -// public __construct($feedbl) { -// $this->bl = $feedbl; -// } + public function __construct($bl){ + $this->bl = $bl; + } - public static function getAll() { - $container = createDIContainer(); - $bl = $container['FeedBL']; - $feeds = $bl->getAll(); + public function getAll() { + $feeds = $this->bl->getAll(); $serializedFeeds = array(); foreach ($feeds as $feed) { $serializedFeeds[] = $feed->jsonSerialize(); @@ -21,23 +19,18 @@ class API_Feed { return new \OC_OCS_Result($serializedFeeds); } - public function getById($parameters) { - $feedid = $parameters['feedid']; - $container = createDIContainer(); - $bl = $container['FeedBL']; - $feed = $bl->getById($feedid); + public function getById($params) { + $feed = $this->bl->getById($feedid); $serializedFeed = array($feed->jsonSerialize()); return new \OC_OCS_Result($serializedFeed); } - public static function create() { - + public function create() { $url = $_POST['url']; $folderId = $_POST['folderid']; + //TODO: check parameters here - $container = createDIContainer(); - $bl = $container['FeedBL']; - $success = $bl->create($url, $folderId); + $success = $this->bl->create($url, $folderId); if ($success) { return new \OC_OCS_Result(); diff --git a/external_api/folder.php b/external_api/folder.php index f9dae7535..66e5f3915 100644 --- a/external_api/folder.php +++ b/external_api/folder.php @@ -4,12 +4,14 @@ namespace OCA\News; use \OCA\News\Controller\FolderController; -class API_Folder { +class FolderApi { - public static function getAll() { - $container = createDIContainer(); - $bl = $container['FolderBL']; - $folders = $bl->getAll(); + public function __construct($bl){ + $this->bl = $bl; + } + + public function getAll() { + $folders = $this->bl->getAll(); $serializedFolders = array(); //TODO: check the behaviour for nested folders @@ -19,14 +21,12 @@ class API_Folder { return new \OC_OCS_Result($serializedFolders); } - public static function create() { + public function create() { $name = $_POST['name']; $parentId = $_POST['parentid']; - $container = createDIContainer(); - $bl = $container['FolderBL']; - $bl->create($name, $parentId); + $this->bl->create($name, $parentId); return new \OC_OCS_Result(); } diff --git a/feed.bl.php b/feed.bl.php index 30dc5f4c3..0ddd8ac80 100644 --- a/feed.bl.php +++ b/feed.bl.php @@ -2,7 +2,7 @@ namespace OCA\News; -class FeedBL { +class FeedBl { public function __construct($feedMapper){ $this->feedMapper = $feedMapper; diff --git a/folder.bl.php b/folder.bl.php index 4bc0f45ab..722baf8fc 100644 --- a/folder.bl.php +++ b/folder.bl.php @@ -2,7 +2,7 @@ namespace OCA\News; -class FolderBL { +class FolderBl { public function __construct($folderMapper){ $this->folderMapper = $folderMapper; |