Neos\Flow\Persistence\Generic\PersistenceManager::injectDataMapper PHP Méthode

injectDataMapper() public méthode

Injects the data mapper
public injectDataMapper ( DataMapper $dataMapper ) : void
$dataMapper DataMapper
Résultat void
    public function injectDataMapper(DataMapper $dataMapper)
    {
        $this->dataMapper = $dataMapper;
        $this->dataMapper->setPersistenceManager($this);
    }

Usage Example

 /**
  * @test
  */
 public function getObjectByIdentifierReturnsObjectFromPersistenceIfAvailable()
 {
     $fakeUuid = 'fakeUuid';
     $object = new \stdClass();
     $mockSession = $this->createMock(Generic\Session::class);
     $mockSession->expects($this->once())->method('hasIdentifier')->with($fakeUuid)->will($this->returnValue(false));
     $mockBackend = $this->createMock(Generic\Backend\BackendInterface::class);
     $mockBackend->expects($this->once())->method('getObjectDataByIdentifier')->with($fakeUuid)->will($this->returnValue([]));
     $mockDataMapper = $this->createMock(Generic\DataMapper::class);
     $mockDataMapper->expects($this->once())->method('mapToObject')->will($this->returnValue($object));
     $manager = new Generic\PersistenceManager();
     $manager->injectPersistenceSession($mockSession);
     $manager->injectBackend($mockBackend);
     $manager->injectDataMapper($mockDataMapper);
     $this->assertEquals($manager->getObjectByIdentifier($fakeUuid), $object);
 }