/** * @return \Kdyby\Doctrine\NativeQueryBuilder * @throws \Carrooi\NoGrid\InvalidArgumentException */ public function getQuery() { if (!$this->query) { $query = $this->queryDefinition->getQuery($this->repository); if (!$query instanceof NativeQueryBuilder) { throw new InvalidArgumentException('Doctrine\\NativeQueryFunctionDataSource::getQuery must return instance of NativeQueryBuilder, ' . get_class($query) . ' given.'); } $this->query = $query; } return $this->query; }
/** * @return \Kdyby\Doctrine\QueryBuilder * @throws \Carrooi\NoGrid\InvalidArgumentException */ public function getQueryBuilder() { if (!$this->qb) { $qb = $this->queryDefinition->getQuery($this->repository); if (!$qb instanceof QueryBuilder) { throw new InvalidArgumentException('Doctrine\\QueryFunctionDataSource::__invoke must return instance of QueryBuilder, ' . get_class($qb) . ' given.'); } $this->qb = $qb; } return $this->qb; }