Exemplo n.º 1
0
 public function testAppendPath()
 {
     $uri = new PhutilURI('http://example.com');
     $uri->appendPath('foo');
     $this->assertEqual('http://example.com/foo', $uri->__toString());
     $uri->appendPath('bar');
     $this->assertEqual('http://example.com/foo/bar', $uri->__toString());
     $uri = new PhutilURI('http://example.com');
     $uri->appendPath('/foo/');
     $this->assertEqual('http://example.com/foo/', $uri->__toString());
     $uri->appendPath('/bar/');
     $this->assertEqual('http://example.com/foo/bar/', $uri->__toString());
     $uri = new PhutilURI('http://example.com');
     $uri->appendPath('foo');
     $this->assertEqual('http://example.com/foo', $uri->__toString());
     $uri->appendPath('/bar/');
     $this->assertEqual('http://example.com/foo/bar/', $uri->__toString());
 }
 private function executeRequest($path, array $data, $method = 'GET')
 {
     $uri = new PhutilURI($this->uri);
     $uri->setPath($this->index);
     $uri->appendPath($path);
     $data = json_encode($data);
     $future = new HTTPSFuture($uri, $data);
     if ($method != 'GET') {
         $future->setMethod($method);
     }
     if ($this->getTimeout()) {
         $future->setTimeout($this->getTimeout());
     }
     list($body) = $future->resolvex();
     if ($method != 'GET') {
         return null;
     }
     try {
         return phutil_json_decode($body);
     } catch (PhutilJSONParserException $ex) {
         throw new PhutilProxyException(pht('ElasticSearch server returned invalid JSON!'), $ex);
     }
 }
 private function executeRequest($path, array $data, $is_write = false)
 {
     $uri = new PhutilURI($this->uri);
     $uri->setPath($this->index);
     $uri->appendPath($path);
     $data = json_encode($data);
     $future = new HTTPSFuture($uri, $data);
     if ($is_write) {
         $future->setMethod('PUT');
     }
     if ($this->getTimeout()) {
         $future->setTimeout($this->getTimeout());
     }
     list($body) = $future->resolvex();
     if ($is_write) {
         return null;
     }
     $body = json_decode($body, true);
     if (!is_array($body)) {
         throw new Exception('elasticsearch server returned invalid JSON!');
     }
     return $body;
 }