App\Http\Controllers\BaseAPIController::createCollection PHP Method

createCollection() protected method

protected createCollection ( $query, $transformer, $entityType )
    protected function createCollection($query, $transformer, $entityType)
    {
        if ($this->serializer && $this->serializer != API_SERIALIZER_JSON) {
            $entityType = null;
        }
        if (is_a($query, "Illuminate\\Database\\Eloquent\\Builder")) {
            $limit = min(MAX_API_PAGE_SIZE, Input::get('per_page', DEFAULT_API_PAGE_SIZE));
            $paginator = $query->paginate($limit);
            $query = $paginator->getCollection();
            $resource = new Collection($query, $transformer, $entityType);
            $resource->setPaginator(new IlluminatePaginatorAdapter($paginator));
        } else {
            $resource = new Collection($query, $transformer, $entityType);
        }
        return $this->manager->createData($resource)->toArray();
    }