public function getDefinition(): EntityDefinition
{ return $this->definition;
} /**
* @return EntitySearchResult<TEntityCollection>
*/
public function search(Criteria
$criteria, Context
$context): EntitySearchResult
{ if (!
$criteria->
getTitle()) { return $this->
_search($criteria,
$context);
} return Profiler::
trace($criteria->
getTitle(),
fn () =>
$this->
_search($criteria,
$context), 'repository'
);
} public function aggregate(Criteria
$criteria, Context
$context): AggregationResultCollection
{ $criteria =
clone $criteria;
$result =
$this->aggregator->
aggregate($this->definition,
$criteria,
$context);