[!!!][BUGFIX] Introduce explicit saving of modified domain objects
authorThomas Maroschik <tmaroschik@dfau.de>
Mon, 15 Apr 2013 15:48:35 +0000 (17:48 +0200)
committerAnja Leichsenring <aleichsenring@ab-softlab.de>
Thu, 18 Apr 2013 15:07:12 +0000 (17:07 +0200)
commitc040066f08697141cceb42d2ede7114e8b4ae30b
treea43698b5e03b3fa0de8019a007215ebbb78b1a3e
parent66bf7ca19eda0f9348e26fa7cf73d5e7a12ff50d
[!!!][BUGFIX] Introduce explicit saving of modified domain objects

In conjunction with the new property mapper the persistence layer
saves modified domain objects that failed validation and/or mapping.

This bugfix aligns the behavior of the persistence layer with Flow
and introduces explicit saving of modified domain objects.

Modified objects now need to be passed through their repository
update method in order to be scheduled for saving by the persistence
managers persistAll method.

Fixes: #47251
Releases: 6.1
Change-Id: I2130f96d925d74942af70f92e38d2d0b2ea46f79
Reviewed-on: https://review.typo3.org/19992
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
Reviewed-by: Stefan Froemken
Tested-by: Stefan Froemken
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
14 files changed:
typo3/sysext/extbase/Classes/Persistence/Generic/Backend.php
typo3/sysext/extbase/Classes/Persistence/Generic/BackendInterface.php
typo3/sysext/extbase/Classes/Persistence/Generic/IdentityMap.php
typo3/sysext/extbase/Classes/Persistence/Generic/Mapper/DataMapper.php
typo3/sysext/extbase/Classes/Persistence/Generic/PersistenceManager.php
typo3/sysext/extbase/Classes/Persistence/Generic/Session.php
typo3/sysext/extbase/Classes/Persistence/PersistenceManagerInterface.php
typo3/sysext/extbase/Classes/Persistence/Repository.php
typo3/sysext/extbase/Classes/Persistence/RepositoryInterface.php
typo3/sysext/extbase/Tests/Unit/Persistence/Fixture/Model/Entity2.php [new file with mode: 0644]
typo3/sysext/extbase/Tests/Unit/Persistence/Fixture/Model/Entity3.php [new file with mode: 0644]
typo3/sysext/extbase/Tests/Unit/Persistence/Generic/PersistenceManagerTest.php
typo3/sysext/extbase/Tests/Unit/Persistence/Generic/SessionTest.php
typo3/sysext/extbase/Tests/Unit/Persistence/RepositoryTest.php