‪TYPO3CMS  11.5
Query.php
Go to the documentation of this file.
1 <?php
2 
3 /*
4  * This file is part of the TYPO3 CMS project.
5  *
6  * It is free software; you can redistribute it and/or modify it under
7  * the terms of the GNU General Public License, either version 2
8  * of the License, or any later version.
9  *
10  * For the full copyright and license information, please read the
11  * LICENSE.txt file that was distributed with this source code.
12  *
13  * The TYPO3 project - inspiring people to share!
14  */
15 
17 
18 use Psr\Container\ContainerInterface;
35 
43 {
47  public const ‪JCR_JOIN_TYPE_INNER = '{http://www.jcp.org/jcr/1.0}joinTypeInner';
48 
52  public const ‪JCR_JOIN_TYPE_LEFT_OUTER = '{http://www.jcp.org/jcr/1.0}joinTypeLeftOuter';
53 
57  public const ‪JCR_JOIN_TYPE_RIGHT_OUTER = '{http://www.jcp.org/jcr/1.0}joinTypeRightOuter';
58 
62  public const ‪CHARSET = 'utf-8';
63 
67  protected ‪$type;
68 
72  protected ContainerInterface ‪$container;
73 
77  protected ‪$source;
78 
82  protected ‪$constraint;
83 
87  protected ‪$statement;
88 
92  protected $orderings = [];
93 
97  protected $limit;
98 
102  protected $offset;
103 
109  protected $querySettings;
110 
115  protected $parentQuery;
116 
117  public function __construct(
121  ContainerInterface ‪$container
122  ) {
125  $this->‪qomFactory = ‪$qomFactory;
126  $this->‪container = ‪$container;
127  }
128 
129  public function ‪setType(string ‪$type): void
130  {
131  $this->type = ‪$type;
132  }
133 
139  {
140  return $this->parentQuery;
141  }
142 
147  public function ‪setParentQuery(?‪QueryInterface $parentQuery): void
148  {
149  $this->parentQuery = $parentQuery;
150  }
151 
158  public function ‪setQuerySettings(‪QuerySettingsInterface $querySettings)
159  {
160  $this->querySettings = $querySettings;
161  }
162 
169  public function ‪getQuerySettings()
170  {
171  if (!$this->querySettings instanceof ‪QuerySettingsInterface) {
172  throw new ‪Exception('Tried to get the query settings without setting them before.', 1248689115);
173  }
174  return $this->querySettings;
175  }
176 
182  public function ‪getType()
183  {
184  return ‪$this->type;
185  }
186 
193  {
194  $this->source = ‪$source;
195  }
196 
203  protected function ‪getSelectorName()
204  {
205  ‪$source = $this->‪getSource();
206  if (‪$source instanceof ‪SelectorInterface) {
207  return ‪$source->getSelectorName();
208  }
209  return '';
210  }
211 
217  public function ‪getSource()
218  {
219  if ($this->source === null) {
220  $this->source = $this->‪qomFactory->selector($this->‪getType(), $this->‪dataMapFactory->buildDataMap($this->getType())->getTableName());
221  }
223  }
224 
231  public function ‪execute($returnRawQueryResult = false)
232  {
233  if ($returnRawQueryResult) {
234  return $this->‪persistenceManager->getObjectDataByQuery($this);
235  }
236  if ($this->‪container->has(QueryResultInterface::class)) {
237  $queryResult = $this->‪container->get(QueryResultInterface::class);
238  if ($queryResult instanceof ‪ForwardCompatibleQueryResultInterface) {
239  $queryResult->setQuery($this);
240  return $queryResult;
241  }
242  }
243  // @deprecated since v11, will be removed in v12. Fallback to ObjectManager, drop together with ForwardCompatibleQueryResultInterface.
244  $queryResult = GeneralUtility::makeInstance(ObjectManager::class)->get(QueryResultInterface::class, $this);
245  return $queryResult;
246  }
247 
259  public function ‪setOrderings(array $orderings)
260  {
261  $this->‪orderings = $orderings;
262  return $this;
263  }
264 
274  public function ‪getOrderings()
275  {
276  return $this->orderings;
277  }
278 
287  public function ‪setLimit($limit)
288  {
289  if (!is_int($limit) || $limit < 1) {
290  throw new \InvalidArgumentException('The limit must be an integer >= 1', 1245071870);
291  }
292  $this->limit = $limit;
293  return $this;
294  }
295 
302  public function ‪unsetLimit()
303  {
304  unset($this->limit);
305  return $this;
306  }
307 
313  public function ‪getLimit()
314  {
315  return $this->limit;
316  }
317 
326  public function ‪setOffset($offset)
327  {
328  if (!is_int($offset) || $offset < 0) {
329  throw new \InvalidArgumentException('The offset must be a positive integer', 1245071872);
330  }
331  $this->offset = $offset;
332  return $this;
333  }
334 
340  public function ‪getOffset()
341  {
342  return $this->offset;
343  }
344 
352  public function ‪matching(‪$constraint)
353  {
354  $this->constraint = ‪$constraint;
355  return $this;
356  }
357 
366  public function ‪statement(‪$statement, array $parameters = [])
367  {
368  $this->‪statement = $this->‪qomFactory->statement(‪$statement, $parameters);
369  return $this;
370  }
371 
377  public function ‪getStatement()
378  {
379  return ‪$this->statement;
380  }
381 
387  public function ‪getConstraint()
388  {
389  return ‪$this->constraint;
390  }
391 
402  public function ‪logicalAnd($constraint1, $constraint2 = null, ...$furtherConstraints)
403  {
404  /*
405  * todo: Deprecate accepting an array as $constraint1
406  * Add param type hints for $constraint1 and $constraint2
407  * Make $constraint2 mandatory
408  * Add AndInterface return type hint
409  * Adjust method signature in interface
410  */
411  $constraints = [];
412  if (is_array($constraint1)) {
413  $constraints = array_merge($constraints, $constraint1);
414  } else {
415  $constraints[] = $constraint1;
416  }
417 
418  $constraints[] = $constraint2;
419  $constraints = array_merge($constraints, $furtherConstraints);
420  $constraints = array_filter($constraints, fn(‪$constraint) => ‪$constraint instanceof ConstraintInterface);
421 
422  // todo: remove this check as soon as first and second constraint are mandatory
423  if (‪count($constraints) < 1) {
424  throw new InvalidNumberOfConstraintsException('There must be at least one constraint or a non-empty array of constraints given.', 1268056288);
425  }
426 
427  $resultingConstraint = array_shift($constraints);
428  foreach ($constraints as ‪$constraint) {
429  $resultingConstraint = $this->‪qomFactory->_and($resultingConstraint, ‪$constraint);
430  }
431  return $resultingConstraint;
432  }
433 
443  public function ‪logicalOr($constraint1, $constraint2 = null, ...$furtherConstraints)
444  {
445  /*
446  * todo: Deprecate accepting an array as $constraint1
447  * Add param type hints for $constraint1 and $constraint2
448  * Make $constraint2 mandatory
449  * Add AndInterface return type hint
450  * Adjust method signature in interface
451  */
452  $constraints = [];
453  if (is_array($constraint1)) {
454  $constraints = array_merge($constraints, $constraint1);
455  } else {
456  $constraints[] = $constraint1;
457  }
458 
459  $constraints[] = $constraint2;
460  $constraints = array_merge($constraints, $furtherConstraints);
461  $constraints = array_filter($constraints, fn(‪$constraint) => ‪$constraint instanceof ConstraintInterface);
462 
463  // todo: remove this check as soon as first and second constraint are mandatory
464  if (‪count($constraints) < 1) {
465  throw new InvalidNumberOfConstraintsException('There must be at least one constraint or a non-empty array of constraints given.', 1268056289);
466  }
467 
468  $resultingConstraint = array_shift($constraints);
469  foreach ($constraints as ‪$constraint) {
470  $resultingConstraint = $this->‪qomFactory->_or($resultingConstraint, ‪$constraint);
471  }
472  return $resultingConstraint;
473  }
474 
483  {
484  return $this->‪qomFactory->not($constraint);
485  }
486 
495  public function ‪equals($propertyName, $operand, $caseSensitive = true)
496  {
497  if (is_object($operand) || $caseSensitive) {
498  $comparison = $this->‪qomFactory->comparison(
499  $this->‪qomFactory->propertyValue($propertyName, $this->getSelectorName()),
501  $operand
502  );
503  } else {
504  $comparison = $this->‪qomFactory->comparison(
505  $this->‪qomFactory->lowerCase($this->qomFactory->propertyValue($propertyName, $this->getSelectorName())),
507  mb_strtolower($operand, \‪TYPO3\CMS\‪Extbase\Persistence\Generic\‪Query::CHARSET)
508  );
509  }
510  return $comparison;
511  }
512 
520  public function ‪like($propertyName, $operand)
521  {
522  return $this->‪qomFactory->comparison(
523  $this->‪qomFactory->propertyValue($propertyName, $this->getSelectorName()),
525  $operand
526  );
527  }
528 
537  public function ‪contains($propertyName, $operand)
538  {
539  return $this->‪qomFactory->comparison($this->‪qomFactory->propertyValue($propertyName, $this->getSelectorName()), ‪QueryInterface::OPERATOR_CONTAINS, $operand);
540  }
541 
551  public function ‪in($propertyName, $operand)
552  {
554  throw new ‪UnexpectedTypeException('The "in" operator must be given a multivalued operand (array, ArrayAccess, Traversable).', 1264678095);
555  }
556  return $this->‪qomFactory->comparison($this->‪qomFactory->propertyValue($propertyName, $this->getSelectorName()), ‪QueryInterface::OPERATOR_IN, $operand);
557  }
558 
566  public function ‪lessThan($propertyName, $operand)
567  {
568  return $this->‪qomFactory->comparison($this->‪qomFactory->propertyValue($propertyName, $this->getSelectorName()), ‪QueryInterface::OPERATOR_LESS_THAN, $operand);
569  }
570 
578  public function ‪lessThanOrEqual($propertyName, $operand)
579  {
580  return $this->‪qomFactory->comparison($this->‪qomFactory->propertyValue($propertyName, $this->getSelectorName()), ‪QueryInterface::OPERATOR_LESS_THAN_OR_EQUAL_TO, $operand);
581  }
582 
590  public function ‪greaterThan($propertyName, $operand)
591  {
592  return $this->‪qomFactory->comparison($this->‪qomFactory->propertyValue($propertyName, $this->getSelectorName()), ‪QueryInterface::OPERATOR_GREATER_THAN, $operand);
593  }
594 
602  public function ‪greaterThanOrEqual($propertyName, $operand)
603  {
604  return $this->‪qomFactory->comparison($this->‪qomFactory->propertyValue($propertyName, $this->getSelectorName()), ‪QueryInterface::OPERATOR_GREATER_THAN_OR_EQUAL_TO, $operand);
605  }
606 
616  public function ‪between($propertyName, $operandLower, $operandUpper)
617  {
618  return $this->‪logicalAnd(
619  $this->‪greaterThanOrEqual($propertyName, $operandLower),
620  $this->‪lessThanOrEqual($propertyName, $operandUpper)
621  );
622  }
623 
627  public function ‪__wakeup()
628  {
629  $this->‪persistenceManager = GeneralUtility::makeInstance(PersistenceManagerInterface::class);
630  $this->‪dataMapFactory = GeneralUtility::makeInstance(DataMapFactory::class);
631  $this->‪qomFactory = GeneralUtility::makeInstance(QueryObjectModelFactory::class);
632  }
633 
638  public function ‪__sleep()
639  {
640  return ['type', 'source', 'constraint', 'statement', 'orderings', 'limit', 'offset', 'querySettings'];
641  }
642 
648  public function ‪count()
649  {
650  return $this->‪execute()->count();
651  }
652 }
‪TYPO3\CMS\Extbase\Persistence\QueryInterface\OPERATOR_LIKE
‪const OPERATOR_LIKE
Definition: QueryInterface.php:73
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\setOffset
‪QueryInterface setOffset($offset)
Definition: Query.php:317
‪TYPO3\CMS\Extbase\Persistence\QueryInterface\OPERATOR_GREATER_THAN_OR_EQUAL_TO
‪const OPERATOR_GREATER_THAN_OR_EQUAL_TO
Definition: QueryInterface.php:68
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\getStatement
‪TYPO3 CMS Extbase Persistence Generic Qom Statement getStatement()
Definition: Query.php:368
‪TYPO3\CMS\Extbase\Persistence\PersistenceManagerInterface
Definition: PersistenceManagerInterface.php:22
‪TYPO3\CMS\Extbase\Annotation
Definition: IgnoreValidation.php:18
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\in
‪TYPO3 CMS Extbase Persistence Generic Qom ComparisonInterface in($propertyName, $operand)
Definition: Query.php:542
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\setLimit
‪QueryInterface setLimit($limit)
Definition: Query.php:278
‪TYPO3\CMS\Extbase\Persistence\QueryInterface
Definition: QueryInterface.php:29
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\getOffset
‪int getOffset()
Definition: Query.php:331
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\getParentQuery
‪QueryInterface getParentQuery()
Definition: Query.php:129
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\persistenceManager
‪$this persistenceManager
Definition: Query.php:115
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\lessThan
‪TYPO3 CMS Extbase Persistence Generic Qom ComparisonInterface lessThan($propertyName, $operand)
Definition: Query.php:557
‪TYPO3\CMS\Extbase\Persistence\QueryInterface\OPERATOR_GREATER_THAN
‪const OPERATOR_GREATER_THAN
Definition: QueryInterface.php:63
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\$qomFactory
‪QueryObjectModelFactory $qomFactory
Definition: Query.php:70
‪TYPO3
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\logicalOr
‪TYPO3 CMS Extbase Persistence Generic Qom OrInterface logicalOr($constraint1, $constraint2=null,... $furtherConstraints)
Definition: Query.php:434
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\like
‪TYPO3 CMS Extbase Persistence Generic Qom ComparisonInterface like($propertyName, $operand)
Definition: Query.php:511
‪TYPO3\CMS\Extbase\Persistence\QueryInterface\OPERATOR_IN
‪const OPERATOR_IN
Definition: QueryInterface.php:83
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\logicalAnd
‪TYPO3 CMS Extbase Persistence Generic Qom AndInterface logicalAnd($constraint1, $constraint2=null,... $furtherConstraints)
Definition: Query.php:393
‪TYPO3\CMS\Extbase\Persistence\Generic\Qom\QueryObjectModelFactory
Definition: QueryObjectModelFactory.php:27
‪TYPO3\CMS\Extbase\Persistence\Generic\Qom\SourceInterface
Definition: SourceInterface.php:21
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\logicalNot
‪TYPO3 CMS Extbase Persistence Generic Qom NotInterface logicalNot(ConstraintInterface $constraint)
Definition: Query.php:473
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\JCR_JOIN_TYPE_RIGHT_OUTER
‪const JCR_JOIN_TYPE_RIGHT_OUTER
Definition: Query.php:57
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\__sleep
‪array __sleep()
Definition: Query.php:629
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\qomFactory
‪$this qomFactory
Definition: Query.php:116
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\greaterThan
‪TYPO3 CMS Extbase Persistence Generic Qom ComparisonInterface greaterThan($propertyName, $operand)
Definition: Query.php:581
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\statement
‪QueryInterface statement($statement, array $parameters=[])
Definition: Query.php:357
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\setType
‪setType(string $type)
Definition: Query.php:120
‪TYPO3\CMS\Extbase\Persistence\QueryInterface\OPERATOR_LESS_THAN_OR_EQUAL_TO
‪const OPERATOR_LESS_THAN_OR_EQUAL_TO
Definition: QueryInterface.php:58
‪TYPO3\CMS\Extbase\Persistence\Generic\Mapper\DataMapFactory
Definition: DataMapFactory.php:39
‪TYPO3\CMS\Extbase\Persistence\ForwardCompatibleQueryInterface
Definition: ForwardCompatibleQueryInterface.php:25
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\setParentQuery
‪setParentQuery(?QueryInterface $parentQuery)
Definition: Query.php:138
‪TYPO3\CMS\Extbase\Persistence\Generic\Exception\InvalidNumberOfConstraintsException
Definition: InvalidNumberOfConstraintsException.php:25
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\$persistenceManager
‪PersistenceManagerInterface $persistenceManager
Definition: Query.php:69
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\getQuerySettings
‪QuerySettingsInterface getQuerySettings()
Definition: Query.php:160
‪TYPO3\CMS\Extbase\Persistence\Generic\Qom\SelectorInterface
Definition: SelectorInterface.php:30
‪TYPO3\CMS\Extbase\Persistence\ForwardCompatibleQueryResultInterface
Definition: ForwardCompatibleQueryResultInterface.php:25
‪TYPO3\CMS\Extbase\Utility\TypeHandlingUtility
Definition: TypeHandlingUtility.php:29
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\JCR_JOIN_TYPE_INNER
‪const JCR_JOIN_TYPE_INNER
Definition: Query.php:47
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\$dataMapFactory
‪DataMapFactory $dataMapFactory
Definition: Query.php:68
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\getSelectorName
‪string getSelectorName()
Definition: Query.php:194
‪TYPO3\CMS\Extbase\Persistence\QueryInterface\OPERATOR_CONTAINS
‪const OPERATOR_CONTAINS
Definition: QueryInterface.php:78
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\greaterThanOrEqual
‪TYPO3 CMS Extbase Persistence Generic Qom ComparisonInterface greaterThanOrEqual($propertyName, $operand)
Definition: Query.php:593
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\$statement
‪TYPO3 CMS Extbase Persistence Generic Qom Statement $statement
Definition: Query.php:83
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\matching
‪QueryInterface matching($constraint)
Definition: Query.php:343
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\contains
‪TYPO3 CMS Extbase Persistence Generic Qom ComparisonInterface contains($propertyName, $operand)
Definition: Query.php:528
‪TYPO3\CMS\Extbase\Persistence\QueryResultInterface
Definition: QueryResultInterface.php:22
‪TYPO3\CMS\Extbase\Persistence\QueryInterface\getOrderings
‪array< string, string > getOrderings()
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\CHARSET
‪const CHARSET
Definition: Query.php:62
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\setOrderings
‪QueryInterface setOrderings(array $orderings)
Definition: Query.php:250
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\$constraint
‪TYPO3 CMS Extbase Persistence Generic Qom ConstraintInterface $constraint
Definition: Query.php:79
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\__wakeup
‪__wakeup()
Definition: Query.php:618
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\getLimit
‪int getLimit()
Definition: Query.php:304
‪TYPO3\CMS\Extbase\Persistence\Generic\QuerySettingsInterface
Definition: QuerySettingsInterface.php:22
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\$type
‪string $type
Definition: Query.php:66
‪TYPO3\CMS\Extbase\Persistence\Generic
Definition: Backend.php:16
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\unsetLimit
‪QueryInterface unsetLimit()
Definition: Query.php:293
‪TYPO3\CMS\Extbase\Utility\TypeHandlingUtility\isValidTypeForMultiValueComparison
‪static bool isValidTypeForMultiValueComparison($value)
Definition: TypeHandlingUtility.php:158
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\setQuerySettings
‪setQuerySettings(QuerySettingsInterface $querySettings)
Definition: Query.php:149
‪TYPO3\CMS\Extbase\Persistence\Generic\Exception\UnexpectedTypeException
Definition: UnexpectedTypeException.php:25
‪TYPO3\CMS\Extbase\Persistence\QueryInterface\OPERATOR_LESS_THAN
‪const OPERATOR_LESS_THAN
Definition: QueryInterface.php:53
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\count
‪int count()
Definition: Query.php:639
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\lessThanOrEqual
‪TYPO3 CMS Extbase Persistence Generic Qom ComparisonInterface lessThanOrEqual($propertyName, $operand)
Definition: Query.php:569
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\setSource
‪setSource(SourceInterface $source)
Definition: Query.php:183
‪TYPO3\CMS\Extbase\Persistence\QueryInterface\OPERATOR_EQUAL_TO
‪const OPERATOR_EQUAL_TO
Definition: QueryInterface.php:33
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\dataMapFactory
‪array< string, $orderings=array();protected int $limit;protected int $offset;protected QuerySettingsInterface $querySettings;protected QueryInterface|null $parentQuery;public function __construct(DataMapFactory $dataMapFactory, PersistenceManagerInterface $persistenceManager, QueryObjectModelFactory $qomFactory, ContainerInterface $container) { $this-> dataMapFactory
Definition: Query.php:114
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\equals
‪TYPO3 CMS Extbase Persistence Generic Qom ComparisonInterface equals($propertyName, $operand, $caseSensitive=true)
Definition: Query.php:486
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\getType
‪string getType()
Definition: Query.php:173
‪TYPO3\CMS\Extbase\Persistence\Generic\Query
Definition: Query.php:43
‪TYPO3\CMS\Extbase\Persistence\Generic\Qom\ConstraintInterface
Definition: ConstraintInterface.php:25
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\getSource
‪TYPO3 CMS Extbase Persistence Generic Qom SourceInterface getSource()
Definition: Query.php:208
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\JCR_JOIN_TYPE_LEFT_OUTER
‪const JCR_JOIN_TYPE_LEFT_OUTER
Definition: Query.php:52
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\between
‪TYPO3 CMS Extbase Persistence Generic Qom AndInterface between($propertyName, $operandLower, $operandUpper)
Definition: Query.php:607
‪TYPO3\CMS\Core\Utility\GeneralUtility
Definition: GeneralUtility.php:50
‪TYPO3\CMS\Extbase\Object\ObjectManager
Definition: ObjectManager.php:31
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\execute
‪QueryResultInterface array execute($returnRawQueryResult=false)
Definition: Query.php:222
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\getConstraint
‪TYPO3 CMS Extbase Persistence Generic Qom ConstraintInterface null getConstraint()
Definition: Query.php:378
‪TYPO3\CMS\Extbase\Persistence\Generic\Qom\AndInterface
Definition: AndInterface.php:25
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\orderings
‪array< string, function getOrderings() { return $this-> orderings
Definition: Query.php:267
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\$source
‪TYPO3 CMS Extbase Persistence Generic Qom SourceInterface $source
Definition: Query.php:75
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\container
‪$this container
Definition: Query.php:117
‪TYPO3\CMS\Extbase\Persistence\Generic\Exception
Definition: Exception.php:23
‪TYPO3\CMS\Extbase\Persistence\Generic\Query\$container
‪ContainerInterface $container
Definition: Query.php:71