/** * Define the hydration schema based on a query object. * Fills the Formatter's properties using a Criteria as source * * @param BaseModelCriteria $criteria * @param DataFetcherInterface $dataFetcher * * @return $this|AbstractFormatter The current formatter object */ public function init(BaseModelCriteria $criteria, DataFetcherInterface $dataFetcher = null) { $this->dbName = $criteria->getDbName(); $this->setClass($criteria->getModelName()); $this->setWith($criteria->getWith()); $this->asColumns = $criteria->getAsColumns(); $this->hasLimit = $criteria->getLimit() != -1; if ($dataFetcher) { $this->setDataFetcher($dataFetcher); } return $this; }