summaryrefslogtreecommitdiffstats
path: root/db
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2014-04-05 19:11:09 +0200
committerBernhard Posselt <dev@bernhard-posselt.com>2014-04-05 19:11:16 +0200
commitdf2613660f8e7b6b0c90a06542b830061513c725 (patch)
tree032e9e316407fa2d34aa0c07132b73716be930dd /db
parent05541ae38a61110ea67c537d030ae84f2ece1baf (diff)
use findEntity and findEntities from the mapper class to get rid of code duplication
Diffstat (limited to 'db')
-rw-r--r--db/feedmapper.php26
-rw-r--r--db/foldermapper.php26
-rw-r--r--db/itemmapper.php37
3 files changed, 16 insertions, 73 deletions
diff --git a/db/feedmapper.php b/db/feedmapper.php
index 23b6da5d6..8d82388de 100644
--- a/db/feedmapper.php
+++ b/db/feedmapper.php
@@ -57,25 +57,7 @@ class FeedMapper extends Mapper implements IMapper {
'`feeds`.`folder_id`, `feeds`.`prevent_update`, `feeds`.`deleted_at`';
$params = array($id, $userId);
- $row = $this->findOneQuery($sql, $params);
- $feed = new Feed();
- $feed->fromRow($row);
-
- return $feed;
- }
-
-
- private function findAllRows($sql, $params=array(), $limit=null){
- $result = $this->execute($sql, $params, $limit);
-
- $feeds = array();
- while($row = $result->fetchRow()){
- $feed = new Feed();
- $feed->fromRow($row);
- array_push($feeds, $feed);
- }
-
- return $feeds;
+ return $this->findEntity($sql, $params);
}
@@ -103,7 +85,7 @@ class FeedMapper extends Mapper implements IMapper {
'`feeds`.`folder_id`, `feeds`.`prevent_update`, `feeds`.`deleted_at`';
$params = array($userId);
- return $this->findAllRows($sql, $params);
+ return $this->findEntities($sql, $params);
}
@@ -129,7 +111,7 @@ class FeedMapper extends Mapper implements IMapper {
'`feeds`.`favicon_link`, `feeds`.`added`, `feeds`.`articles_per_update`,'.
'`feeds`.`folder_id`, `feeds`.`prevent_update`, `feeds`.`deleted_at`';
- return $this->findAllRows($sql);
+ return $this->findEntities($sql);
}
@@ -194,7 +176,7 @@ class FeedMapper extends Mapper implements IMapper {
array_push($params, $userId);
}
- return $this->findAllRows($sql, $params);
+ return $this->findEntities($sql, $params);
}
diff --git a/db/foldermapper.php b/db/foldermapper.php
index 2abe89b29..5245a1b12 100644
--- a/db/foldermapper.php
+++ b/db/foldermapper.php
@@ -41,25 +41,7 @@ class FolderMapper extends Mapper implements IMapper {
'WHERE `id` = ? ' .
'AND `user_id` = ?';
- $row = $this->findOneQuery($sql, array($id, $userId));
- $folder = new Folder();
- $folder->fromRow($row);
-
- return $folder;
- }
-
-
- private function findAllRows($sql, $params=array()){
- $result = $this->execute($sql, $params);
-
- $folders = array();
- while($row = $result->fetchRow()){
- $folder = new Folder();
- $folder->fromRow($row);
- array_push($folders, $folder);
- }
-
- return $folders;
+ return $this->findEntity($sql, array($id, $userId));
}
@@ -69,7 +51,7 @@ class FolderMapper extends Mapper implements IMapper {
'AND `deleted_at` = 0';
$params = array($userId);
- return $this->findAllRows($sql, $params);
+ return $this->findEntities($sql, $params);
}
@@ -79,7 +61,7 @@ class FolderMapper extends Mapper implements IMapper {
'AND `user_id` = ?';
$params = array($folderName, $userId);
- return $this->findAllRows($sql, $params);
+ return $this->findEntities($sql, $params);
}
@@ -123,7 +105,7 @@ class FolderMapper extends Mapper implements IMapper {
array_push($params, $userId);
}
- return $this->findAllRows($sql, $params);
+ return $this->findEntities($sql, $params);
}
diff --git a/db/itemmapper.php b/db/itemmapper.php
index 5b2ab5346..ad5424eac 100644
--- a/db/itemmapper.php
+++ b/db/itemmapper.php
@@ -36,22 +36,6 @@ class ItemMapper extends Mapper implements IMapper {
}
- protected function findAllRows($sql, $params, $limit=null, $offset=null) {
- $result = $this->execute($sql, $params, $limit, $offset);
-
- $items = array();
-
- while($row = $result->fetchRow()){
- $item = new Item();
- $item->fromRow($row);
-
- array_push($items, $item);
- }
-
- return $items;
- }
-
-
private function makeSelectQuery($prependTo){
return 'SELECT `items`.* FROM `*PREFIX*news_items` `items` '.
'JOIN `*PREFIX*news_feeds` `feeds` ' .
@@ -92,12 +76,7 @@ class ItemMapper extends Mapper implements IMapper {
public function find($id, $userId){
$sql = $this->makeSelectQuery('AND `items`.`id` = ? ');
- $row = $this->findOneQuery($sql, array($userId, $id));
-
- $item = new Item();
- $item->fromRow($row);
-
- return $item;
+ return $this->findEntity($sql, array($userId, $id));
}
@@ -172,7 +151,7 @@ class ItemMapper extends Mapper implements IMapper {
$sql = $this->makeSelectQueryStatus(
'AND `items`.`last_modified` >= ? ', $status);
$params = array($userId, $updatedSince);
- return $this->findAllRows($sql, $params);
+ return $this->findEntities($sql, $params);
}
@@ -181,7 +160,7 @@ class ItemMapper extends Mapper implements IMapper {
'AND `items`.`last_modified` >= ? ';
$sql = $this->makeSelectQueryStatus($sql, $status);
$params = array($userId, $id, $updatedSince);
- return $this->findAllRows($sql, $params);
+ return $this->findEntities($sql, $params);
}
@@ -190,7 +169,7 @@ class ItemMapper extends Mapper implements IMapper {
'AND `items`.`last_modified` >= ? ';
$sql = $this->makeSelectQueryStatus($sql, $status);
$params = array($userId, $id, $updatedSince);
- return $this->findAllRows($sql, $params);
+ return $this->findEntities($sql, $params);
}
@@ -202,7 +181,7 @@ class ItemMapper extends Mapper implements IMapper {
array_push($params, $offset);
}
$sql = $this->makeSelectQueryStatus($sql, $status);
- return $this->findAllRows($sql, $params, $limit);
+ return $this->findEntities($sql, $params, $limit);
}
@@ -214,7 +193,7 @@ class ItemMapper extends Mapper implements IMapper {
array_push($params, $offset);
}
$sql = $this->makeSelectQueryStatus($sql, $status);
- return $this->findAllRows($sql, $params, $limit);
+ return $this->findEntities($sql, $params, $limit);
}
@@ -226,7 +205,7 @@ class ItemMapper extends Mapper implements IMapper {
array_push($params, $offset);
}
$sql = $this->makeSelectQueryStatus($sql, $status);
- return $this->findAllRows($sql, $params, $limit);
+ return $this->findEntities($sql, $params, $limit);
}
@@ -235,7 +214,7 @@ class ItemMapper extends Mapper implements IMapper {
$status = StatusFlag::UNREAD | StatusFlag::STARRED;
$sql = 'AND ((`items`.`status` & ' . $status . ') > 0) ';
$sql = $this->makeSelectQuery($sql);
- return $this->findAllRows($sql, $params);
+ return $this->findEntities($sql, $params);
}