CassandraClient::get_string_property PHP Method

get_string_property() public method

public get_string_property ( $property )
    public function get_string_property($property)
    {
        $this->send_get_string_property($property);
        return $this->recv_get_string_property();
    }

Usage Example

Esempio n. 1
0
 /**
  * Given a single host, attempts to find other nodes in the cluster and attaches them
  * to the pool
  * @todo build connections from token map
  * @param string $host host name or IP of connecting node
  * @param string $poolName name of the connection pool (cluster name)
  * @param int $port TCP port of connecting node
  * @return bool connected ok
  */
 public static function auto($host, $poolName = self::DEFAULT_POOL_NAME, $port = THRIFT_PORT_DEFAULT)
 {
     try {
         // Create Thrift transport and binary protocol cassandra client
         $transport = new TBufferedTransport(new TSocket($host, $port, PERSIST_CONNECTIONS, 'PandraCore::registerError'), 1024, 1024);
         $transport->open();
         $client = new CassandraClient(function_exists("thrift_protocol_write_binary") ? new TBinaryProtocolAccelerated($transport) : new TBinaryProtocol($transport));
         $tokenMap = $client->get_string_property('token map');
         $tokens = json_decode($tokenMap);
         foreach ($tokens as $token => $host) {
             if (!self::connect($token, $host, $poolName)) {
                 return FALSE;
             }
         }
         return TRUE;
     } catch (TException $te) {
         self::registerError('TException: ' . $te->getMessage() . ' ' . (isset($te->why) ? $te->why : ''));
     }
     return FALSE;
 }