Completed
Pull Request — 3.4 (#46)
by David
12:52 queued 01:27
created
src/Mouf/Database/TDBM/InnerResultArray.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -77,7 +77,7 @@
 block discarded – undo
77 77
 
78 78
 
79 79
 	private function toIndex($offset) {
80
-		if ($offset < 0 || filter_var($offset, FILTER_VALIDATE_INT) === false) {
80
+		if ($offset<0 || filter_var($offset, FILTER_VALIDATE_INT) === false) {
81 81
 			throw new TDBMInvalidOffsetException('Trying to access result set using offset "'.$offset.'". An offset must be a positive integer.');
82 82
 		}
83 83
 		if ($this->statement === null) {
Please login to merge, or discard this patch.
src/Mouf/Database/TDBM/InnerResultIterator.php 1 patch
Unused Use Statements   -1 removed lines patch added patch discarded remove patch
@@ -18,7 +18,6 @@
 block discarded – undo
18 18
  along with this program; if not, write to the Free Software
19 19
  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
20 20
  */
21
-use Doctrine\DBAL\Driver\Connection;
22 21
 
23 22
 
24 23
 /**
Please login to merge, or discard this patch.
src/Mouf/Database/TDBM/ResultIterator.php 2 patches
Unused Use Statements   -1 removed lines patch added patch discarded remove patch
@@ -18,7 +18,6 @@
 block discarded – undo
18 18
  along with this program; if not, write to the Free Software
19 19
  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
20 20
  */
21
-use Doctrine\DBAL\Driver\Connection;
22 21
 
23 22
 
24 23
 /**
Please login to merge, or discard this patch.
Doc Comments   +8 added lines patch added patch discarded remove patch
@@ -70,6 +70,13 @@  discard block
 block discarded – undo
70 70
 
71 71
 	private $mode;
72 72
 	
73
+	/**
74
+	 * @param string $magicSql
75
+	 * @param string $magicSqlCount
76
+	 * @param WeakrefObjectStorage $objectStorage
77
+	 * @param string|null $className
78
+	 * @param integer $mode
79
+	 */
73 80
 	public function __construct($magicSql, $magicSqlCount, array $parameters, array $columnDescriptors, $objectStorage, $className, TDBMService $tdbmService, MagicQuery $magicQuery, $mode)
74 81
 	{
75 82
 		$this->magicSql = $magicSql;
@@ -166,6 +173,7 @@  discard block
 block discarded – undo
166 173
 
167 174
 	/**
168 175
 	 * @param int $offset
176
+	 * @param integer $limit
169 177
 	 * @return PageIterator
170 178
 	 */
171 179
 	public function take($offset, $limit)
Please login to merge, or discard this patch.
src/views/tdbmGenerate.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -29,7 +29,7 @@
 block discarded – undo
29 29
 <div class="control-group">
30 30
 	<label class="control-label">Store dates / timestamps in UTC:</label>
31 31
 	<div class="controls">
32
-		<input type="checkbox" name="storeInUtc" value="1" <?php echo $this->storeInUtc?'checked="checked"':"" ?>></input>
32
+		<input type="checkbox" name="storeInUtc" value="1" <?php echo $this->storeInUtc ? 'checked="checked"' : "" ?>></input>
33 33
 		<span class="help-block">Select this option if you want timestamps to be stored in UTC.
34 34
 		If your application supports several time zones, you should select this option to store all dates in
35 35
 		the same time zone.</span>
Please login to merge, or discard this patch.
src/Mouf/Database/TDBM/TDBMService.php 5 patches
Doc Comments   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -985,7 +985,7 @@  discard block
 block discarded – undo
985 985
 	 * This is used internally by TDBM to add an object to the list of objects that have been
986 986
 	 * created/updated but not saved yet.
987 987
 	 *
988
-	 * @param AbstractTDBMObject $myObject
988
+	 * @param DbRow $myObject
989 989
 	 */
990 990
 	public function _addToToSaveObjectList(DbRow $myObject) {
991 991
 		$this->toSaveObjects[] = $myObject;
@@ -1621,7 +1621,7 @@  discard block
 block discarded – undo
1621 1621
 	}
1622 1622
 
1623 1623
 	/**
1624
-	 * @param $table
1624
+	 * @param string $table
1625 1625
 	 * @param array $primaryKeys
1626 1626
 	 * @param array $additionalTablesFetch
1627 1627
 	 * @param bool $lazy Whether to perform lazy loading on this object or not.
@@ -1778,7 +1778,7 @@  discard block
 block discarded – undo
1778 1778
 	/**
1779 1779
 	 * @param $pivotTableName
1780 1780
 	 * @param AbstractTDBMObject $bean
1781
-	 * @return AbstractTDBMObject[]
1781
+	 * @return ResultIterator
1782 1782
 	 */
1783 1783
 	public function _getRelatedBeans($pivotTableName, AbstractTDBMObject $bean) {
1784 1784
 
Please login to merge, or discard this patch.
Unused Use Statements   -5 removed lines patch added patch discarded remove patch
@@ -22,16 +22,11 @@
 block discarded – undo
22 22
 use Doctrine\Common\Cache\Cache;
23 23
 use Doctrine\Common\Cache\VoidCache;
24 24
 use Doctrine\DBAL\Connection;
25
-use Doctrine\DBAL\DBALException;
26
-use Doctrine\DBAL\Schema\Column;
27 25
 use Doctrine\DBAL\Schema\ForeignKeyConstraint;
28
-use Doctrine\DBAL\Schema\Schema;
29 26
 use Mouf\Database\MagicQuery;
30 27
 use Mouf\Database\SchemaAnalyzer\SchemaAnalyzer;
31 28
 use Mouf\Database\TDBM\Filters\OrderBySQLString;
32 29
 use Mouf\Database\TDBM\Utils\TDBMDaoGenerator;
33
-use Mouf\Utils\Cache\CacheInterface;
34
-use SQLParser\Node\ColRef;
35 30
 
36 31
 /**
37 32
  * The TDBMService class is the main TDBM class. It provides methods to retrieve TDBMObject instances
Please login to merge, or discard this patch.
Spacing   +11 added lines, -11 removed lines patch added patch discarded remove patch
@@ -699,9 +699,9 @@  discard block
 block discarded – undo
699 699
 		// 4-2, let's take all the objects out of the orderby bag, and let's make objects from them
700 700
 		$orderby_bag2 = array();
701 701
 		foreach ($orderby_bag as $thing) {
702
-			if (is_a($thing,'Mouf\\Database\\TDBM\\Filters\\OrderBySQLString')) {
702
+			if (is_a($thing, 'Mouf\\Database\\TDBM\\Filters\\OrderBySQLString')) {
703 703
 				$orderby_bag2[] = $thing;
704
-			} elseif (is_a($thing,'Mouf\\Database\\TDBM\\Filters\\OrderByColumn')) {
704
+			} elseif (is_a($thing, 'Mouf\\Database\\TDBM\\Filters\\OrderByColumn')) {
705 705
 				$orderby_bag2[] = $thing;
706 706
 			} elseif (is_string($thing)) {
707 707
 				$orderby_bag2[] = new OrderBySQLString($thing);
@@ -1204,7 +1204,7 @@  discard block
 block discarded – undo
1204 1204
 		$schemaAnalyzer = $this->schemaAnalyzer;
1205 1205
 
1206 1206
 		foreach ($tables as $currentTable) {
1207
-			$allParents = [ $currentTable ];
1207
+			$allParents = [$currentTable];
1208 1208
 			$currentFk = null;
1209 1209
 			while ($currentFk = $schemaAnalyzer->getParentRelationship($currentTable)) {
1210 1210
 				$currentTable = $currentFk->getForeignTableName();
@@ -1246,7 +1246,7 @@  discard block
 block discarded – undo
1246 1246
 		// Let's scan the parent tables
1247 1247
 		$currentTable = $table;
1248 1248
 
1249
-		$parentTables = [ ];
1249
+		$parentTables = [];
1250 1250
 
1251 1251
 		// Get parent relationship
1252 1252
 		while ($currentFk = $schemaAnalyzer->getParentRelationship($currentTable)) {
@@ -1336,7 +1336,7 @@  discard block
 block discarded – undo
1336 1336
 	 * @return ResultIterator An object representing an array of results.
1337 1337
 	 * @throws TDBMException
1338 1338
 	 */
1339
-	public function findObjects($mainTable, $filter=null, array $parameters = array(), $orderString=null, array $additionalTablesFetch = array(), $mode = null, $className=null) {
1339
+	public function findObjects($mainTable, $filter = null, array $parameters = array(), $orderString = null, array $additionalTablesFetch = array(), $mode = null, $className = null) {
1340 1340
 		// $mainTable is not secured in MagicJoin, let's add a bit of security to avoid SQL injection.
1341 1341
 		if (!preg_match('/^[a-zA-Z_][a-zA-Z0-9_]*$/', $mainTable)) {
1342 1342
 			throw new TDBMException(sprintf("Invalid table name: '%s'", $mainTable));
@@ -1405,7 +1405,7 @@  discard block
 block discarded – undo
1405 1405
 			throw new TDBMException("Unknown fetch mode: '".$this->mode."'");
1406 1406
 		}
1407 1407
 
1408
-		$mode = $mode?:$this->mode;
1408
+		$mode = $mode ?: $this->mode;
1409 1409
 
1410 1410
 		return new ResultIterator($sql, $countSql, $parameters, $columnDescList, $this->objectStorage, $className, $this, $this->magicQuery, $mode);
1411 1411
 	}
@@ -1419,7 +1419,7 @@  discard block
 block discarded – undo
1419 1419
 	 * @return AbstractTDBMObject
1420 1420
 	 * @throws TDBMException
1421 1421
 	 */
1422
-	public function findObjectByPk($table, array $primaryKeys, array $additionalTablesFetch = array(), $lazy = false, $className=null) {
1422
+	public function findObjectByPk($table, array $primaryKeys, array $additionalTablesFetch = array(), $lazy = false, $className = null) {
1423 1423
 		$primaryKeys = $this->_getPrimaryKeysFromObjectData($table, $primaryKeys);
1424 1424
 		$hash = $this->getObjectHash($primaryKeys);
1425 1425
 
@@ -1439,7 +1439,7 @@  discard block
 block discarded – undo
1439 1439
 			// Only allowed if no inheritance.
1440 1440
 			if (count($tables) === 1) {
1441 1441
 				if ($className === null) {
1442
-					$className = isset($this->tableToBeanMap[$table])?$this->tableToBeanMap[$table]:"Mouf\\Database\\TDBM\\TDBMObject";
1442
+					$className = isset($this->tableToBeanMap[$table]) ? $this->tableToBeanMap[$table] : "Mouf\\Database\\TDBM\\TDBMObject";
1443 1443
 				}
1444 1444
 
1445 1445
 				// Let's construct the bean
@@ -1468,11 +1468,11 @@  discard block
 block discarded – undo
1468 1468
 	 * @return AbstractTDBMObject|null The object we want, or null if no object matches the filters.
1469 1469
 	 * @throws TDBMException
1470 1470
 	 */
1471
-	public function findObject($mainTable, $filterString=null, array $parameters = array(), array $additionalTablesFetch = array(), $className = null) {
1471
+	public function findObject($mainTable, $filterString = null, array $parameters = array(), array $additionalTablesFetch = array(), $className = null) {
1472 1472
 		$objects = $this->findObjects($mainTable, $filterString, $parameters, null, $additionalTablesFetch, self::MODE_ARRAY, $className);
1473 1473
 		$page = $objects->take(0, 2);
1474 1474
 		$count = $page->count();
1475
-		if ($count > 1) {
1475
+		if ($count>1) {
1476 1476
 			throw new DuplicateRowException("Error while querying an object for table '$mainTable': More than 1 row have been returned, but we should have received at most one.");
1477 1477
 		} elseif ($count === 0) {
1478 1478
 			return null;
@@ -1492,7 +1492,7 @@  discard block
 block discarded – undo
1492 1492
 	 * @return AbstractTDBMObject The object we want
1493 1493
 	 * @throws TDBMException
1494 1494
 	 */
1495
-	public function findObjectOrFail($mainTable, $filterString=null, array $parameters = array(), array $additionalTablesFetch = array(), $className = null) {
1495
+	public function findObjectOrFail($mainTable, $filterString = null, array $parameters = array(), array $additionalTablesFetch = array(), $className = null) {
1496 1496
 		$bean = $this->findObject($mainTable, $filterString, $parameters, $additionalTablesFetch, $className);
1497 1497
 		if ($bean === null) {
1498 1498
 			throw new NoBeanFoundException("No result found for query on table '".$mainTable."'");
Please login to merge, or discard this patch.
Braces   +3 added lines, -2 removed lines patch added patch discarded remove patch
@@ -693,8 +693,9 @@
 block discarded – undo
693 693
 		// Fourth, let's apply the same steps to the orderby_bag
694 694
 		// 4-1 orderby_bag should be an array, if it is a singleton, let's put it in an array.
695 695
 
696
-		if (!is_array($orderby_bag))
697
-		$orderby_bag = array($orderby_bag);
696
+		if (!is_array($orderby_bag)) {
697
+				$orderby_bag = array($orderby_bag);
698
+		}
698 699
 
699 700
 		// 4-2, let's take all the objects out of the orderby bag, and let's make objects from them
700 701
 		$orderby_bag2 = array();
Please login to merge, or discard this patch.
Indentation   +150 added lines, -150 removed lines patch added patch discarded remove patch
@@ -360,7 +360,7 @@  discard block
 block discarded – undo
360 360
 			case TDBMObjectStateEnum::STATE_DETACHED:
361 361
 				throw new TDBMInvalidOperationException('Cannot delete a detached object');
362 362
 			case TDBMObjectStateEnum::STATE_NEW:
363
-                $this->deleteManyToManyRelationships($object);
363
+				$this->deleteManyToManyRelationships($object);
364 364
 				foreach ($object->_getDbRows() as $dbRow) {
365 365
 					$this->removeFromToSaveObjectList($dbRow);
366 366
 				}
@@ -371,7 +371,7 @@  discard block
 block discarded – undo
371 371
 				}
372 372
 			case TDBMObjectStateEnum::STATE_NOT_LOADED:
373 373
 			case TDBMObjectStateEnum::STATE_LOADED:
374
-                $this->deleteManyToManyRelationships($object);
374
+				$this->deleteManyToManyRelationships($object);
375 375
 				// Let's delete db rows, in reverse order.
376 376
 				foreach (array_reverse($object->_getDbRows()) as $dbRow) {
377 377
 					$tableName = $dbRow->_getDbTableName();
@@ -389,44 +389,44 @@  discard block
 block discarded – undo
389 389
 		$object->_setStatus(TDBMObjectStateEnum::STATE_DELETED);
390 390
 	}
391 391
 
392
-    /**
393
-     * Removes all many to many relationships for this object.
394
-     * @param AbstractTDBMObject $object
395
-     */
396
-    private function deleteManyToManyRelationships(AbstractTDBMObject $object) {
397
-        foreach ($object->_getDbRows() as $tableName => $dbRow) {
398
-            $pivotTables = $this->tdbmSchemaAnalyzer->getPivotTableLinkedToTable($tableName);
399
-            foreach ($pivotTables as $pivotTable) {
400
-                $remoteBeans = $object->_getRelationships($pivotTable);
401
-                foreach ($remoteBeans as $remoteBean) {
402
-                    $object->_removeRelationship($pivotTable, $remoteBean);
403
-                }
404
-            }
405
-        }
406
-        $this->persistManyToManyRelationships($object);
407
-    }
408
-
409
-
410
-    /**
411
-     * This function removes the given object from the database. It will also remove all objects relied to the one given
412
-     * by parameter before all.
413
-     *
414
-     * Notice: if the object has a multiple primary key, the function will not work.
415
-     *
416
-     * @param AbstractTDBMObject $objToDelete
417
-     */
418
-    public function deleteCascade(AbstractTDBMObject $objToDelete) {
419
-        $this->deleteAllConstraintWithThisObject($objToDelete);
420
-        $this->delete($objToDelete);
421
-    }
422
-
423
-    /**
424
-     * This function is used only in TDBMService (private function)
425
-     * It will call deleteCascade function foreach object relied with a foreign key to the object given by parameter
426
-     *
427
-     * @param AbstractTDBMObject $obj
428
-     */
429
-    private function deleteAllConstraintWithThisObject(AbstractTDBMObject $obj) {
392
+	/**
393
+	 * Removes all many to many relationships for this object.
394
+	 * @param AbstractTDBMObject $object
395
+	 */
396
+	private function deleteManyToManyRelationships(AbstractTDBMObject $object) {
397
+		foreach ($object->_getDbRows() as $tableName => $dbRow) {
398
+			$pivotTables = $this->tdbmSchemaAnalyzer->getPivotTableLinkedToTable($tableName);
399
+			foreach ($pivotTables as $pivotTable) {
400
+				$remoteBeans = $object->_getRelationships($pivotTable);
401
+				foreach ($remoteBeans as $remoteBean) {
402
+					$object->_removeRelationship($pivotTable, $remoteBean);
403
+				}
404
+			}
405
+		}
406
+		$this->persistManyToManyRelationships($object);
407
+	}
408
+
409
+
410
+	/**
411
+	 * This function removes the given object from the database. It will also remove all objects relied to the one given
412
+	 * by parameter before all.
413
+	 *
414
+	 * Notice: if the object has a multiple primary key, the function will not work.
415
+	 *
416
+	 * @param AbstractTDBMObject $objToDelete
417
+	 */
418
+	public function deleteCascade(AbstractTDBMObject $objToDelete) {
419
+		$this->deleteAllConstraintWithThisObject($objToDelete);
420
+		$this->delete($objToDelete);
421
+	}
422
+
423
+	/**
424
+	 * This function is used only in TDBMService (private function)
425
+	 * It will call deleteCascade function foreach object relied with a foreign key to the object given by parameter
426
+	 *
427
+	 * @param AbstractTDBMObject $obj
428
+	 */
429
+	private function deleteAllConstraintWithThisObject(AbstractTDBMObject $obj) {
430 430
 		$dbRows = $obj->_getDbRows();
431 431
 		foreach ($dbRows as $dbRow) {
432 432
 			$tableName = $dbRow->_getDbTableName();
@@ -445,7 +445,7 @@  discard block
 block discarded – undo
445 445
 				}
446 446
 			}
447 447
 		}
448
-    }
448
+	}
449 449
 
450 450
 	/**
451 451
 	 * This function performs a save() of all the objects that have been modified.
@@ -774,8 +774,8 @@  discard block
 block discarded – undo
774 774
 	}
775 775
 
776 776
 	/**
777
- 	* @param array<string, string> $tableToBeanMap
778
- 	*/
777
+	 * @param array<string, string> $tableToBeanMap
778
+	 */
779 779
 	public function setTableToBeanMap(array $tableToBeanMap) {
780 780
 		$this->tableToBeanMap = $tableToBeanMap;
781 781
 	}
@@ -821,7 +821,7 @@  discard block
 block discarded – undo
821 821
 
822 822
 				// Let's save all references in NEW or DETACHED state (we need their primary key)
823 823
 				foreach ($references as $fkName => $reference) {
824
-                    $refStatus = $reference->_getStatus();
824
+					$refStatus = $reference->_getStatus();
825 825
 					if ($refStatus === TDBMObjectStateEnum::STATE_NEW || $refStatus === TDBMObjectStateEnum::STATE_DETACHED) {
826 826
 						$this->save($reference);
827 827
 					}
@@ -980,94 +980,94 @@  discard block
 block discarded – undo
980 980
 			throw new TDBMInvalidOperationException("This object has been deleted. It cannot be saved.");
981 981
 		}
982 982
 
983
-        // Finally, let's save all the many to many relationships to this bean.
984
-        $this->persistManyToManyRelationships($object);
983
+		// Finally, let's save all the many to many relationships to this bean.
984
+		$this->persistManyToManyRelationships($object);
985 985
 	}
986 986
 
987
-    private function persistManyToManyRelationships(AbstractTDBMObject $object) {
988
-        foreach ($object->_getCachedRelationships() as $pivotTableName => $storage) {
989
-            $tableDescriptor = $this->tdbmSchemaAnalyzer->getSchema()->getTable($pivotTableName);
990
-            list($localFk, $remoteFk) = $this->getPivotTableForeignKeys($pivotTableName, $object);
991
-
992
-            foreach ($storage as $remoteBean) {
993
-                /* @var $remoteBean AbstractTDBMObject */
994
-                $statusArr = $storage[$remoteBean];
995
-                $status = $statusArr['status'];
996
-                $reverse = $statusArr['reverse'];
997
-                if ($reverse) {
998
-                    continue;
999
-                }
1000
-
1001
-                if ($status === 'new') {
1002
-                    $remoteBeanStatus = $remoteBean->_getStatus();
1003
-                    if ($remoteBeanStatus === TDBMObjectStateEnum::STATE_NEW || $remoteBeanStatus === TDBMObjectStateEnum::STATE_DETACHED) {
1004
-                        // Let's save remote bean if needed.
1005
-                        $this->save($remoteBean);
1006
-                    }
987
+	private function persistManyToManyRelationships(AbstractTDBMObject $object) {
988
+		foreach ($object->_getCachedRelationships() as $pivotTableName => $storage) {
989
+			$tableDescriptor = $this->tdbmSchemaAnalyzer->getSchema()->getTable($pivotTableName);
990
+			list($localFk, $remoteFk) = $this->getPivotTableForeignKeys($pivotTableName, $object);
991
+
992
+			foreach ($storage as $remoteBean) {
993
+				/* @var $remoteBean AbstractTDBMObject */
994
+				$statusArr = $storage[$remoteBean];
995
+				$status = $statusArr['status'];
996
+				$reverse = $statusArr['reverse'];
997
+				if ($reverse) {
998
+					continue;
999
+				}
1007 1000
 
1008
-                    $filters = $this->getPivotFilters($object, $remoteBean, $localFk, $remoteFk);
1001
+				if ($status === 'new') {
1002
+					$remoteBeanStatus = $remoteBean->_getStatus();
1003
+					if ($remoteBeanStatus === TDBMObjectStateEnum::STATE_NEW || $remoteBeanStatus === TDBMObjectStateEnum::STATE_DETACHED) {
1004
+						// Let's save remote bean if needed.
1005
+						$this->save($remoteBean);
1006
+					}
1009 1007
 
1010
-                    $types = [];
1008
+					$filters = $this->getPivotFilters($object, $remoteBean, $localFk, $remoteFk);
1011 1009
 
1012
-                    foreach ($filters as $columnName => $value) {
1013
-                        $columnDescriptor = $tableDescriptor->getColumn($columnName);
1014
-                        $types[] = $columnDescriptor->getType();
1015
-                    }
1010
+					$types = [];
1016 1011
 
1017
-                    $this->connection->insert($pivotTableName, $filters, $types);
1012
+					foreach ($filters as $columnName => $value) {
1013
+						$columnDescriptor = $tableDescriptor->getColumn($columnName);
1014
+						$types[] = $columnDescriptor->getType();
1015
+					}
1018 1016
 
1019
-                    // Finally, let's mark relationships as saved.
1020
-                    $statusArr['status'] = 'loaded';
1021
-                    $storage[$remoteBean] = $statusArr;
1022
-                    $remoteStorage = $remoteBean->_getCachedRelationships()[$pivotTableName];
1023
-                    $remoteStatusArr = $remoteStorage[$object];
1024
-                    $remoteStatusArr['status'] = 'loaded';
1025
-                    $remoteStorage[$object] = $remoteStatusArr;
1017
+					$this->connection->insert($pivotTableName, $filters, $types);
1026 1018
 
1027
-                } elseif ($status === 'delete') {
1028
-                    $filters = $this->getPivotFilters($object, $remoteBean, $localFk, $remoteFk);
1019
+					// Finally, let's mark relationships as saved.
1020
+					$statusArr['status'] = 'loaded';
1021
+					$storage[$remoteBean] = $statusArr;
1022
+					$remoteStorage = $remoteBean->_getCachedRelationships()[$pivotTableName];
1023
+					$remoteStatusArr = $remoteStorage[$object];
1024
+					$remoteStatusArr['status'] = 'loaded';
1025
+					$remoteStorage[$object] = $remoteStatusArr;
1029 1026
 
1030
-                    $types = [];
1027
+				} elseif ($status === 'delete') {
1028
+					$filters = $this->getPivotFilters($object, $remoteBean, $localFk, $remoteFk);
1031 1029
 
1032
-                    foreach ($filters as $columnName => $value) {
1033
-                        $columnDescriptor = $tableDescriptor->getColumn($columnName);
1034
-                        $types[] = $columnDescriptor->getType();
1035
-                    }
1030
+					$types = [];
1036 1031
 
1037
-                    $this->connection->delete($pivotTableName, $filters, $types);
1038
-
1039
-                    // Finally, let's remove relationships completely from bean.
1040
-                    $storage->detach($remoteBean);
1041
-                    $remoteBean->_getCachedRelationships()[$pivotTableName]->detach($object);
1042
-                }
1043
-            }
1044
-        }
1045
-    }
1046
-
1047
-    private function getPivotFilters(AbstractTDBMObject $localBean, AbstractTDBMObject $remoteBean, ForeignKeyConstraint $localFk, ForeignKeyConstraint $remoteFk) {
1048
-        $localBeanPk = $this->getPrimaryKeyValues($localBean);
1049
-        $remoteBeanPk = $this->getPrimaryKeyValues($remoteBean);
1050
-        $localColumns = $localFk->getLocalColumns();
1051
-        $remoteColumns = $remoteFk->getLocalColumns();
1052
-
1053
-        $localFilters = array_combine($localColumns, $localBeanPk);
1054
-        $remoteFilters = array_combine($remoteColumns, $remoteBeanPk);
1055
-
1056
-        return array_merge($localFilters, $remoteFilters);
1057
-    }
1058
-
1059
-    /**
1060
-     * Returns the "values" of the primary key.
1061
-     * This returns the primary key from the $primaryKey attribute, not the one stored in the columns.
1062
-     *
1063
-     * @param AbstractTDBMObject $bean
1064
-     * @return array numerically indexed array of values.
1065
-     */
1066
-    private function getPrimaryKeyValues(AbstractTDBMObject $bean) {
1067
-        $dbRows = $bean->_getDbRows();
1068
-        $dbRow = reset($dbRows);
1069
-        return array_values($dbRow->_getPrimaryKeys());
1070
-    }
1032
+					foreach ($filters as $columnName => $value) {
1033
+						$columnDescriptor = $tableDescriptor->getColumn($columnName);
1034
+						$types[] = $columnDescriptor->getType();
1035
+					}
1036
+
1037
+					$this->connection->delete($pivotTableName, $filters, $types);
1038
+
1039
+					// Finally, let's remove relationships completely from bean.
1040
+					$storage->detach($remoteBean);
1041
+					$remoteBean->_getCachedRelationships()[$pivotTableName]->detach($object);
1042
+				}
1043
+			}
1044
+		}
1045
+	}
1046
+
1047
+	private function getPivotFilters(AbstractTDBMObject $localBean, AbstractTDBMObject $remoteBean, ForeignKeyConstraint $localFk, ForeignKeyConstraint $remoteFk) {
1048
+		$localBeanPk = $this->getPrimaryKeyValues($localBean);
1049
+		$remoteBeanPk = $this->getPrimaryKeyValues($remoteBean);
1050
+		$localColumns = $localFk->getLocalColumns();
1051
+		$remoteColumns = $remoteFk->getLocalColumns();
1052
+
1053
+		$localFilters = array_combine($localColumns, $localBeanPk);
1054
+		$remoteFilters = array_combine($remoteColumns, $remoteBeanPk);
1055
+
1056
+		return array_merge($localFilters, $remoteFilters);
1057
+	}
1058
+
1059
+	/**
1060
+	 * Returns the "values" of the primary key.
1061
+	 * This returns the primary key from the $primaryKey attribute, not the one stored in the columns.
1062
+	 *
1063
+	 * @param AbstractTDBMObject $bean
1064
+	 * @return array numerically indexed array of values.
1065
+	 */
1066
+	private function getPrimaryKeyValues(AbstractTDBMObject $bean) {
1067
+		$dbRows = $bean->_getDbRows();
1068
+		$dbRow = reset($dbRows);
1069
+		return array_values($dbRow->_getPrimaryKeys());
1070
+	}
1071 1071
 
1072 1072
 	/**
1073 1073
 	 * Returns a unique hash used to store the object based on its primary key.
@@ -1549,41 +1549,41 @@  discard block
 block discarded – undo
1549 1549
 	 */
1550 1550
 	public function _getRelatedBeans($pivotTableName, AbstractTDBMObject $bean) {
1551 1551
 
1552
-        list($localFk, $remoteFk) = $this->getPivotTableForeignKeys($pivotTableName, $bean);
1553
-        /* @var $localFk ForeignKeyConstraint */
1554
-        /* @var $remoteFk ForeignKeyConstraint */
1555
-        $remoteTable = $remoteFk->getForeignTableName();
1552
+		list($localFk, $remoteFk) = $this->getPivotTableForeignKeys($pivotTableName, $bean);
1553
+		/* @var $localFk ForeignKeyConstraint */
1554
+		/* @var $remoteFk ForeignKeyConstraint */
1555
+		$remoteTable = $remoteFk->getForeignTableName();
1556 1556
 
1557 1557
 
1558
-        $primaryKeys = $this->getPrimaryKeyValues($bean);
1559
-        $columnNames = array_map(function($name) use ($pivotTableName) { return $pivotTableName.'.'.$name; }, $localFk->getLocalColumns());
1558
+		$primaryKeys = $this->getPrimaryKeyValues($bean);
1559
+		$columnNames = array_map(function($name) use ($pivotTableName) { return $pivotTableName.'.'.$name; }, $localFk->getLocalColumns());
1560 1560
 
1561
-        $filter = array_combine($columnNames, $primaryKeys);
1561
+		$filter = array_combine($columnNames, $primaryKeys);
1562 1562
 
1563
-        return $this->findObjects($remoteTable, $filter);
1563
+		return $this->findObjects($remoteTable, $filter);
1564 1564
 	}
1565 1565
 
1566
-    /**
1567
-     * @param $pivotTableName
1568
-     * @param AbstractTDBMObject $bean The LOCAL bean
1569
-     * @return ForeignKeyConstraint[] First item: the LOCAL bean, second item: the REMOTE bean.
1570
-     * @throws TDBMException
1571
-     */
1572
-    private function getPivotTableForeignKeys($pivotTableName, AbstractTDBMObject $bean) {
1573
-        $fks = array_values($this->tdbmSchemaAnalyzer->getSchema()->getTable($pivotTableName)->getForeignKeys());
1574
-        $table1 = $fks[0]->getForeignTableName();
1575
-        $table2 = $fks[1]->getForeignTableName();
1576
-
1577
-        $beanTables = array_map(function(DbRow $dbRow) { return $dbRow->_getDbTableName(); }, $bean->_getDbRows());
1578
-
1579
-        if (in_array($table1, $beanTables)) {
1580
-            return [$fks[0], $fks[1]];
1581
-        } elseif (in_array($table2, $beanTables)) {
1582
-            return [$fks[1], $fks[0]];
1583
-        } else {
1584
-            throw new TDBMException("Unexpected bean type in getPivotTableForeignKeys. Awaiting beans from table {$table1} and {$table2} for pivot table {$pivotTableName}");
1585
-        }
1586
-    }
1566
+	/**
1567
+	 * @param $pivotTableName
1568
+	 * @param AbstractTDBMObject $bean The LOCAL bean
1569
+	 * @return ForeignKeyConstraint[] First item: the LOCAL bean, second item: the REMOTE bean.
1570
+	 * @throws TDBMException
1571
+	 */
1572
+	private function getPivotTableForeignKeys($pivotTableName, AbstractTDBMObject $bean) {
1573
+		$fks = array_values($this->tdbmSchemaAnalyzer->getSchema()->getTable($pivotTableName)->getForeignKeys());
1574
+		$table1 = $fks[0]->getForeignTableName();
1575
+		$table2 = $fks[1]->getForeignTableName();
1576
+
1577
+		$beanTables = array_map(function(DbRow $dbRow) { return $dbRow->_getDbTableName(); }, $bean->_getDbRows());
1578
+
1579
+		if (in_array($table1, $beanTables)) {
1580
+			return [$fks[0], $fks[1]];
1581
+		} elseif (in_array($table2, $beanTables)) {
1582
+			return [$fks[1], $fks[0]];
1583
+		} else {
1584
+			throw new TDBMException("Unexpected bean type in getPivotTableForeignKeys. Awaiting beans from table {$table1} and {$table2} for pivot table {$pivotTableName}");
1585
+		}
1586
+	}
1587 1587
 
1588 1588
 	/**
1589 1589
 	 * Returns a list of pivot tables linked to $bean.
Please login to merge, or discard this patch.
src/Mouf/Database/TDBM/MapIterator.php 2 patches
Indentation   +71 added lines, -71 removed lines patch added patch discarded remove patch
@@ -9,85 +9,85 @@
 block discarded – undo
9 9
  */
10 10
 class MapIterator implements Iterator {
11 11
 
12
-    /**
13
-     * @var Iterator
14
-     */
15
-    protected $iterator;
12
+	/**
13
+	 * @var Iterator
14
+	 */
15
+	protected $iterator;
16 16
 
17
-    /**
18
-     * @var callable Modifies the current item in iterator
19
-     */
20
-    protected $callable;
17
+	/**
18
+	 * @var callable Modifies the current item in iterator
19
+	 */
20
+	protected $callable;
21 21
 
22
-    /**
23
-     * @param $iterator Iterator|array
24
-     * @param $callable callable This can have two parameters
25
-     * @throws TDBMException
26
-     */
27
-    public function __construct($iterator, callable $callable) {
28
-        if (is_array($iterator)) {
29
-            $this->iterator = new \ArrayIterator($iterator);
30
-        }
31
-        elseif (!($iterator instanceof Iterator))
32
-        {
33
-            throw new TDBMException("\$iterator parameter must be an instance of Iterator");
34
-        }
35
-        else
36
-        {
37
-            $this->iterator = $iterator;
38
-        }
22
+	/**
23
+	 * @param $iterator Iterator|array
24
+	 * @param $callable callable This can have two parameters
25
+	 * @throws TDBMException
26
+	 */
27
+	public function __construct($iterator, callable $callable) {
28
+		if (is_array($iterator)) {
29
+			$this->iterator = new \ArrayIterator($iterator);
30
+		}
31
+		elseif (!($iterator instanceof Iterator))
32
+		{
33
+			throw new TDBMException("\$iterator parameter must be an instance of Iterator");
34
+		}
35
+		else
36
+		{
37
+			$this->iterator = $iterator;
38
+		}
39 39
 
40
-        if ($callable instanceof \Closure) {
41
-            // make sure there's one argument
42
-            $reflection = new \ReflectionObject($callable);
43
-            if ($reflection->hasMethod('__invoke')) {
44
-                $method = $reflection->getMethod('__invoke');
45
-                if ($method->getNumberOfParameters() !== 1) {
46
-                    throw new TDBMException("\$callable must accept one and only one parameter.");
47
-                }
48
-            }
49
-        }
40
+		if ($callable instanceof \Closure) {
41
+			// make sure there's one argument
42
+			$reflection = new \ReflectionObject($callable);
43
+			if ($reflection->hasMethod('__invoke')) {
44
+				$method = $reflection->getMethod('__invoke');
45
+				if ($method->getNumberOfParameters() !== 1) {
46
+					throw new TDBMException("\$callable must accept one and only one parameter.");
47
+				}
48
+			}
49
+		}
50 50
 
51
-        $this->callable = $callable;
52
-    }
51
+		$this->callable = $callable;
52
+	}
53 53
 
54
-    /**
55
-     * Alters the current item with $this->callable and returns a new item.
56
-     * Be careful with your types as we can't do static type checking here!
57
-     * @return mixed
58
-     */
59
-    public function current()
60
-    {
61
-        $callable = $this->callable;
62
-        return $callable($this->iterator->current());
63
-    }
54
+	/**
55
+	 * Alters the current item with $this->callable and returns a new item.
56
+	 * Be careful with your types as we can't do static type checking here!
57
+	 * @return mixed
58
+	 */
59
+	public function current()
60
+	{
61
+		$callable = $this->callable;
62
+		return $callable($this->iterator->current());
63
+	}
64 64
 
65
-    public function next()
66
-    {
67
-        $this->iterator->next();
68
-    }
65
+	public function next()
66
+	{
67
+		$this->iterator->next();
68
+	}
69 69
 
70
-    public function key()
71
-    {
72
-        return $this->iterator->key();
73
-    }
70
+	public function key()
71
+	{
72
+		return $this->iterator->key();
73
+	}
74 74
 
75
-    public function valid()
76
-    {
77
-        return $this->iterator->valid();
78
-    }
75
+	public function valid()
76
+	{
77
+		return $this->iterator->valid();
78
+	}
79 79
 
80
-    public function rewind()
81
-    {
82
-        $this->iterator->rewind();
83
-    }
80
+	public function rewind()
81
+	{
82
+		$this->iterator->rewind();
83
+	}
84 84
 
85
-    /**
86
-     * Casts the iterator to a PHP array.
87
-     *
88
-     * @return array
89
-     */
90
-    public function toArray() {
91
-        return iterator_to_array($this);
92
-    }
85
+	/**
86
+	 * Casts the iterator to a PHP array.
87
+	 *
88
+	 * @return array
89
+	 */
90
+	public function toArray() {
91
+		return iterator_to_array($this);
92
+	}
93 93
 }
Please login to merge, or discard this patch.
Braces   +2 added lines, -4 removed lines patch added patch discarded remove patch
@@ -27,12 +27,10 @@
 block discarded – undo
27 27
     public function __construct($iterator, callable $callable) {
28 28
         if (is_array($iterator)) {
29 29
             $this->iterator = new \ArrayIterator($iterator);
30
-        }
31
-        elseif (!($iterator instanceof Iterator))
30
+        } elseif (!($iterator instanceof Iterator))
32 31
         {
33 32
             throw new TDBMException("\$iterator parameter must be an instance of Iterator");
34
-        }
35
-        else
33
+        } else
36 34
         {
37 35
             $this->iterator = $iterator;
38 36
         }
Please login to merge, or discard this patch.
src/Mouf/Database/TDBM/DbRow.php 3 patches
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -94,7 +94,7 @@  discard block
 block discarded – undo
94 94
 	 * @throws TDBMException
95 95
 	 * @throws TDBMInvalidOperationException
96 96
 	 */
97
-	public function __construct(AbstractTDBMObject $object, $table_name, array $primaryKeys=array(), TDBMService $tdbmService=null, array $dbRow = array()) {
97
+	public function __construct(AbstractTDBMObject $object, $table_name, array $primaryKeys = array(), TDBMService $tdbmService = null, array $dbRow = array()) {
98 98
 		$this->object = $object;
99 99
 		$this->dbTableName = $table_name;
100 100
 
@@ -141,7 +141,7 @@  discard block
 block discarded – undo
141 141
 	 * $status = TDBMObjectStateEnum::STATE_LOADED when the object is cached in memory.
142 142
 	 * @param string $state
143 143
 	 */
144
-	public function _setStatus($state){
144
+	public function _setStatus($state) {
145 145
 		$this->status = $state;
146 146
 	}
147 147
 
@@ -163,7 +163,7 @@  discard block
 block discarded – undo
163 163
 			$sql = "SELECT * FROM ".$connection->quoteIdentifier($this->dbTableName)." WHERE ".$sql_where;
164 164
 			$result = $connection->executeQuery($sql, $parameters);
165 165
 
166
-			if ($result->rowCount()==0)
166
+			if ($result->rowCount() == 0)
167 167
 			{
168 168
 				throw new TDBMException("Could not retrieve object from table \"$this->dbTableName\" with ID \"".$this->TDBMObject_id."\".");
169 169
 			}
@@ -326,7 +326,7 @@  discard block
 block discarded – undo
326 326
     /**
327 327
      * Override the native php clone function for TDBMObjects
328 328
      */
329
-    public function __clone(){
329
+    public function __clone() {
330 330
         $this->_dbLoadIfNotLoaded();
331 331
         //First lets set the status to new (to enter the save function)
332 332
         $this->status = TDBMObjectStateEnum::STATE_NEW;
@@ -358,7 +358,7 @@  discard block
 block discarded – undo
358 358
             $pkValues = array_values($firstRefDbRow->_getPrimaryKeys());
359 359
             $localColumns = $fk->getLocalColumns();
360 360
 
361
-            for ($i=0, $count=count($localColumns); $i<$count; $i++) {
361
+            for ($i = 0, $count = count($localColumns); $i<$count; $i++) {
362 362
                 $dbRow[$localColumns[$i]] = $pkValues[$i];
363 363
             }
364 364
         }
Please login to merge, or discard this patch.
Indentation   +52 added lines, -52 removed lines patch added patch discarded remove patch
@@ -247,36 +247,36 @@  discard block
 block discarded – undo
247 247
 	public function setRef($foreignKeyName, AbstractTDBMObject $bean = null) {
248 248
 		$this->references[$foreignKeyName] = $bean;
249 249
 
250
-        if ($this->tdbmService !== null && $this->status === TDBMObjectStateEnum::STATE_LOADED) {
251
-            $this->status = TDBMObjectStateEnum::STATE_DIRTY;
252
-            $this->tdbmService->_addToToSaveObjectList($this);
253
-        }
250
+		if ($this->tdbmService !== null && $this->status === TDBMObjectStateEnum::STATE_LOADED) {
251
+			$this->status = TDBMObjectStateEnum::STATE_DIRTY;
252
+			$this->tdbmService->_addToToSaveObjectList($this);
253
+		}
254 254
 	}
255 255
 
256
-    /**
257
-     * @param string $foreignKeyName A unique name for this reference
258
-     * @return AbstractTDBMObject|null
259
-     */
260
-    public function getRef($foreignKeyName) {
256
+	/**
257
+	 * @param string $foreignKeyName A unique name for this reference
258
+	 * @return AbstractTDBMObject|null
259
+	 */
260
+	public function getRef($foreignKeyName) {
261 261
 		if (isset($this->references[$foreignKeyName])) {
262 262
 			return $this->references[$foreignKeyName];
263 263
 		} elseif ($this->status === TDBMObjectStateEnum::STATE_NEW) {
264
-            // If the object is new and has no property, then it has to be empty.
265
-            return null;
266
-        } else {
267
-            $this->_dbLoadIfNotLoaded();
264
+			// If the object is new and has no property, then it has to be empty.
265
+			return null;
266
+		} else {
267
+			$this->_dbLoadIfNotLoaded();
268 268
 
269
-            // Let's match the name of the columns to the primary key values
270
-            $fk = $this->tdbmService->_getForeignKeyByName($this->dbTableName, $foreignKeyName);
269
+			// Let's match the name of the columns to the primary key values
270
+			$fk = $this->tdbmService->_getForeignKeyByName($this->dbTableName, $foreignKeyName);
271 271
 
272
-            $values = [];
273
-            foreach ($fk->getLocalColumns() as $column) {
274
-                $values[] = $this->dbRow[$column];
275
-            }
272
+			$values = [];
273
+			foreach ($fk->getLocalColumns() as $column) {
274
+				$values[] = $this->dbRow[$column];
275
+			}
276 276
 
277
-            $filter = array_combine($this->tdbmService->getPrimaryKeyColumns($fk->getForeignTableName()), $values);
277
+			$filter = array_combine($this->tdbmService->getPrimaryKeyColumns($fk->getForeignTableName()), $values);
278 278
 
279
-            return $this->tdbmService->findObjectByPk($fk->getForeignTableName(), $filter, [], true);
279
+			return $this->tdbmService->findObjectByPk($fk->getForeignTableName(), $filter, [], true);
280 280
 		}
281 281
 	}
282 282
 
@@ -323,26 +323,26 @@  discard block
 block discarded – undo
323 323
 		return array($this->dbTableName);
324 324
 	}
325 325
 
326
-    /**
327
-     * Override the native php clone function for TDBMObjects
328
-     */
329
-    public function __clone(){
326
+	/**
327
+	 * Override the native php clone function for TDBMObjects
328
+	 */
329
+	public function __clone(){
330 330
 		// Let's load the row (before we lose the ID!)
331 331
 		$this->_dbLoadIfNotLoaded();
332 332
 
333 333
 		//Let's set the status to detached
334
-        $this->status = TDBMObjectStateEnum::STATE_DETACHED;
334
+		$this->status = TDBMObjectStateEnum::STATE_DETACHED;
335 335
 
336 336
 		$this->primaryKeys = null;
337 337
 
338
-        //Now unset the PK from the row
338
+		//Now unset the PK from the row
339 339
 		if ($this->tdbmService) {
340 340
 			$pk_array = $this->tdbmService->getPrimaryKeyColumns($this->dbTableName);
341 341
 			foreach ($pk_array as $pk) {
342 342
 				$this->dbRow[$pk] = null;
343 343
 			}
344 344
 		}
345
-    }
345
+	}
346 346
 
347 347
 	/**
348 348
 	 * Returns raw database row.
@@ -350,35 +350,35 @@  discard block
 block discarded – undo
350 350
 	 * @return array
351 351
 	 */
352 352
 	public function _getDbRow() {
353
-        // Let's merge $dbRow and $references
354
-        $dbRow = $this->dbRow;
355
-
356
-        foreach ($this->references as $foreignKeyName => $reference) {
357
-            // Let's match the name of the columns to the primary key values
358
-            $fk = $this->tdbmService->_getForeignKeyByName($this->dbTableName, $foreignKeyName);
359
-            $refDbRows = $reference->_getDbRows();
360
-            $firstRefDbRow = reset($refDbRows);
361
-            $pkValues = array_values($firstRefDbRow->_getPrimaryKeys());
362
-            $localColumns = $fk->getLocalColumns();
363
-
364
-            for ($i=0, $count=count($localColumns); $i<$count; $i++) {
365
-                $dbRow[$localColumns[$i]] = $pkValues[$i];
366
-            }
367
-        }
353
+		// Let's merge $dbRow and $references
354
+		$dbRow = $this->dbRow;
355
+
356
+		foreach ($this->references as $foreignKeyName => $reference) {
357
+			// Let's match the name of the columns to the primary key values
358
+			$fk = $this->tdbmService->_getForeignKeyByName($this->dbTableName, $foreignKeyName);
359
+			$refDbRows = $reference->_getDbRows();
360
+			$firstRefDbRow = reset($refDbRows);
361
+			$pkValues = array_values($firstRefDbRow->_getPrimaryKeys());
362
+			$localColumns = $fk->getLocalColumns();
363
+
364
+			for ($i=0, $count=count($localColumns); $i<$count; $i++) {
365
+				$dbRow[$localColumns[$i]] = $pkValues[$i];
366
+			}
367
+		}
368 368
 
369 369
 		return $dbRow;
370 370
 	}
371 371
 
372
-    /**
373
-     * Returns references array.
374
-     *
375
-     * @return AbstractTDBMObject[]
376
-     */
377
-    public function _getReferences() {
378
-        return $this->references;
379
-    }
372
+	/**
373
+	 * Returns references array.
374
+	 *
375
+	 * @return AbstractTDBMObject[]
376
+	 */
377
+	public function _getReferences() {
378
+		return $this->references;
379
+	}
380 380
 
381
-    /**
381
+	/**
382 382
 	 * @return array
383 383
 	 */
384 384
 	public function _getPrimaryKeys()
Please login to merge, or discard this patch.
Unused Use Statements   -1 removed lines patch added patch discarded remove patch
@@ -18,7 +18,6 @@
 block discarded – undo
18 18
  along with this program; if not, write to the Free Software
19 19
  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
20 20
  */
21
-use Doctrine\DBAL\Driver\Connection;
22 21
 
23 22
 
24 23
 /**
Please login to merge, or discard this patch.
src/Mouf/Database/TDBM/Utils/AbstractBeanPropertyDescriptor.php 1 patch
Indentation   +100 added lines, -100 removed lines patch added patch discarded remove patch
@@ -13,104 +13,104 @@
 block discarded – undo
13 13
 abstract class AbstractBeanPropertyDescriptor
14 14
 {
15 15
 
16
-    /**
17
-     * @var Table
18
-     */
19
-    protected $table;
20
-
21
-    /**
22
-     * Whether to use the more complex name in case of conflict.
23
-     * @var bool
24
-     */
25
-    protected $alternativeName = false;
26
-
27
-    /**
28
-     * @param Table $table
29
-     */
30
-    public function __construct(Table $table)
31
-    {
32
-        $this->table = $table;
33
-    }
34
-
35
-
36
-    /**
37
-     * Use the more complex name in case of conflict.
38
-     */
39
-    public function useAlternativeName()
40
-    {
41
-        $this->alternativeName = true;
42
-    }
43
-
44
-    /**
45
-     * Returns the name of the class linked to this property or null if this is not a foreign key
46
-     * @return null|string
47
-     */
48
-    abstract public function getClassName();
49
-
50
-    /**
51
-     * Returns the param annotation for this property (useful for constructor).
52
-     *
53
-     * @return string
54
-     */
55
-    abstract public function getParamAnnotation();
56
-
57
-    public function getVariableName() {
58
-        return '$'.$this->getLowerCamelCaseName();
59
-    }
60
-
61
-    public function getLowerCamelCaseName() {
62
-        return TDBMDaoGenerator::toVariableName($this->getUpperCamelCaseName());
63
-    }
64
-
65
-    abstract public function getUpperCamelCaseName();
66
-
67
-    public function getSetterName() {
68
-        return 'set'.$this->getUpperCamelCaseName();
69
-    }
70
-
71
-    public function getGetterName() {
72
-        return 'get'.$this->getUpperCamelCaseName();
73
-    }
74
-
75
-    /**
76
-     * Returns the PHP code used in the ben constructor for this property.
77
-     * @return string
78
-     */
79
-    public function getConstructorAssignCode() {
80
-        $str = '        $this->%s(%s);';
81
-        return sprintf($str, $this->getSetterName(), $this->getVariableName());
82
-    }
83
-
84
-    /**
85
-     * Returns true if the property is compulsory (and therefore should be fetched in the constructor).
86
-     * @return bool
87
-     */
88
-    abstract public function isCompulsory();
89
-
90
-    /**
91
-     * Returns true if the property is the primary key
92
-     * @return bool
93
-     */
94
-    abstract public function isPrimaryKey();
95
-
96
-    /**
97
-     * @return Table
98
-     */
99
-    public function getTable()
100
-    {
101
-        return $this->table;
102
-    }
103
-
104
-    /**
105
-     * Returns the PHP code for getters and setters
106
-     * @return string
107
-     */
108
-    abstract public function getGetterSetterCode();
109
-
110
-    /**
111
-     * Returns the part of code useful when doing json serialization.
112
-     *
113
-     * @return string
114
-     */
115
-    abstract public function getJsonSerializeCode();
16
+	/**
17
+	 * @var Table
18
+	 */
19
+	protected $table;
20
+
21
+	/**
22
+	 * Whether to use the more complex name in case of conflict.
23
+	 * @var bool
24
+	 */
25
+	protected $alternativeName = false;
26
+
27
+	/**
28
+	 * @param Table $table
29
+	 */
30
+	public function __construct(Table $table)
31
+	{
32
+		$this->table = $table;
33
+	}
34
+
35
+
36
+	/**
37
+	 * Use the more complex name in case of conflict.
38
+	 */
39
+	public function useAlternativeName()
40
+	{
41
+		$this->alternativeName = true;
42
+	}
43
+
44
+	/**
45
+	 * Returns the name of the class linked to this property or null if this is not a foreign key
46
+	 * @return null|string
47
+	 */
48
+	abstract public function getClassName();
49
+
50
+	/**
51
+	 * Returns the param annotation for this property (useful for constructor).
52
+	 *
53
+	 * @return string
54
+	 */
55
+	abstract public function getParamAnnotation();
56
+
57
+	public function getVariableName() {
58
+		return '$'.$this->getLowerCamelCaseName();
59
+	}
60
+
61
+	public function getLowerCamelCaseName() {
62
+		return TDBMDaoGenerator::toVariableName($this->getUpperCamelCaseName());
63
+	}
64
+
65
+	abstract public function getUpperCamelCaseName();
66
+
67
+	public function getSetterName() {
68
+		return 'set'.$this->getUpperCamelCaseName();
69
+	}
70
+
71
+	public function getGetterName() {
72
+		return 'get'.$this->getUpperCamelCaseName();
73
+	}
74
+
75
+	/**
76
+	 * Returns the PHP code used in the ben constructor for this property.
77
+	 * @return string
78
+	 */
79
+	public function getConstructorAssignCode() {
80
+		$str = '        $this->%s(%s);';
81
+		return sprintf($str, $this->getSetterName(), $this->getVariableName());
82
+	}
83
+
84
+	/**
85
+	 * Returns true if the property is compulsory (and therefore should be fetched in the constructor).
86
+	 * @return bool
87
+	 */
88
+	abstract public function isCompulsory();
89
+
90
+	/**
91
+	 * Returns true if the property is the primary key
92
+	 * @return bool
93
+	 */
94
+	abstract public function isPrimaryKey();
95
+
96
+	/**
97
+	 * @return Table
98
+	 */
99
+	public function getTable()
100
+	{
101
+		return $this->table;
102
+	}
103
+
104
+	/**
105
+	 * Returns the PHP code for getters and setters
106
+	 * @return string
107
+	 */
108
+	abstract public function getGetterSetterCode();
109
+
110
+	/**
111
+	 * Returns the part of code useful when doing json serialization.
112
+	 *
113
+	 * @return string
114
+	 */
115
+	abstract public function getJsonSerializeCode();
116 116
 }
117 117
\ No newline at end of file
Please login to merge, or discard this patch.
src/Mouf/Database/TDBM/AbstractTDBMObject.php 3 patches
Indentation   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -537,10 +537,10 @@  discard block
 block discarded – undo
537 537
 		return $sql_where;
538 538
 	}
539 539
 
540
-    /**
541
-     * Override the native php clone function for TDBMObjects
542
-     */
543
-    public function __clone() {
540
+	/**
541
+	 * Override the native php clone function for TDBMObjects
542
+	 */
543
+	public function __clone() {
544 544
 		// Let's clone the many to many relationships
545 545
 		if ($this->status === TDBMObjectStateEnum::STATE_DETACHED) {
546 546
 			$pivotTableList = array_keys($this->relationships);
@@ -566,10 +566,10 @@  discard block
 block discarded – undo
566 566
 		}
567 567
 
568 568
 		// Let's set the status to new (to enter the save function)
569
-        $this->status = TDBMObjectStateEnum::STATE_DETACHED;
569
+		$this->status = TDBMObjectStateEnum::STATE_DETACHED;
570 570
 
571 571
 
572
-    }
572
+	}
573 573
 
574 574
 	/**
575 575
 	 * Returns raw database rows.
Please login to merge, or discard this patch.
Unused Use Statements   -1 removed lines patch added patch discarded remove patch
@@ -18,7 +18,6 @@
 block discarded – undo
18 18
  along with this program; if not, write to the Free Software
19 19
  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
20 20
  */
21
-use Doctrine\DBAL\Driver\Connection;
22 21
 
23 22
 
24 23
 /**
Please login to merge, or discard this patch.
Spacing   +11 added lines, -11 removed lines patch added patch discarded remove patch
@@ -75,7 +75,7 @@  discard block
 block discarded – undo
75 75
 	 * @throws TDBMException
76 76
 	 * @throws TDBMInvalidOperationException
77 77
 	 */
78
-	public function __construct($tableName=null, array $primaryKeys=array(), TDBMService $tdbmService=null) {
78
+	public function __construct($tableName = null, array $primaryKeys = array(), TDBMService $tdbmService = null) {
79 79
 		// FIXME: lazy loading should be forbidden on tables with inheritance and dynamic type assignation...
80 80
 		if (!empty($tableName)) {
81 81
 			$this->dbRows[$tableName] = new DbRow($this, $tableName, $primaryKeys, $tdbmService);
@@ -159,7 +159,7 @@  discard block
 block discarded – undo
159 159
 	 * $status = TDBMObjectStateEnum::STATE_LOADED when the object is cached in memory.
160 160
 	 * @param string $state
161 161
 	 */
162
-	public function _setStatus($state){
162
+	public function _setStatus($state) {
163 163
 		$this->status = $state;
164 164
 
165 165
 		// TODO: we might ignore the loaded => dirty state here! dirty status comes from the db_row itself.
@@ -170,7 +170,7 @@  discard block
 block discarded – undo
170 170
 
171 171
 	public function get($var, $tableName = null) {
172 172
 		if ($tableName === null) {
173
-			if (count($this->dbRows) > 1) {
173
+			if (count($this->dbRows)>1) {
174 174
 				throw new TDBMException('This object is based on several tables. You must specify which table you are retrieving data from.');
175 175
 			} elseif (count($this->dbRows) === 1) {
176 176
 				$tableName = array_keys($this->dbRows)[0];
@@ -196,7 +196,7 @@  discard block
 block discarded – undo
196 196
 	 */
197 197
 	public function has($var, $tableName = null) {
198 198
 		if ($tableName === null) {
199
-			if (count($this->dbRows) > 1) {
199
+			if (count($this->dbRows)>1) {
200 200
 				throw new TDBMException('This object is based on several tables. You must specify which table you are retrieving data from.');
201 201
 			} elseif (count($this->dbRows) === 1) {
202 202
 				$tableName = array_keys($this->dbRows)[0];
@@ -216,7 +216,7 @@  discard block
 block discarded – undo
216 216
 	
217 217
 	public function set($var, $value, $tableName = null) {
218 218
 		if ($tableName === null) {
219
-			if (count($this->dbRows) > 1) {
219
+			if (count($this->dbRows)>1) {
220 220
 				throw new TDBMException('This object is based on several tables. You must specify which table you are retrieving data from.');
221 221
 			} elseif (count($this->dbRows) === 1) {
222 222
 				$tableName = array_keys($this->dbRows)[0];
@@ -241,7 +241,7 @@  discard block
 block discarded – undo
241 241
 	 */
242 242
 	public function setRef($foreignKeyName, AbstractTDBMObject $bean, $tableName = null) {
243 243
 		if ($tableName === null) {
244
-			if (count($this->dbRows) > 1) {
244
+			if (count($this->dbRows)>1) {
245 245
 				throw new TDBMException('This object is based on several tables. You must specify which table you are retrieving data from.');
246 246
 			} elseif (count($this->dbRows) === 1) {
247 247
 				$tableName = array_keys($this->dbRows)[0];
@@ -266,7 +266,7 @@  discard block
 block discarded – undo
266 266
 	 */
267 267
 	public function getRef($foreignKeyName, $tableName = null) {
268 268
 		if ($tableName === null) {
269
-			if (count($this->dbRows) > 1) {
269
+			if (count($this->dbRows)>1) {
270 270
 				throw new TDBMException('This object is based on several tables. You must specify which table you are retrieving data from.');
271 271
 			} elseif (count($this->dbRows) === 1) {
272 272
 				$tableName = array_keys($this->dbRows)[0];
@@ -382,13 +382,13 @@  discard block
 block discarded – undo
382 382
 	 */
383 383
 	private function setRelationship($pivotTableName, AbstractTDBMObject $remoteBean, $status) {
384 384
 		$storage = $this->getRelationshipStorage($pivotTableName);
385
-		$storage->attach($remoteBean, [ 'status' => $status, 'reverse' => false ]);
385
+		$storage->attach($remoteBean, ['status' => $status, 'reverse' => false]);
386 386
 		if ($this->status === TDBMObjectStateEnum::STATE_LOADED) {
387 387
 			$this->_setStatus(TDBMObjectStateEnum::STATE_DIRTY);
388 388
 		}
389 389
 
390 390
 		$remoteStorage = $remoteBean->getRelationshipStorage($pivotTableName);
391
-		$remoteStorage->attach($this, [ 'status' => $status, 'reverse' => true ]);
391
+		$remoteStorage->attach($this, ['status' => $status, 'reverse' => true]);
392 392
 	}
393 393
 
394 394
 	/**
@@ -458,7 +458,7 @@  discard block
 block discarded – undo
458 458
 				$metadata = $storage[$remoteBean];
459 459
 
460 460
 				$remoteStorage = $remoteBean->getRelationshipStorage($pivotTable);
461
-				$remoteStorage->attach($this, [ 'status' => $metadata['status'], 'reverse' => !$metadata['reverse'] ]);
461
+				$remoteStorage->attach($this, ['status' => $metadata['status'], 'reverse' => !$metadata['reverse']]);
462 462
 			}
463 463
 		}
464 464
 
@@ -485,7 +485,7 @@  discard block
 block discarded – undo
485 485
 	private function registerTable($tableName) {
486 486
 		$dbRow = new DbRow($this, $tableName);
487 487
 
488
-		if (in_array($this->status, [ TDBMObjectStateEnum::STATE_NOT_LOADED, TDBMObjectStateEnum::STATE_LOADED, TDBMObjectStateEnum::STATE_DIRTY ])) {
488
+		if (in_array($this->status, [TDBMObjectStateEnum::STATE_NOT_LOADED, TDBMObjectStateEnum::STATE_LOADED, TDBMObjectStateEnum::STATE_DIRTY])) {
489 489
 			// Let's get the primary key for the new table
490 490
 			$anotherDbRow = array_values($this->dbRows)[0];
491 491
 			/* @var $anotherDbRow DbRow */
Please login to merge, or discard this patch.