ForceMerge.php 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. namespace Elasticsearch\Endpoints\Indices;
  3. use Elasticsearch\Endpoints\AbstractEndpoint;
  4. /**
  5. * Class ForceMerge
  6. *
  7. * @category Elasticsearch
  8. * @package Elasticsearch\Endpoints\Indices
  9. * @author Zachary Tong <zach@elastic.co>
  10. * @license http://www.apache.org/licenses/LICENSE-2.0 Apache2
  11. * @link http://elastic.co
  12. */
  13. class ForceMerge extends AbstractEndpoint
  14. {
  15. /**
  16. * @return string
  17. */
  18. public function getURI()
  19. {
  20. $index = $this->index;
  21. $uri = "/_forcemerge";
  22. if (isset($index) === true) {
  23. $uri = "/$index/_forcemerge";
  24. }
  25. return $uri;
  26. }
  27. /**
  28. * @return string[]
  29. */
  30. public function getParamWhitelist()
  31. {
  32. return array(
  33. 'flush',
  34. 'ignore_unavailable',
  35. 'allow_no_indices',
  36. 'expand_wildcards',
  37. 'max_num_segments',
  38. 'only_expunge_deletes',
  39. 'operation_threading',
  40. 'wait_for_merge',
  41. );
  42. }
  43. /**
  44. * @return string
  45. */
  46. public function getMethod()
  47. {
  48. return 'POST';
  49. }
  50. }