public function retrieveSet(EntitySetRetrieverCriteria $criteria) { $container = $criteria->getContainerName(); $index = $criteria->getIndex(); $amount = $criteria->getAmount(); $uri = '/' . $container; try { $httpRequest = $this->httpRequestAdapter->fromDataToHttpRequest(['uri' => $uri, 'method' => 'get', 'port' => $this->port, 'query_parameters' => ['index' => $index, 'amount' => $amount], 'headers' => $this->headers]); $data = $this->executeRequest($httpRequest); if (!isset($data['entities']) || empty($data['entities'])) { $data['entities'] = []; } foreach ($data['entities'] as $index => $oneData) { $data['entities'][$index]['container'] = $container; } return $data; } catch (HttpApplicationException $exception) { throw new EntityRepositoryException('There was an exception while using the HttpApplication.', $exception); } }
private function createSetQuery(EntitySetRetrieverCriteria $criteria, $containerName) { $index = $criteria->getIndex(); $amount = $criteria->getAmount(); $totalAmount = $this->fetchFirst('select count(*) as amount from ' . $containerName); return array('name' => 'select * from ' . $containerName . ' order by created_on asc limit ' . $index . ',' . $amount . ';', 'index' => $index, 'total_amount' => $this->retrieveTotalAmount($containerName)); }