Commit da347ad8 authored by Bas de Nooijer's avatar Bas de Nooijer

Revert "Excludes on stats"

parent b47b9cd2
......@@ -52,13 +52,6 @@ class Field extends Configurable
*/
protected $facets = array();
/**
* Exclude tags for this stat
*
* @var array
*/
protected $excludes = array();
/**
* Initialize options
*
......@@ -74,13 +67,6 @@ class Field extends Configurable
case 'facet':
$this->setFacets($value);
break;
case 'exclude':
if (!is_array($value)) {
$value = array($value);
}
$this->setExcludes($value);
unset($this->options['exclude']);
break;
}
}
}
......@@ -193,83 +179,4 @@ class Field extends Configurable
return $this;
}
/**
* Add an exclude tag
*
* @param string $tag
* @return self Provides fluent interface
*/
public function addExclude($tag)
{
$this->excludes[$tag] = true;
return $this;
}
/**
* Add multiple exclude tags
*
* @param array $excludes
* @return self Provides fluent interface
*/
public function addExcludes(array $excludes)
{
foreach ($excludes as $exclude) {
$this->addExclude($exclude);
}
return $this;
}
/**
* Get all excludes
*
* @return array
*/
public function getExcludes()
{
return array_keys($this->excludes);
}
/**
* Remove a single exclude tag
*
* @param string $exclude
* @return self Provides fluent interface
*/
public function removeExclude($exclude)
{
if (isset($this->excludes[$exclude])) {
unset($this->excludes[$exclude]);
}
return $this;
}
/**
* Remove all excludes
*
* @return self Provides fluent interface
*/
public function clearExcludes()
{
$this->excludes = array();
return $this;
}
/**
* Set multiple excludes
*
* This overwrites any existing excludes
*
* @param array $excludes
*/
public function setExcludes($excludes)
{
$this->clearExcludes();
$this->addExcludes($excludes);
}
}
\ No newline at end of file
}
......@@ -40,12 +40,11 @@ namespace Solarium\QueryType\Select\RequestBuilder\Component;
use Solarium\QueryType\Select\Query\Component\Stats\Stats as StatsComponent;
use Solarium\Core\Client\Request;
use Solarium\Core\Query\RequestBuilder;
/**
* Add select component stats to the request
*/
class Stats extends RequestBuilder
class Stats implements ComponentRequestBuilderInterface
{
/**
* Add request settings for the stats component
......@@ -62,12 +61,7 @@ class Stats extends RequestBuilder
// add fields
foreach ($component->getFields() as $field) {
$value = $this->renderLocalParams(
$field->getKey(),
array('ex' => $field->getExcludes())
);
$request->addParam('stats.field', $value);
$request->addParam('stats.field', $field->getKey());
// add field specific facet stats
foreach ($field->getFacets() as $facet) {
......@@ -82,4 +76,4 @@ class Stats extends RequestBuilder
return $request;
}
}
\ No newline at end of file
}
......@@ -107,37 +107,4 @@ class FieldTest extends \PHPUnit_Framework_TestCase
$this->field->setFacets(array('facet3', 'facet4'));
$this->assertEquals(array('facet3', 'facet4'), $this->field->getFacets());
}
public function testAddExclude()
{
$this->field->addExclude('e1');
$this->assertEquals(array('e1'), $this->field->getExcludes());
}
public function testAddExcludes()
{
$this->field->addExcludes(array('e1', 'e2'));
$this->assertEquals(array('e1', 'e2'), $this->field->getExcludes());
}
public function testRemoveExclude()
{
$this->field->addExcludes(array('e1', 'e2'));
$this->field->removeExclude('e1');
$this->assertEquals(array('e2'), $this->field->getExcludes());
}
public function testClearExcludes()
{
$this->field->addExcludes(array('e1', 'e2'));
$this->field->clearExcludes();
$this->assertEquals(array(), $this->field->getExcludes());
}
public function testSetExcludes()
{
$this->field->addExcludes(array('e1', 'e2'));
$this->field->setExcludes(array('e3', 'e4'));
$this->assertEquals(array('e3', 'e4'), $this->field->getExcludes());
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment