public function getData(Parameters $parameters)
{
$orderBy = $this->queryBuilder->orderBy();
foreach ($this->expressionBuilder->getOrderBys() as $field => $direction) {
if (is_int($field)) {
$field = $direction;
$direction = 'asc';
}
// todo: validate direction?
$direction = strtolower($direction);
$orderBy->{$direction}()->field(sprintf('%s.%s', Driver::QB_SOURCE_ALIAS, $field));
}
$paginator = new Pagerfanta(new DoctrineODMPhpcrAdapter($this->queryBuilder));
$paginator->setCurrentPage($parameters->get('page', 1));
return $paginator;
}