void CassDriver::ConnectSession() {
  CassError rc = CASS_OK;
  CassFuture* future = cass_cluster_connect_keyspace(cluster_,
                                                     "offline_keyspace");
  cass_future_wait(future);
  rc = cass_future_error_code(future);
  if (rc != CASS_OK) {
    PrintError(future);
  } else {
    session_ = cass_future_get_session(future);
  }
  cass_future_free(future);
}
CassError connect_session(CassCluster* cluster, CassSession** output) {
  CassError rc = CASS_OK;
  CassFuture* future = cass_cluster_connect(cluster);

  *output = NULL;

  cass_future_wait(future);
  rc = cass_future_error_code(future);
  if(rc != CASS_OK) {
    print_error(future);
  } else {
    *output = cass_future_get_session(future);
  }
  cass_future_free(future);

  return rc;
}
Beispiel #3
0
bool Connection::open()
{
	if (_is_open) {
		return true;
	}

	CassCluster* cluster = cass_cluster_new();

	cass_cluster_set_protocol_version(cluster, 2);
	cass_cluster_set_contact_points(cluster, _host_string);
	cass_cluster_set_port(cluster, _port);

	CassFuture* future = cass_cluster_connect(cluster);

	_session = cass_future_get_session(future);
	_is_open = cass_future_error_code(future) == CASS_OK && _session != nullptr;

	cass_future_free(future);
	cass_cluster_free(cluster);

	return _is_open;
}