public static function getList($parameters = array()) { $query = new Query(static::getEntity()); if (isset($parameters['select'])) { $query->setSelect($parameters['select']); } else { $query->setSelect(array('*')); } if (isset($parameters['filter'])) { $query->setFilter($parameters['filter']); } if (isset($parameters['group'])) { $query->setGroup($parameters['group']); } if (isset($parameters['order'])) { $query->setOrder($parameters['order']); } if (isset($parameters['limit'])) { $query->setLimit($parameters['limit']); } if (isset($parameters['offset'])) { $query->setOffset($parameters['offset']); } if (isset($parameters['count_total'])) { $query->countTotal($parameters['count_total']); } if (isset($parameters['options'])) { $query->setOptions($parameters['options']); } if (isset($parameters['runtime'])) { foreach ($parameters['runtime'] as $name => $fieldInfo) { $query->registerRuntimeField($name, $fieldInfo); } } if (isset($parameters['data_doubling'])) { $parameters['data_doubling'] ? $query->enableDataDoubling() : $query->disableDataDoubling(); } return $query->exec(); // return array? }
/** * Sets filter. * * @param Filters\Filter $filter value. * * @return none. */ public function setFilter($filter) { $this->_query->setFilter($filter); }