clementtalleu/php-redis-om

object instantiation on return from find* methods

Opened this issue · 2 comments

flug commented

Currently, object instantiation is done through a new new $type() closed to the constructor, which requires having setters or public properties outside the constructor.

Therefore, I propose creating an object mapper so that, regardless of where the fields are, the object is correctly rehydrated.

I have started developing a classMapper that takes mappers via a decorator, similar to how the Symfony serializer might work. Would this be suitable? @clementtalleu

the initial idea was to impose public methods, but this could be a good solution, we just need to make sure we don't degrade performance (there's no reason to).

flug commented

yeah but it's a bit of a pain because it makes the object inconsistent