| @@ 14-35 (lines=22) @@ | ||
| 11 | use eZ\Publish\Core\Persistence\Legacy\URL\Query\CriterionHandler; |
|
| 12 | use eZ\Publish\Core\Persistence\Database\SelectQuery; |
|
| 13 | ||
| 14 | class Pattern implements CriterionHandler |
|
| 15 | { |
|
| 16 | /** |
|
| 17 | * {@inheritdoc} |
|
| 18 | */ |
|
| 19 | public function accept(Criterion $criterion) |
|
| 20 | { |
|
| 21 | return $criterion instanceof Criterion\Pattern; |
|
| 22 | } |
|
| 23 | ||
| 24 | /** |
|
| 25 | * {@inheritdoc} |
|
| 26 | */ |
|
| 27 | public function handle(CriteriaConverter $converter, SelectQuery $query, Criterion $criterion) |
|
| 28 | { |
|
| 29 | /** @var Criterion\Pattern $criterion */ |
|
| 30 | return $query->expr->like( |
|
| 31 | 'url', |
|
| 32 | $query->bindValue('%' . $criterion->pattern . '%') |
|
| 33 | ); |
|
| 34 | } |
|
| 35 | } |
|
| 36 | ||
| @@ 14-35 (lines=22) @@ | ||
| 11 | use eZ\Publish\Core\Persistence\Legacy\URL\Query\CriterionHandler; |
|
| 12 | use eZ\Publish\Core\Persistence\Database\SelectQuery; |
|
| 13 | ||
| 14 | class Validity implements CriterionHandler |
|
| 15 | { |
|
| 16 | /** |
|
| 17 | * {@inheritdoc} |
|
| 18 | */ |
|
| 19 | public function accept(Criterion $criterion) |
|
| 20 | { |
|
| 21 | return $criterion instanceof Criterion\Validity; |
|
| 22 | } |
|
| 23 | ||
| 24 | /** |
|
| 25 | * {@inheritdoc} |
|
| 26 | */ |
|
| 27 | public function handle(CriteriaConverter $converter, SelectQuery $query, Criterion $criterion) |
|
| 28 | { |
|
| 29 | /** @var Criterion\Validity $criterion */ |
|
| 30 | return $query->expr->eq( |
|
| 31 | 'is_valid', |
|
| 32 | $query->bindValue((int) $criterion->isValid) |
|
| 33 | ); |
|
| 34 | } |
|
| 35 | } |
|
| 36 | ||