diff --git a/CHANGELOG.md b/CHANGELOG.md index b82435a76a..f166b3bced 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -28,7 +28,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 * Added `Elastica\Aggregation\GeoDistance::setKeyed()` [#1876](https://github.com/ruflin/Elastica/pull/1876) * Added `Elastica\Aggregation\Histogram::setKeyed()` [#1876](https://github.com/ruflin/Elastica/pull/1876) * Added `Elastica\Aggregation\IpRange::setKeyed()` [#1876](https://github.com/ruflin/Elastica/pull/1876) -* Added `Elastica\Aggregation\GeotileGrid` [#1880](https://github.com/ruflin/Elastica/pull/1880) +* Added `Elastica\Aggregation\GeotileGridAggregation` [#1880](https://github.com/ruflin/Elastica/pull/1880) ### Changed * Allow `string` such as `wait_for` to be passed to `AbstractUpdateAction::setRefresh` [#1791](https://github.com/ruflin/Elastica/pull/1791) * Changed the return type of `AbstractUpdateAction::getRefresh` to `boolean|string` [#1791](https://github.com/ruflin/Elastica/pull/1791) diff --git a/src/Aggregation/GeotileGrid.php b/src/Aggregation/GeotileGridAggregation.php similarity index 80% rename from src/Aggregation/GeotileGrid.php rename to src/Aggregation/GeotileGridAggregation.php index 4c80609fed..aa41687313 100644 --- a/src/Aggregation/GeotileGrid.php +++ b/src/Aggregation/GeotileGridAggregation.php @@ -3,13 +3,15 @@ namespace Elastica\Aggregation; /** - * Class GeotileGrid. + * Class GeotileGridAggregation. * * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-geotilegrid-aggregation.html */ -class GeotileGrid extends AbstractAggregation +class GeotileGridAggregation extends AbstractAggregation { - public const DEFAULT_PRECISION_VALUE = 5; + use Traits\ShardSizeTrait; + + public const DEFAULT_PRECISION_VALUE = 7; public const DEFAULT_SIZE_VALUE = 10000; /** @@ -57,14 +59,4 @@ public function setSize(int $size): self { return $this->setParam('size', $size); } - - /** - * Set the number of results returned from each shard. - * - * @return $this - */ - public function setShardSize(int $shardSize): self - { - return $this->setParam('shard_size', $shardSize); - } } diff --git a/src/QueryBuilder/DSL/Aggregation.php b/src/QueryBuilder/DSL/Aggregation.php index 3c736e64b7..28b97f1cef 100644 --- a/src/QueryBuilder/DSL/Aggregation.php +++ b/src/QueryBuilder/DSL/Aggregation.php @@ -16,7 +16,7 @@ use Elastica\Aggregation\Filters; use Elastica\Aggregation\GeoDistance; use Elastica\Aggregation\GeohashGrid; -use Elastica\Aggregation\GeotileGrid; +use Elastica\Aggregation\GeotileGridAggregation; use Elastica\Aggregation\GlobalAggregation; use Elastica\Aggregation\Histogram; use Elastica\Aggregation\IpRange; @@ -413,9 +413,9 @@ public function geohash_grid(string $name, string $field): GeohashGrid * @param string $name the name of this aggregation * @param string $field the field on which to perform this aggregation */ - public function geotile_grid(string $name, string $field): GeotileGrid + public function geotile_grid(string $name, string $field): GeotileGridAggregation { - return new GeotileGrid($name, $field); + return new GeotileGridAggregation($name, $field); } /** diff --git a/tests/Aggregation/GeotileGridTest.php b/tests/Aggregation/GeotileGridAggregationTest.php similarity index 87% rename from tests/Aggregation/GeotileGridTest.php rename to tests/Aggregation/GeotileGridAggregationTest.php index 9f992a9fcf..96732a4ae2 100644 --- a/tests/Aggregation/GeotileGridTest.php +++ b/tests/Aggregation/GeotileGridAggregationTest.php @@ -2,7 +2,7 @@ namespace Elastica\Test\Aggregation; -use Elastica\Aggregation\GeotileGrid; +use Elastica\Aggregation\GeotileGridAggregation; use Elastica\Document; use Elastica\Index; use Elastica\Mapping; @@ -11,14 +11,14 @@ /** * @internal */ -class GeotileGridTest extends BaseAggregationTest +class GeotileGridAggregationTest extends BaseAggregationTest { /** * @group functional */ public function testGeotileGridAggregation(): void { - $agg = new GeotileGrid('tile', 'location'); + $agg = new GeotileGridAggregation('tile', 'location'); $agg->setPrecision(7); $query = new Query(); diff --git a/tests/QueryBuilder/DSL/AggregationTest.php b/tests/QueryBuilder/DSL/AggregationTest.php index 6f8d7c4f72..70fb8f0a55 100644 --- a/tests/QueryBuilder/DSL/AggregationTest.php +++ b/tests/QueryBuilder/DSL/AggregationTest.php @@ -41,7 +41,7 @@ public function testInterface(): void $this->_assertImplemented($aggregationDSL, 'filters', Aggregation\Filters::class, ['name']); $this->_assertImplemented($aggregationDSL, 'geo_distance', Aggregation\GeoDistance::class, ['name', 'field', 'origin']); $this->_assertImplemented($aggregationDSL, 'geohash_grid', Aggregation\GeohashGrid::class, ['name', 'field']); - $this->_assertImplemented($aggregationDSL, 'geotile_grid', Aggregation\GeotileGrid::class, ['name', 'field']); + $this->_assertImplemented($aggregationDSL, 'geotile_grid', Aggregation\GeotileGridAggregation::class, ['name', 'field']); $this->_assertImplemented($aggregationDSL, 'global', Aggregation\GlobalAggregation::class, ['name']); $this->_assertImplemented($aggregationDSL, 'histogram', Aggregation\Histogram::class, ['name', 'field', 1]); $this->_assertImplemented($aggregationDSL, 'ipv4_range', Aggregation\IpRange::class, ['name', 'field']);