onPHP/onphp-framework — Issue #66: final public методы в GenericDAO
Author: zlex
Created: 2012-01-17 13:18:18+00:00
State: open

Суть вопроса: предлагаю сделать GenericDAO::makeOnlyObject(), GenericDAO::makeObject() и, возможно, некоторые другие методы as final public.

Мы столкнулись с проблемой переопределения свойств объекта в identity map при построении списков объектов (см. BaseDaoWorker::fetchList() и GenericDAO::addObjectListToMap()). Данные в makeObject() попадали через кастомный запрос.

Использование методов GenericDAO::makeOnlyObject(), GenericDAO::makeObject() мы видим только в приведённом выше контексте, и считаем, что так делать не следует. Предлагаемые изменения огородят других разработчиков от подобного рода ошибок.