Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion src/Reader/Cache/CachedCollection.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@

namespace Yiisoft\Data\Cycle\Reader\Cache;

use Generator;

final class CachedCollection
{
private ?iterable $collection = null;
Expand All @@ -26,7 +28,7 @@ public function getCollection(): ?iterable
return $this->collection;
}

public function getGenerator(): \Generator
public function getGenerator(): Generator
{
if ($this->collection !== null) {
yield from $this->collection;
Expand Down
25 changes: 13 additions & 12 deletions src/Reader/EntityReader.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
use Cycle\ORM\Select\QueryBuilder;
use Generator;
use InvalidArgumentException;
use Override;
use Yiisoft\Data\Cycle\Exception\NotSupportedFilterException;
use Yiisoft\Data\Cycle\Reader\FilterHandler\LikeHandler\LikeHandlerFactory;
use Yiisoft\Data\Reader\DataReaderInterface;
Expand Down Expand Up @@ -78,7 +79,7 @@ public function __construct(Select|SelectQuery $query, array $extraFilterHandler
$this->filter = new All();
}

#[\Override]
#[Override]
public function getSort(): ?Sort
{
return $this->sorting;
Expand All @@ -87,7 +88,7 @@ public function getSort(): ?Sort
/**
* @psalm-mutation-free
*/
#[\Override]
#[Override]
public function withLimit(?int $limit): static
{
/** @psalm-suppress DocblockTypeContradiction */
Expand All @@ -105,7 +106,7 @@ public function withLimit(?int $limit): static
/**
* @psalm-mutation-free
*/
#[\Override]
#[Override]
public function withOffset(int $offset): static
{
$new = clone $this;
Expand All @@ -119,7 +120,7 @@ public function withOffset(int $offset): static
/**
* @psalm-mutation-free
*/
#[\Override]
#[Override]
public function withSort(?Sort $sort): static
{
$new = clone $this;
Expand All @@ -134,7 +135,7 @@ public function withSort(?Sort $sort): static
/**
* @psalm-mutation-free
*/
#[\Override]
#[Override]
public function withFilter(FilterInterface $filter): static
{
$new = clone $this;
Expand All @@ -148,13 +149,13 @@ public function withFilter(FilterInterface $filter): static
return $new;
}

#[\Override]
#[Override]
public function count(): int
{
return $this->countCache->getCount();
}

#[\Override]
#[Override]
public function read(): iterable
{
if ($this->itemsCache->getCollection() === null) {
Expand All @@ -164,7 +165,7 @@ public function read(): iterable
return $this->itemsCache->getCollection();
}

#[\Override]
#[Override]
public function readOne(): null|array|object
{
if (!$this->oneItemCache->isCollected()) {
Expand All @@ -182,7 +183,7 @@ public function readOne(): null|array|object
/**
* Get Iterator without caching
*/
#[\Override]
#[Override]
public function getIterator(): Generator
{
yield from $this->itemsCache->getCollection() ?? $this->buildSelectQuery()->getIterator();
Expand Down Expand Up @@ -255,19 +256,19 @@ private function normalizeSortingCriteria(array $criteria): array
return $criteria;
}

#[\Override]
#[Override]
public function getFilter(): FilterInterface
{
return $this->filter;
}

#[\Override]
#[Override]
public function getLimit(): ?int
{
return $this->limit;
}

#[\Override]
#[Override]
public function getOffset(): int
{
return $this->offset;
Expand Down
5 changes: 3 additions & 2 deletions src/Reader/FilterHandler/AllHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,19 +7,20 @@
use Cycle\Database\Injection\Expression;
use Cycle\Database\Query\SelectQuery;
use Cycle\ORM\Select\QueryBuilder;
use Override;
use Yiisoft\Data\Cycle\Reader\QueryBuilderFilterHandler;
use Yiisoft\Data\Reader\Filter\All;
use Yiisoft\Data\Reader\FilterInterface;

final class AllHandler implements QueryBuilderFilterHandler
{
#[\Override]
#[Override]
public function getFilterClass(): string
{
return All::class;
}

#[\Override]
#[Override]
public function getAsWhereArguments(FilterInterface $filter, array $handlers): array
{
/** @var All $filter */
Expand Down
5 changes: 3 additions & 2 deletions src/Reader/FilterHandler/AndXHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,21 @@

use Cycle\Database\Query\SelectQuery;
use Cycle\ORM\Select\QueryBuilder;
use Override;
use Yiisoft\Data\Cycle\Exception\NotSupportedFilterException;
use Yiisoft\Data\Cycle\Reader\QueryBuilderFilterHandler;
use Yiisoft\Data\Reader\Filter\AndX;
use Yiisoft\Data\Reader\FilterInterface;

final class AndXHandler implements QueryBuilderFilterHandler
{
#[\Override]
#[Override]
public function getFilterClass(): string
{
return AndX::class;
}

#[\Override]
#[Override]
public function getAsWhereArguments(FilterInterface $filter, array $handlers): array
{
/** @var AndX $filter */
Expand Down
5 changes: 3 additions & 2 deletions src/Reader/FilterHandler/BetweenHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,20 @@

namespace Yiisoft\Data\Cycle\Reader\FilterHandler;

use Override;
use Yiisoft\Data\Cycle\Reader\QueryBuilderFilterHandler;
use Yiisoft\Data\Reader\Filter\Between;
use Yiisoft\Data\Reader\FilterInterface;

final class BetweenHandler implements QueryBuilderFilterHandler
{
#[\Override]
#[Override]
public function getFilterClass(): string
{
return Between::class;
}

#[\Override]
#[Override]
public function getAsWhereArguments(FilterInterface $filter, array $handlers): array
{
/** @var Between $filter */
Expand Down
5 changes: 3 additions & 2 deletions src/Reader/FilterHandler/EqualsHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,20 @@

namespace Yiisoft\Data\Cycle\Reader\FilterHandler;

use Override;
use Yiisoft\Data\Cycle\Reader\QueryBuilderFilterHandler;
use Yiisoft\Data\Reader\Filter\Equals;
use Yiisoft\Data\Reader\FilterInterface;

final class EqualsHandler implements QueryBuilderFilterHandler
{
#[\Override]
#[Override]
public function getFilterClass(): string
{
return Equals::class;
}

#[\Override]
#[Override]
public function getAsWhereArguments(FilterInterface $filter, array $handlers): array
{
/** @var Equals $filter */
Expand Down
5 changes: 3 additions & 2 deletions src/Reader/FilterHandler/EqualsNullHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,20 @@

namespace Yiisoft\Data\Cycle\Reader\FilterHandler;

use Override;
use Yiisoft\Data\Cycle\Reader\QueryBuilderFilterHandler;
use Yiisoft\Data\Reader\Filter\EqualsNull;
use Yiisoft\Data\Reader\FilterInterface;

final class EqualsNullHandler implements QueryBuilderFilterHandler
{
#[\Override]
#[Override]
public function getFilterClass(): string
{
return EqualsNull::class;
}

#[\Override]
#[Override]
public function getAsWhereArguments(FilterInterface $filter, array $handlers): array
{
/** @var EqualsNull $filter */
Expand Down
5 changes: 3 additions & 2 deletions src/Reader/FilterHandler/GreaterThanHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,20 @@

namespace Yiisoft\Data\Cycle\Reader\FilterHandler;

use Override;
use Yiisoft\Data\Cycle\Reader\QueryBuilderFilterHandler;
use Yiisoft\Data\Reader\Filter\GreaterThan;
use Yiisoft\Data\Reader\FilterInterface;

final class GreaterThanHandler implements QueryBuilderFilterHandler
{
#[\Override]
#[Override]
public function getFilterClass(): string
{
return GreaterThan::class;
}

#[\Override]
#[Override]
public function getAsWhereArguments(FilterInterface $filter, array $handlers): array
{
/** @var GreaterThan $filter */
Expand Down
5 changes: 3 additions & 2 deletions src/Reader/FilterHandler/GreaterThanOrEqualHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,20 @@

namespace Yiisoft\Data\Cycle\Reader\FilterHandler;

use Override;
use Yiisoft\Data\Cycle\Reader\QueryBuilderFilterHandler;
use Yiisoft\Data\Reader\Filter\GreaterThanOrEqual;
use Yiisoft\Data\Reader\FilterInterface;

final class GreaterThanOrEqualHandler implements QueryBuilderFilterHandler
{
#[\Override]
#[Override]
public function getFilterClass(): string
{
return GreaterThanOrEqual::class;
}

#[\Override]
#[Override]
public function getAsWhereArguments(FilterInterface $filter, array $handlers): array
{
/** @var GreaterThanOrEqual $filter */
Expand Down
5 changes: 3 additions & 2 deletions src/Reader/FilterHandler/InHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,20 @@
namespace Yiisoft\Data\Cycle\Reader\FilterHandler;

use Cycle\Database\Injection\Parameter;
use Override;
use Yiisoft\Data\Cycle\Reader\QueryBuilderFilterHandler;
use Yiisoft\Data\Reader\Filter\In;
use Yiisoft\Data\Reader\FilterInterface;

final class InHandler implements QueryBuilderFilterHandler
{
#[\Override]
#[Override]
public function getFilterClass(): string
{
return In::class;
}

#[\Override]
#[Override]
public function getAsWhereArguments(FilterInterface $filter, array $handlers): array
{
/** @var In $filter */
Expand Down
5 changes: 3 additions & 2 deletions src/Reader/FilterHandler/LessThanHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,20 @@

namespace Yiisoft\Data\Cycle\Reader\FilterHandler;

use Override;
use Yiisoft\Data\Cycle\Reader\QueryBuilderFilterHandler;
use Yiisoft\Data\Reader\Filter\LessThan;
use Yiisoft\Data\Reader\FilterInterface;

final class LessThanHandler implements QueryBuilderFilterHandler
{
#[\Override]
#[Override]
public function getFilterClass(): string
{
return LessThan::class;
}

#[\Override]
#[Override]
public function getAsWhereArguments(FilterInterface $filter, array $handlers): array
{
/** @var LessThan $filter */
Expand Down
5 changes: 3 additions & 2 deletions src/Reader/FilterHandler/LessThanOrEqualHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,20 @@

namespace Yiisoft\Data\Cycle\Reader\FilterHandler;

use Override;
use Yiisoft\Data\Cycle\Reader\QueryBuilderFilterHandler;
use Yiisoft\Data\Reader\Filter\LessThanOrEqual;
use Yiisoft\Data\Reader\FilterInterface;

final class LessThanOrEqualHandler implements QueryBuilderFilterHandler
{
#[\Override]
#[Override]
public function getFilterClass(): string
{
return LessThanOrEqual::class;
}

#[\Override]
#[Override]
public function getAsWhereArguments(FilterInterface $filter, array $handlers): array
{
/** @var LessThanOrEqual $filter */
Expand Down
3 changes: 2 additions & 1 deletion src/Reader/FilterHandler/LikeHandler/BaseLikeHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

namespace Yiisoft\Data\Cycle\Reader\FilterHandler\LikeHandler;

use Override;
use Stringable;
use Yiisoft\Data\Cycle\Reader\QueryBuilderFilterHandler;
use Yiisoft\Data\Reader\Filter\Like;
Expand All @@ -17,7 +18,7 @@ abstract class BaseLikeHandler implements QueryBuilderFilterHandler
'\\' => '\\\\',
];

#[\Override]
#[Override]
public function getFilterClass(): string
{
return Like::class;
Expand Down
3 changes: 2 additions & 1 deletion src/Reader/FilterHandler/LikeHandler/MysqlLikeHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,13 @@

namespace Yiisoft\Data\Cycle\Reader\FilterHandler\LikeHandler;

use Override;
use Yiisoft\Data\Reader\Filter\Like;
use Yiisoft\Data\Reader\FilterInterface;

final class MysqlLikeHandler extends BaseLikeHandler
{
#[\Override]
#[Override]
public function getAsWhereArguments(FilterInterface $filter, array $handlers): array
{
/** @var Like $filter */
Expand Down
Loading
Loading