|
2 | 2 | namespace Elastica\QueryBuilder\DSL;
|
3 | 3 |
|
4 | 4 | use Elastica\Exception\NotImplementedException;
|
| 5 | +use Elastica\Query\AbstractSpanQuery; |
5 | 6 | use Elastica\Query\BoolQuery;
|
6 | 7 | use Elastica\Query\Boosting;
|
7 | 8 | use Elastica\Query\Common;
|
|
26 | 27 | use Elastica\Query\Range;
|
27 | 28 | use Elastica\Query\Regexp;
|
28 | 29 | use Elastica\Query\SimpleQueryString;
|
| 30 | +use Elastica\Query\SpanContaining; |
29 | 31 | use Elastica\Query\SpanFirst;
|
30 | 32 | use Elastica\Query\SpanMulti;
|
31 | 33 | use Elastica\Query\SpanNear;
|
| 34 | +use Elastica\Query\SpanNot; |
32 | 35 | use Elastica\Query\SpanOr;
|
33 | 36 | use Elastica\Query\SpanTerm;
|
| 37 | +use Elastica\Query\SpanWithin; |
34 | 38 | use Elastica\Query\Term;
|
35 | 39 | use Elastica\Query\Terms;
|
36 | 40 | use Elastica\Query\Type;
|
@@ -401,11 +405,16 @@ public function span_near($clauses = [], $slop = 1, $inOrder = false)
|
401 | 405 | /**
|
402 | 406 | * span not query.
|
403 | 407 | *
|
| 408 | + * @param AbstractSpanQuery|null $include |
| 409 | + * @param AbstractSpanQuery|null $exclude |
| 410 | + * |
| 411 | + * @return SpanNot |
| 412 | + * |
404 | 413 | * @link https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-span-not-query.html
|
405 | 414 | */
|
406 |
| - public function span_not() |
| 415 | + public function span_not(AbstractSpanQuery $include = null, AbstractSpanQuery $exclude = null) |
407 | 416 | {
|
408 |
| - throw new NotImplementedException(); |
| 417 | + return new SpanNot($include, $exclude); |
409 | 418 | }
|
410 | 419 |
|
411 | 420 | /**
|
@@ -436,6 +445,36 @@ public function span_term(array $term = [])
|
436 | 445 | return new SpanTerm($term);
|
437 | 446 | }
|
438 | 447 |
|
| 448 | + /** |
| 449 | + * span_containing query. |
| 450 | + * |
| 451 | + * @param AbstractSpanQuery|null $little |
| 452 | + * @param AbstractSpanQuery|null $big |
| 453 | + * |
| 454 | + * @return SpanContaining |
| 455 | + * |
| 456 | + * @link https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-span-containing-query.html |
| 457 | + */ |
| 458 | + public function span_containing(AbstractSpanQuery $little = null, AbstractSpanQuery $big = null) |
| 459 | + { |
| 460 | + return new SpanContaining($little, $big); |
| 461 | + } |
| 462 | + |
| 463 | + /** |
| 464 | + * span_within query. |
| 465 | + * |
| 466 | + * @param AbstractSpanQuery|null $little |
| 467 | + * @param AbstractSpanQuery|null $big |
| 468 | + * |
| 469 | + * @return SpanWithin |
| 470 | + * |
| 471 | + * @link https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-span-within-query.html |
| 472 | + */ |
| 473 | + public function span_within(AbstractSpanQuery $little = null, AbstractSpanQuery $big = null) |
| 474 | + { |
| 475 | + return new SpanWithin($little, $big); |
| 476 | + } |
| 477 | + |
439 | 478 | /**
|
440 | 479 | * term query.
|
441 | 480 | *
|
|
0 commit comments