public function testSetFields() { $f1 = new Field(); $f1->setKey('f1'); $f2 = new Field(); $f2->setKey('f2'); $fields = array($f1, $f2); $this->stats->addFields($fields); $f3 = new Field(); $f3->setKey('f3'); $f4 = new Field(); $f4->setKey('f4'); $fields2 = array('f3' => $f3, 'f4' => $f4); $this->stats->setFields($fields2); $this->assertEquals($fields2, $this->stats->getFields()); }
/** * Add request settings for the stats component * * @param StatsComponent $component * @param Request $request * @return Request */ public function buildComponent($component, $request) { // enable stats $request->addParam('stats', 'true'); // add fields foreach ($component->getFields() as $field) { $request->addParam('stats.field', $field->getKey()); // add field specific facet stats foreach ($field->getFacets() as $facet) { $request->addParam('f.' . $field->getKey() . '.stats.facet', $facet); } } // add facet stats for all fields foreach ($component->getFacets() as $facet) { $request->addParam('stats.facet', $facet); } return $request; }
/** * Add request settings for the stats component * * @param StatsComponent $component * @param Request $request * @return Request */ public function buildComponent($component, $request) { // enable stats $request->addParam('stats', 'true'); // add fields foreach ($component->getFields() as $field) { $value = $this->renderLocalParams($field->getKey(), array('ex' => $field->getExcludes())); $request->addParam('stats.field', $value); // add field specific facet stats foreach ($field->getFacets() as $facet) { $request->addParam('f.' . $field->getKey() . '.stats.facet', $facet); } } // add facet stats for all fields foreach ($component->getFacets() as $facet) { $request->addParam('stats.facet', $facet); } return $request; }
/** * Add request settings for the stats component. * * @param StatsComponent $component * @param Request $request * * @return Request */ public function buildComponent($component, $request) { // enable stats $request->addParam('stats', 'true'); // add fields foreach ($component->getFields() as $field) { $pivots = $field->getPivots(); $prefix = count($pivots) > 0 ? '{!tag=' . implode(',', $pivots) . '}' : ''; $request->addParam('stats.field', $prefix . $field->getKey()); // add field specific facet stats foreach ($field->getFacets() as $facet) { $request->addParam('f.' . $field->getKey() . '.stats.facet', $facet); } } // add facet stats for all fields foreach ($component->getFacets() as $facet) { $request->addParam('stats.facet', $facet); } return $request; }