registerObject() public method

Register an identifier for an object
public registerObject ( object $object, string $identifier )
$object object
$identifier string
 /**
  * Maps a single record into the object it represents and registers it as
  * reconstituted with the session.
  *
  * @param array $objectData
  * @return object
  * @throws Exception\InvalidObjectDataException
  * @throws PersistenceException
  */
 public function mapToObject(array $objectData)
 {
     if ($objectData === []) {
         throw new Exception\InvalidObjectDataException('The array with object data was empty, probably object not found or access denied.', 1277974338);
     }
     if ($this->persistenceSession->hasIdentifier($objectData['identifier'])) {
         return $this->persistenceSession->getObjectByIdentifier($objectData['identifier']);
     } else {
         $className = $objectData['classname'];
         $classSchema = $this->reflectionService->getClassSchema($className);
         $object = unserialize('O:' . strlen($className) . ':"' . $className . '":0:{};');
         $this->persistenceSession->registerObject($object, $objectData['identifier']);
         if ($classSchema->getModelType() === ClassSchema::MODELTYPE_ENTITY) {
             $this->persistenceSession->registerReconstitutedEntity($object, $objectData);
         }
         if ($objectData['properties'] === []) {
             if (!$classSchema->isLazyLoadableObject()) {
                 throw new PersistenceException('The object of type "' . $className . '" is not marked as lazy loadable.', 1268309017);
             }
             $persistenceManager = $this->persistenceManager;
             $persistenceSession = $this->persistenceSession;
             $dataMapper = $this;
             $identifier = $objectData['identifier'];
             $modelType = $classSchema->getModelType();
             $object->Flow_Persistence_LazyLoadingObject_thawProperties = function ($object) use($persistenceManager, $persistenceSession, $dataMapper, $identifier, $modelType) {
                 $objectData = $persistenceManager->getObjectDataByIdentifier($identifier);
                 $dataMapper->thawProperties($object, $identifier, $objectData);
                 if ($modelType === ClassSchema::MODELTYPE_ENTITY) {
                     $persistenceSession->registerReconstitutedEntity($object, $objectData);
                 }
             };
         } else {
             $this->thawProperties($object, $objectData['identifier'], $objectData);
         }
         return $object;
     }
 }
 /**
  * Does it return the UUID for an object know to the identity map?
  *
  * @test
  */
 public function getIdentifierByObjectReturnsUUIDForKnownObject()
 {
     $knownObject = $this->createMock(ProxyInterface::class);
     $fakeUUID = '123-456';
     $session = new Persistence\Generic\Session();
     $session->registerObject($knownObject, $fakeUUID);
     $this->assertEquals($fakeUUID, $session->getIdentifierByObject($knownObject));
 }