SpanNot.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace Elastica\Query;
  3. /**
  4. * SpanNot query.
  5. *
  6. * @author Alessandro Chitolina <alekitto@gmail.com>
  7. *
  8. * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-span-not-query.html
  9. */
  10. class SpanNot extends AbstractSpanQuery
  11. {
  12. /**
  13. * Constructs a SpanWithin query object.
  14. *
  15. * @param AbstractSpanQuery $include OPTIONAL
  16. * @param AbstractSpanQuery $exclude OPTIONAL
  17. */
  18. public function __construct(AbstractSpanQuery $include = null, AbstractSpanQuery $exclude = null)
  19. {
  20. if (null !== $include) {
  21. $this->setInclude($include);
  22. }
  23. if (null !== $exclude) {
  24. $this->setExclude($exclude);
  25. }
  26. }
  27. /**
  28. * @param AbstractSpanQuery $include
  29. *
  30. * @return $this
  31. */
  32. public function setInclude(AbstractSpanQuery $include)
  33. {
  34. return $this->setParam('include', $include);
  35. }
  36. /**
  37. * @param AbstractSpanQuery $exclude
  38. *
  39. * @return $this
  40. */
  41. public function setExclude(AbstractSpanQuery $exclude)
  42. {
  43. return $this->setParam('exclude', $exclude);
  44. }
  45. }