Merge pull request #510 from peterjmit/master

Make fetchSlice compatible with custom repo method
This commit is contained in:
Tim Nagel 2014-03-26 10:01:18 +11:00
commit 49f077cc30

View file

@ -9,7 +9,7 @@ use FOS\ElasticaBundle\Exception\InvalidArgumentTypeException;
class Provider extends AbstractProvider
{
const ENTITY_ALIAS = 'a';
/**
* @see FOS\ElasticaBundle\Doctrine\AbstractProvider::countObjects()
*/
@ -50,12 +50,13 @@ class Provider extends AbstractProvider
*/
$orderBy = $queryBuilder->getDQLPart('orderBy');
if (empty($orderBy)) {
$rootAliases = $queryBuilder->getRootAliases();
$identifierFieldNames = $this->managerRegistry
->getManagerForClass($this->objectClass)
->getClassMetadata($this->objectClass)
->getIdentifierFieldNames();
foreach ($identifierFieldNames as $fieldName) {
$queryBuilder->addOrderBy(static::ENTITY_ALIAS.'.'.$fieldName);
$queryBuilder->addOrderBy($rootAliases[0].'.'.$fieldName);
}
}