Bravo3\Orm\Services\EntityManager::indexedQuery PHP Method

indexedQuery() public method

Create a query against a table matching one or more indices
public indexedQuery ( IndexedQuery $query, boolean $use_cache = true ) : QueryResult
$query Bravo3\Orm\Query\IndexedQuery
$use_cache boolean
return Bravo3\Orm\Query\QueryResult
    public function indexedQuery(IndexedQuery $query, $use_cache = true)
    {
        return $this->getQueryManager()->indexedQuery($query, $use_cache);
    }

Usage Example

Esempio n. 1
0
 /**
  * @dataProvider entityManagerDataProvider
  * @param EntityManager $em
  */
 public function testIdQuery(EntityManager $em)
 {
     $a = new IndexedEntity();
     $a->setId1('1');
     $a->setId2('first');
     $a->setAlpha('alpha1');
     $a->setBravo(1);
     $a->setCharlie(true);
     $b = new IndexedEntity();
     $b->setId1('2');
     $b->setId2('second');
     $b->setAlpha('alpha2');
     $b->setBravo(2);
     $b->setCharlie(false);
     $em->persist($a)->persist($b)->flush();
     $result = $em->indexedQuery(new IndexedQuery(IndexedEntity::class, ['@id' => '1.fir*']));
     $this->assertCount(1, $result);
     /** @var IndexedEntity $entity */
     $entity = $result->current();
     $this->assertEquals('1', $entity->getId1());
     $this->assertEquals('first', $entity->getId2());
     $this->assertEquals('alpha1', $entity->getAlpha());
     $result = $em->indexedQuery(new IndexedQuery(IndexedEntity::class, ['@id' => '*']));
     $this->assertGreaterThanOrEqual(2, count($result));
     $result = $em->indexedQuery(new IndexedQuery(IndexedEntity::class, ['@id' => '*', 'ab' => 'alpha1*']));
     $this->assertCount(1, $result);
     /** @var IndexedEntity $entity */
     $entity = $result->current();
     $this->assertEquals('1', $entity->getId1());
     $this->assertEquals('first', $entity->getId2());
     $this->assertEquals('alpha1', $entity->getAlpha());
 }
All Usage Examples Of Bravo3\Orm\Services\EntityManager::indexedQuery