Example #1
0
 /** @brief Executes query.
  * @param $format [in] prefered result format.
  * @return Helper or array depending on chosen $format.
  */
 public function execute($format = AfsHelperFormat::ARRAYS)
 {
     $this->config->set_helper_format($format);
     $query_mgr = new AfsAcpQueryManager($this->connector, $this->config);
     $reply = $query_mgr->send($this->query);
     $helper = new AfsAcpResponseHelper($reply, $this->config);
     if (AfsHelperFormat::ARRAYS == $format) {
         return $helper->format();
     } else {
         return $helper;
     }
 }
 public function testMultiFeedsAsArray()
 {
     $input = json_decode('{
         "foo": [
           "search",
           [ "suggest" ],
           [ { "key": "value"} ]
         ],
         "bar": [
           "search",
           [ "sugg" ]
         ]
       }', true);
     $response = new AfsAcpResponseHelper($input);
     $this->assertTrue($response->has_replyset());
     $result = $response->format();
     $this->assertEquals('search', $result['query_string']);
     $this->assertTrue(array_key_exists('foo', $result));
     $replyset = $result['foo'];
     $this->assertEquals('foo', $replyset['feed']);
     $replies = $replyset['replies'];
     $reply = reset($replies);
     $this->assertEquals('suggest', $reply['value']);
     $option = each($reply['options']);
     $this->assertEquals('key', $option[0]);
     $this->assertEquals('value', $option[1]);
     $this->assertTrue(array_key_exists('bar', $result));
     $replyset = $result['bar'];
     $this->assertEquals('bar', $replyset['feed']);
     $replies = $replyset['replies'];
     $reply = reset($replies);
     $this->assertEquals('sugg', $reply['value']);
     $this->assertTrue(empty($reply['options']));
 }