Qualche modifica al dao/model

Qualche modifica ai lib.inclusions
This commit is contained in:
Riccardo Di Dato
2015-12-23 14:45:45 +01:00
parent 4ddbe4ffc2
commit 34ba89d6dc
5 changed files with 50 additions and 9 deletions
@@ -0,0 +1,18 @@
<?php
/*
Author: Riccardo Di Dato
Creation Date: 23/dic/2015
*/
class DaoSaveableDefaultImplementation implements DaoSaveable {
public function getSaveableObj(){
}
public function buildFromSaveableObj($obj){
}
}
?>
+13
View File
@@ -0,0 +1,13 @@
<?php
/*
Author: Riccardo Di Dato
Creation Date: 23/dic/2015
*/
interface DaoSaveable {
public function getSaveableObj();
public function buildFromSaveableObj($obj);
}
?>
+10 -4
View File
@@ -7,6 +7,12 @@ Creation Date: 22/dic/2015
class GenericDao{
private $mongo;
private static $defaultReturnClass = "DaoSaveableDefaultImplementation";
public static function setDefaultReturnClass($retClass){
self::$defaultReturnClass = $retClass;
}
/**
* La connection string è nel seguente formato.
* [username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database]
@@ -21,7 +27,7 @@ class GenericDao{
$mongo = self::generateMongoObject($connectionString);
}
public function query($collectionName, array $filter = array(), array $options = array()){
public function query($collectionName, array $filter = array(), array $options = array(), $retClass = null){
$rval = array();
$table = $this->getTable($name);
@@ -29,12 +35,12 @@ class GenericDao{
$cursor = $this->mongo->executeQuery($collectionName,$query);
foreach ($cursor as $ele){
$rval[] = new Model($ele);
$rval[] = new self::$defaultReturnClass($ele);
}
return $ele;
}
public function save(Model $model){
public function save(DaoSaveable $model){
$bulk = new MongoDB\Driver\BulkWrite(['ordered' => false]);
$writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 1000);
@@ -45,7 +51,7 @@ class GenericDao{
}
}
public function delete(Model $model){
public function delete(DaoSaveable $model){
}
+1 -1
View File
@@ -4,7 +4,7 @@ Author: Riccardo Di Dato
Creation Date: 22/dic/2015
*/
class Model {
class Model extends DaoSaveableDefaultImplementation{
}
+8 -4
View File
@@ -7,11 +7,15 @@ Creation Date: 14/nov/2013
require_once(dirname(__FILE__)."/CoreException.php");
require_once(dirname(__FILE__)."/logger/lib.inclusion.php");
require_once(dirname(__FILE__)."/system/lib.inclusion.php");
require_once(dirname(__FILE__)."/Status.php");
require_once(dirname(__FILE__)."/OperationStack.php");
require_once(dirname(__FILE__)."/OperationChain.php");
@@ -23,10 +27,10 @@ require_once(dirname(__FILE__)."/CoreException.php");
require_once(dirname(__FILE__)."/PostHandler.php");
// Include Loggers
require_once(dirname(__FILE__)."/logger/LoggingFacility.php");
require_once(dirname(__FILE__)."/logger/LoggingFacilityManager.php");
require_once(dirname(__FILE__)."/logger/SyslogLogger.php");
require_once(dirname(__FILE__)."/logger/FileLogger.php");
// require_once(dirname(__FILE__)."/logger/LoggingFacility.php");
// require_once(dirname(__FILE__)."/logger/LoggingFacilityManager.php");
// require_once(dirname(__FILE__)."/logger/SyslogLogger.php");
// require_once(dirname(__FILE__)."/logger/FileLogger.php");
// Include base UIComponents
require_once(dirname(__FILE__)."/gui/UIComponent.php");