/** @brief Construct new replyset helper instance. * * @param $reply_set [in] one reply from decoded json reply. * @param $query [in] query which has produced current reply. * @param $config [in] helper configuration object. */ public function __construct($reply_set, AfsQuery $query, AfsHelperConfiguration $config) { $reply_helper_factory = new AfsReplyHelperFactory($config->get_reply_text_visitor()); parent::__construct($reply_set, $config, $reply_helper_factory); $this->initialize_facet($reply_set, $query, $config); $this->initialize_cluster($reply_set, $query, $config); $this->initialize_pager($reply_set, $query, $config); }
/** @brief Constructs new cluster helper instance. * * @param $cluster [in] One cluster reply. * @param $meta [in] Reply set meta data. * @param $facet_helper [in] Facet helper (used to retrieve value label). * @param $query [in] AfsQuery object previously initialized. It is used to * generate new query to filter on this cluster reply. * @param $config [in] Helper configuration. */ public function __construct($cluster, AfsMetaHelper $meta, $facet_helper, AfsQuery $query, AfsHelperConfiguration $config) { $formatter = AfsFacetHelperRetriever::get_formatter($meta->get_cluster_id(), $query); $this->id = $formatter->format($cluster->id); $this->initialize_label($facet_helper); $this->total_replies = $cluster->totalItems; $factory = new AfsReplyHelperFactory($config->get_reply_text_visitor()); $this->replies = $factory->create_replies($meta->get_feed(), $cluster); $this->query = $query->auto_set_from()->unset_cluster()->add_filter($meta->get_cluster_id(), $this->id); $this->config = $config; }
public function testSetAndRetrieveReplyTextVisitor() { $config = new AfsHelperConfiguration(); $visitor = new TextVisitorMock(); $config->set_reply_text_visitor($visitor); $visitor = $config->get_reply_text_visitor(); $this->assertNotNull($visitor); $text = new AfsMatchText(json_decode('{"match": "bar"}')); $this->assertEquals('<BBB>bar</BBB>', $visitor->visit_AfsMatchText($text)); }