/** * {@inheritDoc} */ public function newHydrator($hydrationMode) { switch ($hydrationMode) { case Query::HYDRATE_OBJECT: return new Internal\Hydration\ObjectHydrator($this); case Query::HYDRATE_ARRAY: return new Internal\Hydration\ArrayHydrator($this); case Query::HYDRATE_SCALAR: return new Internal\Hydration\ScalarHydrator($this); case Query::HYDRATE_SINGLE_SCALAR: return new Internal\Hydration\SingleScalarHydrator($this); case Query::HYDRATE_SIMPLEOBJECT: return new Internal\Hydration\SimpleObjectHydrator($this); default: if (($class = $this->config->getCustomHydrationMode($hydrationMode)) !== null) { return new $class($this); } } throw ORMException::invalidHydrationMode($hydrationMode); }
/** * Create a new instance for the given hydration mode. * * @param int $hydrationMode * @return Doctrine\ORM\Internal\Hydration\AbstractHydrator */ public function newHydrator($hydrationMode) { switch ($hydrationMode) { case Query::HYDRATE_OBJECT: $hydrator = new Internal\Hydration\ObjectHydrator($this); break; case Query::HYDRATE_ARRAY: $hydrator = new Internal\Hydration\ArrayHydrator($this); break; case Query::HYDRATE_SCALAR: $hydrator = new Internal\Hydration\ScalarHydrator($this); break; case Query::HYDRATE_SINGLE_SCALAR: $hydrator = new Internal\Hydration\SingleScalarHydrator($this); break; default: throw ORMException::invalidHydrationMode($hydrationMode); } return $hydrator; }