Пример #1
0
 /**
  * {@inheritdoc}
  */
 public function getAction(RestRequest $restRequest, $id = null)
 {
     if ($id !== null) {
         $data = $restRequest->getRepository()->find($id, Repository::RESULTS_ARRAY);
         if ($data === null) {
             return $this->renderRest(null, Response::HTTP_NOT_FOUND);
         }
     } else {
         $search = new Search();
         !$restRequest->query->has('from') ?: $search->setFrom($restRequest->query->get('from'));
         !$restRequest->query->has('size') ?: $search->setSize($restRequest->query->get('size'));
         $data = $restRequest->getRepository()->execute($search, Repository::RESULTS_ARRAY);
     }
     return $this->renderRest($data);
 }
Пример #2
0
 /**
  * {@inheritdoc}
  */
 public function modifySearch(Search $search, FilterState $state = null, SearchRequest $request = null)
 {
     if ($state && $state->isActive()) {
         $search->setFrom($this->countPerPage * ($state->getValue() - 1));
     }
     $search->setSize($this->countPerPage);
 }