/** * Return list of ModelInterface * * Return list of ModelInterface filtered by $filters if provided * * @param array $filters * key/val filters * @return ResultSet\ResultSet false of ModelInterface */ protected function _list(array $filters = array()) { $inputFilter = $this->getFiltersInputFilter(); $inputFilter->setData($filters); if (!$inputFilter->isValid()) { return false; } $api = $this; $this->api->setApi('getList', function ($params) use($api) { return array('url' => $api->getUrl() . '/?' . http_build_query($params[0]), 'header' => array('Content-Type' => 'application/json'), 'method' => 'GET', 'response' => array('format' => 'json', 'valid_codes' => array(200, 203))); }); if ($result = $this->api->getList($filters)) { $resultSet = clone $this->getResultSetPrototype(); $resultSet->initialize($result['Data']); return $resultSet; } return $result; }