summaryrefslogtreecommitdiff
path: root/vendor/ruflin/elastica/lib/Elastica/Facet/GeoCluster.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/ruflin/elastica/lib/Elastica/Facet/GeoCluster.php')
-rw-r--r--vendor/ruflin/elastica/lib/Elastica/Facet/GeoCluster.php66
1 files changed, 66 insertions, 0 deletions
diff --git a/vendor/ruflin/elastica/lib/Elastica/Facet/GeoCluster.php b/vendor/ruflin/elastica/lib/Elastica/Facet/GeoCluster.php
new file mode 100644
index 00000000..71fa5094
--- /dev/null
+++ b/vendor/ruflin/elastica/lib/Elastica/Facet/GeoCluster.php
@@ -0,0 +1,66 @@
+<?php
+namespace Elastica\Facet;
+
+/**
+ * Implements the Geo Cluster facet.
+ *
+ * @author Konstantin Nikiforov <konstantin.nikiforov@gmail.com>
+ *
+ * @link https://github.com/zenobase/geocluster-facet
+ * @deprecated Facets are deprecated and will be removed in a future release. You are encouraged to migrate to aggregations instead.
+ */
+class GeoCluster extends AbstractFacet
+{
+ /**
+ * @param string $fieldName
+ *
+ * @return $this
+ */
+ public function setField($fieldName)
+ {
+ $this->setParam('field', $fieldName);
+
+ return $this;
+ }
+
+ /**
+ * @param float $factor
+ *
+ * @return $this
+ */
+ public function setFactor($factor)
+ {
+ $this->setParam('factor', $factor);
+
+ return $this;
+ }
+
+ /**
+ * @param bool $showIds
+ *
+ * @return $this
+ */
+ public function setShowIds($showIds)
+ {
+ $this->setParam('showIds', $showIds);
+
+ return $this;
+ }
+
+ /**
+ * Creates the full facet definition, which includes the basic
+ * facet definition of the parent.
+ *
+ * @see \Elastica\Facet\AbstractFacet::toArray()
+ *
+ * @throws \Elastica\Exception\InvalidException When the right fields haven't been set.
+ *
+ * @return array
+ */
+ public function toArray()
+ {
+ $this->_setFacetParam('geo_cluster', $this->_params);
+
+ return parent::toArray();
+ }
+}