I am creating this UnitOfWork object and an Db adapter that uses it. When the Adapter fetches a row:
- Bu doğru tipte bir nesnenin içine satır dönecek
- güncelleştirilecek UnitOfWork içine nesne koymak
- nesneyi döndürmek
Örnek kod
$entity = $adapter->findById(1);
Dahili çalışma kukla:
class Adapter {
function findById($id) {
$sql = $this->createFindByIdSql($id);
$query = mysql_query($sql);
$row = mysql_fetch_assoc($query);
$entity = $this->entityFromRow($row);
$this->getUnitOfWork()->lookForUpdates($entity);
return $entity;
}
}
Sonra dönüş nesneyi değiştirmek ve taahhüt
$entity->name = 'something else';
$adapter->commit();
Ama UnitOfWork nesne saklanan varlık bu bir fırsat üzerinde değiştirilmez. Ama bu çoğu zaman çalışır.