#ifndef __CASSANDRA_H_INCLUDED__
#define __CASSANDRA_H_INCLUDED__
#include <stddef.h>
#include <stdint.h>
#if !defined(CASS_STATIC)
# if (defined(WIN32) || defined(_WIN32))
# if defined(CASS_BUILDING)
# define CASS_EXPORT __declspec(dllexport)
# else
# define CASS_EXPORT __declspec(dllimport)
# endif
# elif (defined(__SUNPRO_C) || defined(__SUNPRO_CC)) && !defined(CASS_STATIC)
# define CASS_EXPORT __global
# elif (defined(__GNUC__) && __GNUC__ >= 4) || defined(__INTEL_COMPILER)
# define CASS_EXPORT __attribute__ ((visibility("default")))
# endif
#else
#define CASS_EXPORT
#endif
#if defined(_MSC_VER)
# define CASS_DEPRECATED(func) __declspec(deprecated) func
#elif defined(__GNUC__) || defined(__INTEL_COMPILER)
# define CASS_DEPRECATED(func) func __attribute__((deprecated))
#else
# define CASS_DEPRECATED(func) func
#endif
#define CASS_VERSION_MAJOR 2
#define CASS_VERSION_MINOR 16
#define CASS_VERSION_PATCH 0
#define CASS_VERSION_SUFFIX ""
#ifdef __cplusplus
extern "C" {
#endif
typedef enum { cass_false = 0, cass_true = 1 } cass_bool_t;
typedef float cass_float_t;
typedef double cass_double_t;
typedef int8_t cass_int8_t;
typedef uint8_t cass_uint8_t;
typedef int16_t cass_int16_t;
typedef uint16_t cass_uint16_t;
typedef int32_t cass_int32_t;
typedef uint32_t cass_uint32_t;
typedef int64_t cass_int64_t;
typedef uint64_t cass_uint64_t;
#define CASS_UINT64_MAX 18446744073709551615ULL
typedef cass_uint8_t cass_byte_t;
typedef cass_uint64_t cass_duration_t;
#define CASS_INET_V4_LENGTH 4
#define CASS_INET_V6_LENGTH 16
#define CASS_INET_STRING_LENGTH 46
typedef struct CassInet_ {
cass_uint8_t address[CASS_INET_V6_LENGTH];
cass_uint8_t address_length;
} CassInet;
#define CASS_UUID_STRING_LENGTH 37
typedef struct CassUuid_ {
cass_uint64_t time_and_version;
cass_uint64_t clock_seq_and_node;
} CassUuid;
typedef struct CassCluster_ CassCluster;
typedef struct CassSession_ CassSession;
typedef struct CassStatement_ CassStatement;
typedef struct CassBatch_ CassBatch;
typedef struct CassFuture_ CassFuture;
typedef struct CassPrepared_ CassPrepared;
typedef struct CassResult_ CassResult;
typedef struct CassErrorResult_ CassErrorResult;
typedef struct CassNode_ CassNode;
typedef struct CassIterator_ CassIterator;
typedef struct CassRow_ CassRow;
typedef struct CassValue_ CassValue;
typedef struct CassDataType_ CassDataType;
typedef struct CassFunctionMeta_ CassFunctionMeta;
typedef struct CassAggregateMeta_ CassAggregateMeta;
typedef struct CassCollection_ CassCollection;
typedef struct CassTuple_ CassTuple;
typedef struct CassUserType_ CassUserType;
typedef struct CassSsl_ CassSsl;
typedef struct CassVersion_ {
int major_version;
int minor_version;
int patch_version;
} CassVersion;
typedef struct CassSchemaMeta_ CassSchemaMeta;
typedef struct CassKeyspaceMeta_ CassKeyspaceMeta;
typedef struct CassTableMeta_ CassTableMeta;
typedef struct CassMaterializedViewMeta_ CassMaterializedViewMeta;
typedef struct CassColumnMeta_ CassColumnMeta;
typedef struct CassIndexMeta_ CassIndexMeta;
typedef struct CassUuidGen_ CassUuidGen;
typedef struct CassTimestampGen_ CassTimestampGen;
typedef struct CassRetryPolicy_ CassRetryPolicy;
typedef struct CassCustomPayload_ CassCustomPayload;
typedef struct CassMetrics_ {
struct {
cass_uint64_t min;
cass_uint64_t max;
cass_uint64_t mean;
cass_uint64_t stddev;
cass_uint64_t median;
cass_uint64_t percentile_75th;
cass_uint64_t percentile_95th;
cass_uint64_t percentile_98th;
cass_uint64_t percentile_99th;
cass_uint64_t percentile_999th;
cass_double_t mean_rate;
cass_double_t one_minute_rate;
cass_double_t five_minute_rate;
cass_double_t fifteen_minute_rate;
} requests;
struct {
cass_uint64_t total_connections;
cass_uint64_t available_connections;
cass_uint64_t exceeded_pending_requests_water_mark;
cass_uint64_t exceeded_write_bytes_water_mark;
} stats;
struct {
cass_uint64_t connection_timeouts;
cass_uint64_t pending_request_timeouts;
cass_uint64_t request_timeouts;
} errors;
} CassMetrics;
typedef struct CassSpeculativeExecutionMetrics_ {
cass_uint64_t min;
cass_uint64_t max;
cass_uint64_t mean;
cass_uint64_t stddev;
cass_uint64_t median;
cass_uint64_t percentile_75th;
cass_uint64_t percentile_95th;
cass_uint64_t percentile_98th;
cass_uint64_t percentile_99th;
cass_uint64_t percentile_999th;
cass_uint64_t count;
cass_double_t percentage;
} CassSpeculativeExecutionMetrics;
typedef enum CassConsistency_ {
CASS_CONSISTENCY_UNKNOWN = 0xFFFF,
CASS_CONSISTENCY_ANY = 0x0000,
CASS_CONSISTENCY_ONE = 0x0001,
CASS_CONSISTENCY_TWO = 0x0002,
CASS_CONSISTENCY_THREE = 0x0003,
CASS_CONSISTENCY_QUORUM = 0x0004,
CASS_CONSISTENCY_ALL = 0x0005,
CASS_CONSISTENCY_LOCAL_QUORUM = 0x0006,
CASS_CONSISTENCY_EACH_QUORUM = 0x0007,
CASS_CONSISTENCY_SERIAL = 0x0008,
CASS_CONSISTENCY_LOCAL_SERIAL = 0x0009,
CASS_CONSISTENCY_LOCAL_ONE = 0x000A
} CassConsistency;
#define CASS_CONSISTENCY_MAPPING(XX) \
XX(CASS_CONSISTENCY_UNKNOWN, "UNKNOWN") \
XX(CASS_CONSISTENCY_ANY, "ANY") \
XX(CASS_CONSISTENCY_ONE, "ONE") \
XX(CASS_CONSISTENCY_TWO, "TWO") \
XX(CASS_CONSISTENCY_THREE, "THREE") \
XX(CASS_CONSISTENCY_QUORUM, "QUORUM") \
XX(CASS_CONSISTENCY_ALL, "ALL") \
XX(CASS_CONSISTENCY_LOCAL_QUORUM, "LOCAL_QUORUM") \
XX(CASS_CONSISTENCY_EACH_QUORUM, "EACH_QUORUM") \
XX(CASS_CONSISTENCY_SERIAL, "SERIAL") \
XX(CASS_CONSISTENCY_LOCAL_SERIAL, "LOCAL_SERIAL") \
XX(CASS_CONSISTENCY_LOCAL_ONE, "LOCAL_ONE")
#define CASS_CONSISTENCY_MAP CASS_CONSISTENCY_MAPPING
typedef enum CassWriteType_ {
CASS_WRITE_TYPE_UNKNOWN,
CASS_WRITE_TYPE_SIMPLE,
CASS_WRITE_TYPE_BATCH,
CASS_WRITE_TYPE_UNLOGGED_BATCH,
CASS_WRITE_TYPE_COUNTER,
CASS_WRITE_TYPE_BATCH_LOG,
CASS_WRITE_TYPE_CAS,
CASS_WRITE_TYPE_VIEW,
CASS_WRITE_TYPE_CDC
} CassWriteType;
#define CASS_WRITE_TYPE_MAPPING(XX) \
XX(CASS_WRITE_TYPE_SIMPLE, "SIMPLE") \
XX(CASS_WRITE_TYPE_BATCH, "BATCH") \
XX(CASS_WRITE_TYPE_UNLOGGED_BATCH, "UNLOGGED_BATCH") \
XX(CASS_WRITE_TYPE_COUNTER, "COUNTER") \
XX(CASS_WRITE_TYPE_BATCH_LOG, "BATCH_LOG") \
XX(CASS_WRITE_TYPE_CAS, "CAS") \
XX(CASS_WRITE_TYPE_VIEW, "VIEW") \
XX(CASS_WRITE_TYPE_CDC, "CDC")
#define CASS_WRITE_TYPE_MAP CASS_WRITE_TYPE_MAPPING
typedef enum CassColumnType_ {
CASS_COLUMN_TYPE_REGULAR,
CASS_COLUMN_TYPE_PARTITION_KEY,
CASS_COLUMN_TYPE_CLUSTERING_KEY,
CASS_COLUMN_TYPE_STATIC,
CASS_COLUMN_TYPE_COMPACT_VALUE
} CassColumnType;
typedef enum CassIndexType_ {
CASS_INDEX_TYPE_UNKNOWN,
CASS_INDEX_TYPE_KEYS,
CASS_INDEX_TYPE_CUSTOM,
CASS_INDEX_TYPE_COMPOSITES
} CassIndexType;
#define CASS_VALUE_TYPE_MAPPING(XX) \
XX(CASS_VALUE_TYPE_CUSTOM, 0x0000, "", "") \
XX(CASS_VALUE_TYPE_ASCII, 0x0001, "ascii", "org.apache.cassandra.db.marshal.AsciiType") \
XX(CASS_VALUE_TYPE_BIGINT, 0x0002, "bigint", "org.apache.cassandra.db.marshal.LongType") \
XX(CASS_VALUE_TYPE_BLOB, 0x0003, "blob", "org.apache.cassandra.db.marshal.BytesType") \
XX(CASS_VALUE_TYPE_BOOLEAN, 0x0004, "boolean", "org.apache.cassandra.db.marshal.BooleanType") \
XX(CASS_VALUE_TYPE_COUNTER, 0x0005, "counter", "org.apache.cassandra.db.marshal.CounterColumnType") \
XX(CASS_VALUE_TYPE_DECIMAL, 0x0006, "decimal", "org.apache.cassandra.db.marshal.DecimalType") \
XX(CASS_VALUE_TYPE_DOUBLE, 0x0007, "double", "org.apache.cassandra.db.marshal.DoubleType") \
XX(CASS_VALUE_TYPE_FLOAT, 0x0008, "float", "org.apache.cassandra.db.marshal.FloatType") \
XX(CASS_VALUE_TYPE_INT, 0x0009, "int", "org.apache.cassandra.db.marshal.Int32Type") \
XX(CASS_VALUE_TYPE_TEXT, 0x000A, "text", "org.apache.cassandra.db.marshal.UTF8Type") \
XX(CASS_VALUE_TYPE_TIMESTAMP, 0x000B, "timestamp", "org.apache.cassandra.db.marshal.TimestampType") \
XX(CASS_VALUE_TYPE_UUID, 0x000C, "uuid", "org.apache.cassandra.db.marshal.UUIDType") \
XX(CASS_VALUE_TYPE_VARCHAR, 0x000D, "varchar", "") \
XX(CASS_VALUE_TYPE_VARINT, 0x000E, "varint", "org.apache.cassandra.db.marshal.IntegerType") \
XX(CASS_VALUE_TYPE_TIMEUUID, 0x000F, "timeuuid", "org.apache.cassandra.db.marshal.TimeUUIDType") \
XX(CASS_VALUE_TYPE_INET, 0x0010, "inet", "org.apache.cassandra.db.marshal.InetAddressType") \
XX(CASS_VALUE_TYPE_DATE, 0x0011, "date", "org.apache.cassandra.db.marshal.SimpleDateType") \
XX(CASS_VALUE_TYPE_TIME, 0x0012, "time", "org.apache.cassandra.db.marshal.TimeType") \
XX(CASS_VALUE_TYPE_SMALL_INT, 0x0013, "smallint", "org.apache.cassandra.db.marshal.ShortType") \
XX(CASS_VALUE_TYPE_TINY_INT, 0x0014, "tinyint", "org.apache.cassandra.db.marshal.ByteType") \
XX(CASS_VALUE_TYPE_DURATION, 0x0015, "duration", "org.apache.cassandra.db.marshal.DurationType") \
XX(CASS_VALUE_TYPE_LIST, 0x0020, "list", "org.apache.cassandra.db.marshal.ListType") \
XX(CASS_VALUE_TYPE_MAP, 0x0021, "map", "org.apache.cassandra.db.marshal.MapType") \
XX(CASS_VALUE_TYPE_SET, 0x0022, "set", "org.apache.cassandra.db.marshal.SetType") \
XX(CASS_VALUE_TYPE_UDT, 0x0030, "", "") \
XX(CASS_VALUE_TYPE_TUPLE, 0x0031, "tuple", "org.apache.cassandra.db.marshal.TupleType")
typedef enum CassValueType_ {
CASS_VALUE_TYPE_UNKNOWN = 0xFFFF,
#define XX_VALUE_TYPE(name, type, cql, klass) name = type,
CASS_VALUE_TYPE_MAPPING(XX_VALUE_TYPE)
#undef XX_VALUE_TYPE
CASS_VALUE_TYPE_LAST_ENTRY
} CassValueType;
typedef enum CassClusteringOrder_ {
CASS_CLUSTERING_ORDER_NONE,
CASS_CLUSTERING_ORDER_ASC,
CASS_CLUSTERING_ORDER_DESC
} CassClusteringOrder;
typedef enum CassCollectionType_ {
CASS_COLLECTION_TYPE_LIST = CASS_VALUE_TYPE_LIST,
CASS_COLLECTION_TYPE_MAP = CASS_VALUE_TYPE_MAP,
CASS_COLLECTION_TYPE_SET = CASS_VALUE_TYPE_SET
} CassCollectionType;
typedef enum CassBatchType_ {
CASS_BATCH_TYPE_LOGGED = 0x00,
CASS_BATCH_TYPE_UNLOGGED = 0x01,
CASS_BATCH_TYPE_COUNTER = 0x02
} CassBatchType;
typedef enum CassIteratorType_ {
CASS_ITERATOR_TYPE_RESULT,
CASS_ITERATOR_TYPE_ROW,
CASS_ITERATOR_TYPE_COLLECTION,
CASS_ITERATOR_TYPE_MAP,
CASS_ITERATOR_TYPE_TUPLE,
CASS_ITERATOR_TYPE_USER_TYPE_FIELD,
CASS_ITERATOR_TYPE_META_FIELD,
CASS_ITERATOR_TYPE_KEYSPACE_META,
CASS_ITERATOR_TYPE_TABLE_META,
CASS_ITERATOR_TYPE_TYPE_META,
CASS_ITERATOR_TYPE_FUNCTION_META,
CASS_ITERATOR_TYPE_AGGREGATE_META,
CASS_ITERATOR_TYPE_COLUMN_META,
CASS_ITERATOR_TYPE_INDEX_META,
CASS_ITERATOR_TYPE_MATERIALIZED_VIEW_META
} CassIteratorType;
#define CASS_LOG_LEVEL_MAPPING(XX) \
XX(CASS_LOG_DISABLED, "") \
XX(CASS_LOG_CRITICAL, "CRITICAL") \
XX(CASS_LOG_ERROR, "ERROR") \
XX(CASS_LOG_WARN, "WARN") \
XX(CASS_LOG_INFO, "INFO") \
XX(CASS_LOG_DEBUG, "DEBUG") \
XX(CASS_LOG_TRACE, "TRACE")
#define CASS_LOG_LEVEL_MAP CASS_LOG_LEVEL_MAPPING
typedef enum CassLogLevel_ {
#define XX_LOG(log_level, _) log_level,
CASS_LOG_LEVEL_MAPPING(XX_LOG)
#undef XX_LOG
CASS_LOG_LAST_ENTRY
} CassLogLevel;
typedef enum CassSslVerifyFlags_ {
CASS_SSL_VERIFY_NONE = 0x00,
CASS_SSL_VERIFY_PEER_CERT = 0x01,
CASS_SSL_VERIFY_PEER_IDENTITY = 0x02,
CASS_SSL_VERIFY_PEER_IDENTITY_DNS = 0x04
} CassSslVerifyFlags;
typedef enum CassProtocolVersion_ {
CASS_PROTOCOL_VERSION_V1 = 0x01,
CASS_PROTOCOL_VERSION_V2 = 0x02,
CASS_PROTOCOL_VERSION_V3 = 0x03,
CASS_PROTOCOL_VERSION_V4 = 0x04,
CASS_PROTOCOL_VERSION_V5 = 0x05,
CASS_PROTOCOL_VERSION_DSEV1 = 0x41,
CASS_PROTOCOL_VERSION_DSEV2 = 0x42
} CassProtocolVersion;
typedef enum CassErrorSource_ {
CASS_ERROR_SOURCE_NONE,
CASS_ERROR_SOURCE_LIB,
CASS_ERROR_SOURCE_SERVER,
CASS_ERROR_SOURCE_SSL,
CASS_ERROR_SOURCE_COMPRESSION
} CassErrorSource;
#define CASS_ERROR_MAPPING(XX) \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_BAD_PARAMS, 1, "Bad parameters") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_NO_STREAMS, 2, "No streams available") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_UNABLE_TO_INIT, 3, "Unable to initialize") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_MESSAGE_ENCODE, 4, "Unable to encode message") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_HOST_RESOLUTION, 5, "Unable to resolve host") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_UNEXPECTED_RESPONSE, 6, "Unexpected response from server") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_REQUEST_QUEUE_FULL, 7, "The request queue is full") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_NO_AVAILABLE_IO_THREAD, 8, "No available IO threads") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_WRITE_ERROR, 9, "Write error") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_NO_HOSTS_AVAILABLE, 10, "No hosts available") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_INDEX_OUT_OF_BOUNDS, 11, "Index out of bounds") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_INVALID_ITEM_COUNT, 12, "Invalid item count") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_INVALID_VALUE_TYPE, 13, "Invalid value type") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_REQUEST_TIMED_OUT, 14, "Request timed out") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_UNABLE_TO_SET_KEYSPACE, 15, "Unable to set keyspace") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_CALLBACK_ALREADY_SET, 16, "Callback already set") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_INVALID_STATEMENT_TYPE, 17, "Invalid statement type") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_NAME_DOES_NOT_EXIST, 18, "No value or column for name") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_UNABLE_TO_DETERMINE_PROTOCOL, 19, "Unable to find supported protocol version") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_NULL_VALUE, 20, "NULL value specified") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_NOT_IMPLEMENTED, 21, "Not implemented") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_UNABLE_TO_CONNECT, 22, "Unable to connect") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_UNABLE_TO_CLOSE, 23, "Unable to close") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_NO_PAGING_STATE, 24, "No paging state") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_PARAMETER_UNSET, 25, "Parameter unset") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_INVALID_ERROR_RESULT_TYPE, 26, "Invalid error result type") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_INVALID_FUTURE_TYPE, 27, "Invalid future type") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_INTERNAL_ERROR, 28, "Internal error") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_INVALID_CUSTOM_TYPE, 29, "Invalid custom type") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_INVALID_DATA, 30, "Invalid data") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_NOT_ENOUGH_DATA, 31, "Not enough data") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_INVALID_STATE, 32, "Invalid state") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_NO_CUSTOM_PAYLOAD, 33, "No custom payload") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_EXECUTION_PROFILE_INVALID, 34, "Invalid execution profile specified") \
XX(CASS_ERROR_SOURCE_LIB, CASS_ERROR_LIB_NO_TRACING_ID, 35, "No tracing ID") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_SERVER_ERROR, 0x0000, "Server error") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_PROTOCOL_ERROR, 0x000A, "Protocol error") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_BAD_CREDENTIALS, 0x0100, "Bad credentials") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_UNAVAILABLE, 0x1000, "Unavailable") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_OVERLOADED, 0x1001, "Overloaded") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_IS_BOOTSTRAPPING, 0x1002, "Is bootstrapping") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_TRUNCATE_ERROR, 0x1003, "Truncate error") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_WRITE_TIMEOUT, 0x1100, "Write timeout") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_READ_TIMEOUT, 0x1200, "Read timeout") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_READ_FAILURE, 0x1300, "Read failure") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_FUNCTION_FAILURE, 0x1400, "Function failure") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_WRITE_FAILURE, 0x1500, "Write failure") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_SYNTAX_ERROR, 0x2000, "Syntax error") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_UNAUTHORIZED, 0x2100, "Unauthorized") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_INVALID_QUERY, 0x2200, "Invalid query") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_CONFIG_ERROR, 0x2300, "Configuration error") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_ALREADY_EXISTS, 0x2400, "Already exists") \
XX(CASS_ERROR_SOURCE_SERVER, CASS_ERROR_SERVER_UNPREPARED, 0x2500, "Unprepared") \
XX(CASS_ERROR_SOURCE_SSL, CASS_ERROR_SSL_INVALID_CERT, 1, "Unable to load certificate") \
XX(CASS_ERROR_SOURCE_SSL, CASS_ERROR_SSL_INVALID_PRIVATE_KEY, 2, "Unable to load private key") \
XX(CASS_ERROR_SOURCE_SSL, CASS_ERROR_SSL_NO_PEER_CERT, 3, "No peer certificate") \
XX(CASS_ERROR_SOURCE_SSL, CASS_ERROR_SSL_INVALID_PEER_CERT, 4, "Invalid peer certificate") \
XX(CASS_ERROR_SOURCE_SSL, CASS_ERROR_SSL_IDENTITY_MISMATCH, 5, "Certificate does not match host or IP address") \
XX(CASS_ERROR_SOURCE_SSL, CASS_ERROR_SSL_PROTOCOL_ERROR, 6, "Protocol error") \
XX(CASS_ERROR_SOURCE_SSL, CASS_ERROR_SSL_CLOSED, 7, "Connection closed")
#define CASS_ERROR_MAP CASS_ERROR_MAPPING
#define CASS_ERROR(source, code) ((source << 24) | code)
typedef enum CassError_ {
CASS_OK = 0,
#define XX_ERROR(source, name, code, _) name = CASS_ERROR(source, code),
CASS_ERROR_MAPPING(XX_ERROR)
#undef XX_ERROR
CASS_ERROR_LAST_ENTRY
} CassError;
typedef void (*CassFutureCallback)(CassFuture* future,
void* data);
#define CASS_LOG_MAX_MESSAGE_SIZE 1024
typedef struct CassLogMessage_ {
cass_uint64_t time_ms;
CassLogLevel severity;
const char* file;
int line;
const char* function;
char message[CASS_LOG_MAX_MESSAGE_SIZE];
} CassLogMessage;
typedef void (*CassLogCallback)(const CassLogMessage* message,
void* data);
typedef void* (*CassMallocFunction)(size_t size);
typedef void* (*CassReallocFunction)(void* ptr, size_t size);
typedef void (*CassFreeFunction)(void* ptr);
typedef struct CassAuthenticator_ CassAuthenticator;
typedef void (*CassAuthenticatorInitialCallback)(CassAuthenticator* auth,
void* data);
typedef void (*CassAuthenticatorChallengeCallback)(CassAuthenticator* auth,
void* data,
const char* token,
size_t token_size);
typedef void (*CassAuthenticatorSuccessCallback)(CassAuthenticator* auth,
void* data,
const char* token,
size_t token_size);
typedef void (*CassAuthenticatorCleanupCallback)(CassAuthenticator* auth,
void* data);
typedef void (*CassAuthenticatorDataCleanupCallback)(void* data);
typedef struct CassAuthenticatorCallbacks_ {
CassAuthenticatorInitialCallback initial_callback;
CassAuthenticatorChallengeCallback challenge_callback;
CassAuthenticatorSuccessCallback success_callback;
CassAuthenticatorCleanupCallback cleanup_callback;
} CassAuthenticatorCallbacks;
typedef enum CassHostListenerEvent_ {
CASS_HOST_LISTENER_EVENT_UP,
CASS_HOST_LISTENER_EVENT_DOWN,
CASS_HOST_LISTENER_EVENT_ADD,
CASS_HOST_LISTENER_EVENT_REMOVE
} CassHostListenerEvent;
typedef void(*CassHostListenerCallback)(CassHostListenerEvent event,
const CassInet address,
void* data);
typedef struct CassExecProfile_ CassExecProfile;
CASS_EXPORT CassExecProfile*
cass_execution_profile_new();
CASS_EXPORT void
cass_execution_profile_free(CassExecProfile* profile);
CASS_EXPORT CassError
cass_execution_profile_set_request_timeout(CassExecProfile* profile,
cass_uint64_t timeout_ms);
CASS_EXPORT CassError
cass_execution_profile_set_consistency(CassExecProfile* profile,
CassConsistency consistency);
CASS_EXPORT CassError
cass_execution_profile_set_serial_consistency(CassExecProfile* profile,
CassConsistency serial_consistency);
CASS_EXPORT CassError
cass_execution_profile_set_load_balance_round_robin(CassExecProfile* profile);
CASS_EXPORT CassError
cass_execution_profile_set_load_balance_dc_aware(CassExecProfile* profile,
const char* local_dc,
unsigned used_hosts_per_remote_dc,
cass_bool_t allow_remote_dcs_for_local_cl);
CASS_EXPORT CassError
cass_execution_profile_set_load_balance_dc_aware_n(CassExecProfile* profile,
const char* local_dc,
size_t local_dc_length,
unsigned used_hosts_per_remote_dc,
cass_bool_t allow_remote_dcs_for_local_cl);
CASS_EXPORT CassError
cass_execution_profile_set_token_aware_routing(CassExecProfile* profile,
cass_bool_t enabled);
CASS_EXPORT CassError
cass_execution_profile_set_token_aware_routing_shuffle_replicas(CassExecProfile* profile,
cass_bool_t enabled);
CASS_EXPORT CassError
cass_execution_profile_set_latency_aware_routing(CassExecProfile* profile,
cass_bool_t enabled);
CASS_EXPORT CassError
cass_execution_profile_set_latency_aware_routing_settings(CassExecProfile* profile,
cass_double_t exclusion_threshold,
cass_uint64_t scale_ms,
cass_uint64_t retry_period_ms,
cass_uint64_t update_rate_ms,
cass_uint64_t min_measured);
CASS_EXPORT CassError
cass_execution_profile_set_whitelist_filtering(CassExecProfile* profile,
const char* hosts);
CASS_EXPORT CassError
cass_execution_profile_set_whitelist_filtering_n(CassExecProfile* profile,
const char* hosts,
size_t hosts_length);
CASS_EXPORT CassError
cass_execution_profile_set_blacklist_filtering(CassExecProfile* profile,
const char* hosts);
CASS_EXPORT CassError
cass_execution_profile_set_blacklist_filtering_n(CassExecProfile* profile,
const char* hosts,
size_t hosts_length);
CASS_EXPORT CassError
cass_execution_profile_set_whitelist_dc_filtering(CassExecProfile* profile,
const char* dcs);
CASS_EXPORT CassError
cass_execution_profile_set_whitelist_dc_filtering_n(CassExecProfile* profile,
const char* dcs,
size_t dcs_length);
CASS_EXPORT CassError
cass_execution_profile_set_blacklist_dc_filtering(CassExecProfile* profile,
const char* dcs);
CASS_EXPORT CassError
cass_execution_profile_set_blacklist_dc_filtering_n(CassExecProfile* profile,
const char* dcs,
size_t dcs_length);
CASS_EXPORT CassError
cass_execution_profile_set_retry_policy(CassExecProfile* profile,
CassRetryPolicy* retry_policy);
CASS_EXPORT CassError
cass_execution_profile_set_constant_speculative_execution_policy(CassExecProfile* profile,
cass_int64_t constant_delay_ms,
int max_speculative_executions);
CASS_EXPORT CassError
cass_execution_profile_set_no_speculative_execution_policy(CassExecProfile* profile);
CASS_EXPORT CassCluster*
cass_cluster_new();
CASS_EXPORT void
cass_cluster_free(CassCluster* cluster);
CASS_EXPORT CassError
cass_cluster_set_contact_points(CassCluster* cluster,
const char* contact_points);
CASS_EXPORT CassError
cass_cluster_set_contact_points_n(CassCluster* cluster,
const char* contact_points,
size_t contact_points_length);
CASS_EXPORT CassError
cass_cluster_set_port(CassCluster* cluster,
int port);
CASS_EXPORT CassError
cass_cluster_set_local_address(CassCluster* cluster,
const char* name);
CASS_EXPORT CassError
cass_cluster_set_local_address_n(CassCluster* cluster,
const char* name,
size_t name_length);
CASS_EXPORT void
cass_cluster_set_ssl(CassCluster* cluster,
CassSsl* ssl);
CASS_EXPORT CassError
cass_cluster_set_authenticator_callbacks(CassCluster* cluster,
const CassAuthenticatorCallbacks* exchange_callbacks,
CassAuthenticatorDataCleanupCallback cleanup_callback,
void* data);
CASS_EXPORT CassError
cass_cluster_set_protocol_version(CassCluster* cluster,
int protocol_version);
CASS_EXPORT CassError
cass_cluster_set_use_beta_protocol_version(CassCluster* cluster,
cass_bool_t enable);
CASS_EXPORT CassError
cass_cluster_set_consistency(CassCluster* cluster,
CassConsistency consistency);
CASS_EXPORT CassError
cass_cluster_set_serial_consistency(CassCluster* cluster,
CassConsistency consistency);
CASS_EXPORT CassError
cass_cluster_set_num_threads_io(CassCluster* cluster,
unsigned num_threads);
CASS_EXPORT CassError
cass_cluster_set_queue_size_io(CassCluster* cluster,
unsigned queue_size);
CASS_EXPORT CASS_DEPRECATED(CassError
cass_cluster_set_queue_size_event(CassCluster* cluster,
unsigned queue_size));
CASS_EXPORT CassError
cass_cluster_set_core_connections_per_host(CassCluster* cluster,
unsigned num_connections);
CASS_EXPORT CASS_DEPRECATED(CassError
cass_cluster_set_max_connections_per_host(CassCluster* cluster,
unsigned num_connections));
CASS_EXPORT CASS_DEPRECATED(void
cass_cluster_set_reconnect_wait_time(CassCluster* cluster,
unsigned wait_time));
CASS_EXPORT void
cass_cluster_set_constant_reconnect(CassCluster* cluster,
cass_uint64_t delay_ms);
CASS_EXPORT CassError
cass_cluster_set_exponential_reconnect(CassCluster* cluster,
cass_uint64_t base_delay_ms,
cass_uint64_t max_delay_ms);
CASS_EXPORT CassError
cass_cluster_set_coalesce_delay(CassCluster* cluster,
cass_int64_t delay_us);
CASS_EXPORT CassError
cass_cluster_set_new_request_ratio(CassCluster* cluster,
cass_int32_t ratio);
CASS_EXPORT CASS_DEPRECATED(CassError
cass_cluster_set_max_concurrent_creation(CassCluster* cluster,
unsigned num_connections));
CASS_EXPORT CASS_DEPRECATED(CassError
cass_cluster_set_max_concurrent_requests_threshold(CassCluster* cluster,
unsigned num_requests));
CASS_EXPORT CASS_DEPRECATED(CassError
cass_cluster_set_max_requests_per_flush(CassCluster* cluster,
unsigned num_requests));
CASS_EXPORT CASS_DEPRECATED(CassError
cass_cluster_set_write_bytes_high_water_mark(CassCluster* cluster,
unsigned num_bytes));
CASS_EXPORT CASS_DEPRECATED(CassError
cass_cluster_set_write_bytes_low_water_mark(CassCluster* cluster,
unsigned num_bytes));
CASS_EXPORT CASS_DEPRECATED(CassError
cass_cluster_set_pending_requests_high_water_mark(CassCluster* cluster,
unsigned num_requests));
CASS_EXPORT CASS_DEPRECATED(CassError
cass_cluster_set_pending_requests_low_water_mark(CassCluster* cluster,
unsigned num_requests));
CASS_EXPORT void
cass_cluster_set_connect_timeout(CassCluster* cluster,
unsigned timeout_ms);
CASS_EXPORT void
cass_cluster_set_request_timeout(CassCluster* cluster,
unsigned timeout_ms);
CASS_EXPORT void
cass_cluster_set_resolve_timeout(CassCluster* cluster,
unsigned timeout_ms);
CASS_EXPORT void
cass_cluster_set_max_schema_wait_time(CassCluster* cluster,
unsigned wait_time_ms);
CASS_EXPORT void
cass_cluster_set_tracing_max_wait_time(CassCluster* cluster,
unsigned max_wait_time_ms);
CASS_EXPORT void
cass_cluster_set_tracing_retry_wait_time(CassCluster* cluster,
unsigned retry_wait_time_ms);
CASS_EXPORT void
cass_cluster_set_tracing_consistency(CassCluster* cluster,
CassConsistency consistency);
CASS_EXPORT void
cass_cluster_set_credentials(CassCluster* cluster,
const char* username,
const char* password);
CASS_EXPORT void
cass_cluster_set_credentials_n(CassCluster* cluster,
const char* username,
size_t username_length,
const char* password,
size_t password_length);
CASS_EXPORT void
cass_cluster_set_load_balance_round_robin(CassCluster* cluster);
CASS_EXPORT CassError
cass_cluster_set_load_balance_dc_aware(CassCluster* cluster,
const char* local_dc,
unsigned used_hosts_per_remote_dc,
cass_bool_t allow_remote_dcs_for_local_cl);
CASS_EXPORT CassError
cass_cluster_set_load_balance_dc_aware_n(CassCluster* cluster,
const char* local_dc,
size_t local_dc_length,
unsigned used_hosts_per_remote_dc,
cass_bool_t allow_remote_dcs_for_local_cl);
CASS_EXPORT void
cass_cluster_set_token_aware_routing(CassCluster* cluster,
cass_bool_t enabled);
CASS_EXPORT void
cass_cluster_set_token_aware_routing_shuffle_replicas(CassCluster* cluster,
cass_bool_t enabled);
CASS_EXPORT void
cass_cluster_set_latency_aware_routing(CassCluster* cluster,
cass_bool_t enabled);
CASS_EXPORT void
cass_cluster_set_latency_aware_routing_settings(CassCluster* cluster,
cass_double_t exclusion_threshold,
cass_uint64_t scale_ms,
cass_uint64_t retry_period_ms,
cass_uint64_t update_rate_ms,
cass_uint64_t min_measured);
CASS_EXPORT void
cass_cluster_set_whitelist_filtering(CassCluster* cluster,
const char* hosts);
CASS_EXPORT void
cass_cluster_set_whitelist_filtering_n(CassCluster* cluster,
const char* hosts,
size_t hosts_length);
CASS_EXPORT void
cass_cluster_set_blacklist_filtering(CassCluster* cluster,
const char* hosts);
CASS_EXPORT void
cass_cluster_set_blacklist_filtering_n(CassCluster* cluster,
const char* hosts,
size_t hosts_length);
CASS_EXPORT void
cass_cluster_set_whitelist_dc_filtering(CassCluster* cluster,
const char* dcs);
CASS_EXPORT void
cass_cluster_set_whitelist_dc_filtering_n(CassCluster* cluster,
const char* dcs,
size_t dcs_length);
CASS_EXPORT void
cass_cluster_set_blacklist_dc_filtering(CassCluster* cluster,
const char* dcs);
CASS_EXPORT void
cass_cluster_set_blacklist_dc_filtering_n(CassCluster* cluster,
const char* dcs,
size_t dcs_length);
CASS_EXPORT void
cass_cluster_set_tcp_nodelay(CassCluster* cluster,
cass_bool_t enabled);
CASS_EXPORT void
cass_cluster_set_tcp_keepalive(CassCluster* cluster,
cass_bool_t enabled,
unsigned delay_secs);
CASS_EXPORT void
cass_cluster_set_timestamp_gen(CassCluster* cluster,
CassTimestampGen* timestamp_gen);
CASS_EXPORT void
cass_cluster_set_connection_heartbeat_interval(CassCluster* cluster,
unsigned interval_secs);
CASS_EXPORT void
cass_cluster_set_connection_idle_timeout(CassCluster* cluster,
unsigned timeout_secs);
CASS_EXPORT void
cass_cluster_set_retry_policy(CassCluster* cluster,
CassRetryPolicy* retry_policy);
CASS_EXPORT void
cass_cluster_set_use_schema(CassCluster* cluster,
cass_bool_t enabled);
CASS_EXPORT CassError
cass_cluster_set_use_hostname_resolution(CassCluster* cluster,
cass_bool_t enabled);
CASS_EXPORT CassError
cass_cluster_set_use_randomized_contact_points(CassCluster* cluster,
cass_bool_t enabled);
CASS_EXPORT CassError
cass_cluster_set_constant_speculative_execution_policy(CassCluster* cluster,
cass_int64_t constant_delay_ms,
int max_speculative_executions);
CASS_EXPORT CassError
cass_cluster_set_no_speculative_execution_policy(CassCluster* cluster);
CASS_EXPORT CassError
cass_cluster_set_max_reusable_write_objects(CassCluster* cluster,
unsigned num_objects);
CASS_EXPORT CassError
cass_cluster_set_execution_profile(CassCluster* cluster,
const char* name,
CassExecProfile* profile);
CASS_EXPORT CassError
cass_cluster_set_execution_profile_n(CassCluster* cluster,
const char* name,
size_t name_length,
CassExecProfile* profile);
CASS_EXPORT CassError
cass_cluster_set_prepare_on_all_hosts(CassCluster* cluster,
cass_bool_t enabled);
CASS_EXPORT CassError
cass_cluster_set_prepare_on_up_or_add_host(CassCluster* cluster,
cass_bool_t enabled);
CASS_EXPORT CassError
cass_cluster_set_no_compact(CassCluster* cluster,
cass_bool_t enabled);
CASS_EXPORT CassError
cass_cluster_set_host_listener_callback(CassCluster* cluster,
CassHostListenerCallback callback,
void* data);
CASS_EXPORT CassError
cass_cluster_set_cloud_secure_connection_bundle(CassCluster* cluster,
const char* path);
CASS_EXPORT CassError
cass_cluster_set_cloud_secure_connection_bundle_n(CassCluster* cluster,
const char* path,
size_t path_length);
CASS_EXPORT CassError
cass_cluster_set_cloud_secure_connection_bundle_no_ssl_lib_init(CassCluster* cluster,
const char* path);
CASS_EXPORT CassError
cass_cluster_set_cloud_secure_connection_bundle_no_ssl_lib_init_n(CassCluster* cluster,
const char* path,
size_t path_length);
CASS_EXPORT void
cass_cluster_set_application_name(CassCluster* cluster,
const char* application_name);
CASS_EXPORT void
cass_cluster_set_application_name_n(CassCluster* cluster,
const char* application_name,
size_t application_name_length);
CASS_EXPORT void
cass_cluster_set_application_version(CassCluster* cluster,
const char* application_version);
CASS_EXPORT void
cass_cluster_set_application_version_n(CassCluster* cluster,
const char* application_version,
size_t application_version_length);
CASS_EXPORT void
cass_cluster_set_client_id(CassCluster* cluster, CassUuid client_id);
CASS_EXPORT void
cass_cluster_set_monitor_reporting_interval(CassCluster* cluster,
unsigned interval_secs);
CASS_EXPORT CassSession*
cass_session_new();
CASS_EXPORT void
cass_session_free(CassSession* session);
CASS_EXPORT CassFuture*
cass_session_connect(CassSession* session,
const CassCluster* cluster);
CASS_EXPORT CassFuture*
cass_session_connect_keyspace(CassSession* session,
const CassCluster* cluster,
const char* keyspace);
CASS_EXPORT CassFuture*
cass_session_connect_keyspace_n(CassSession* session,
const CassCluster* cluster,
const char* keyspace,
size_t keyspace_length);
CASS_EXPORT CassFuture*
cass_session_close(CassSession* session);
CASS_EXPORT CassFuture*
cass_session_prepare(CassSession* session,
const char* query);
CASS_EXPORT CassFuture*
cass_session_prepare_n(CassSession* session,
const char* query,
size_t query_length);
CASS_EXPORT CassFuture*
cass_session_prepare_from_existing(CassSession* session,
CassStatement* statement);
CASS_EXPORT CassFuture*
cass_session_execute(CassSession* session,
const CassStatement* statement);
CASS_EXPORT CassFuture*
cass_session_execute_batch(CassSession* session,
const CassBatch* batch);
CASS_EXPORT const CassSchemaMeta*
cass_session_get_schema_meta(const CassSession* session);
CASS_EXPORT void
cass_session_get_metrics(const CassSession* session,
CassMetrics* output);
CASS_EXPORT void
cass_session_get_speculative_execution_metrics(const CassSession* session,
CassSpeculativeExecutionMetrics* output);
CASS_EXPORT CassUuid
cass_session_get_client_id(CassSession* session);
CASS_EXPORT void
cass_schema_meta_free(const CassSchemaMeta* schema_meta);
CASS_EXPORT cass_uint32_t
cass_schema_meta_snapshot_version(const CassSchemaMeta* schema_meta);
CASS_EXPORT CassVersion
cass_schema_meta_version(const CassSchemaMeta* schema_meta);
CASS_EXPORT const CassKeyspaceMeta*
cass_schema_meta_keyspace_by_name(const CassSchemaMeta* schema_meta,
const char* keyspace);
CASS_EXPORT const CassKeyspaceMeta*
cass_schema_meta_keyspace_by_name_n(const CassSchemaMeta* schema_meta,
const char* keyspace,
size_t keyspace_length);
CASS_EXPORT void
cass_keyspace_meta_name(const CassKeyspaceMeta* keyspace_meta,
const char** name,
size_t* name_length);
CASS_EXPORT cass_bool_t
cass_keyspace_meta_is_virtual(const CassKeyspaceMeta* keyspace_meta);
CASS_EXPORT const CassTableMeta*
cass_keyspace_meta_table_by_name(const CassKeyspaceMeta* keyspace_meta,
const char* table);
CASS_EXPORT const CassTableMeta*
cass_keyspace_meta_table_by_name_n(const CassKeyspaceMeta* keyspace_meta,
const char* table,
size_t table_length);
CASS_EXPORT const CassMaterializedViewMeta*
cass_keyspace_meta_materialized_view_by_name(const CassKeyspaceMeta* keyspace_meta,
const char* view);
CASS_EXPORT const CassMaterializedViewMeta*
cass_keyspace_meta_materialized_view_by_name_n(const CassKeyspaceMeta* keyspace_meta,
const char* view,
size_t view_length);
CASS_EXPORT const CassDataType*
cass_keyspace_meta_user_type_by_name(const CassKeyspaceMeta* keyspace_meta,
const char* type);
CASS_EXPORT const CassDataType*
cass_keyspace_meta_user_type_by_name_n(const CassKeyspaceMeta* keyspace_meta,
const char* type,
size_t type_length);
CASS_EXPORT const CassFunctionMeta*
cass_keyspace_meta_function_by_name(const CassKeyspaceMeta* keyspace_meta,
const char* name,
const char* arguments);
CASS_EXPORT const CassFunctionMeta*
cass_keyspace_meta_function_by_name_n(const CassKeyspaceMeta* keyspace_meta,
const char* name,
size_t name_length,
const char* arguments,
size_t arguments_length);
CASS_EXPORT const CassAggregateMeta*
cass_keyspace_meta_aggregate_by_name(const CassKeyspaceMeta* keyspace_meta,
const char* name,
const char* arguments);
CASS_EXPORT const CassAggregateMeta*
cass_keyspace_meta_aggregate_by_name_n(const CassKeyspaceMeta* keyspace_meta,
const char* name,
size_t name_length,
const char* arguments,
size_t arguments_length);
CASS_EXPORT const CassValue*
cass_keyspace_meta_field_by_name(const CassKeyspaceMeta* keyspace_meta,
const char* name);
CASS_EXPORT const CassValue*
cass_keyspace_meta_field_by_name_n(const CassKeyspaceMeta* keyspace_meta,
const char* name,
size_t name_length);
CASS_EXPORT void
cass_table_meta_name(const CassTableMeta* table_meta,
const char** name,
size_t* name_length);
CASS_EXPORT cass_bool_t
cass_table_meta_is_virtual(const CassTableMeta* table_meta);
CASS_EXPORT const CassColumnMeta*
cass_table_meta_column_by_name(const CassTableMeta* table_meta,
const char* column);
CASS_EXPORT const CassColumnMeta*
cass_table_meta_column_by_name_n(const CassTableMeta* table_meta,
const char* column,
size_t column_length);
CASS_EXPORT size_t
cass_table_meta_column_count(const CassTableMeta* table_meta);
CASS_EXPORT const CassColumnMeta*
cass_table_meta_column(const CassTableMeta* table_meta,
size_t index);
CASS_EXPORT const CassIndexMeta*
cass_table_meta_index_by_name(const CassTableMeta* table_meta,
const char* index);
CASS_EXPORT const CassIndexMeta*
cass_table_meta_index_by_name_n(const CassTableMeta* table_meta,
const char* index,
size_t index_length);
CASS_EXPORT size_t
cass_table_meta_index_count(const CassTableMeta* table_meta);
CASS_EXPORT const CassIndexMeta*
cass_table_meta_index(const CassTableMeta* table_meta,
size_t index);
CASS_EXPORT const CassMaterializedViewMeta*
cass_table_meta_materialized_view_by_name(const CassTableMeta* table_meta,
const char* view);
CASS_EXPORT const CassMaterializedViewMeta*
cass_table_meta_materialized_view_by_name_n(const CassTableMeta* table_meta,
const char* view,
size_t view_length);
CASS_EXPORT size_t
cass_table_meta_materialized_view_count(const CassTableMeta* table_meta);
CASS_EXPORT const CassMaterializedViewMeta*
cass_table_meta_materialized_view(const CassTableMeta* table_meta,
size_t index);
CASS_EXPORT size_t
cass_table_meta_partition_key_count(const CassTableMeta* table_meta);
CASS_EXPORT const CassColumnMeta*
cass_table_meta_partition_key(const CassTableMeta* table_meta,
size_t index);
CASS_EXPORT size_t
cass_table_meta_clustering_key_count(const CassTableMeta* table_meta);
CASS_EXPORT const CassColumnMeta*
cass_table_meta_clustering_key(const CassTableMeta* table_meta,
size_t index);
CASS_EXPORT CassClusteringOrder
cass_table_meta_clustering_key_order(const CassTableMeta* table_meta,
size_t index);
CASS_EXPORT const CassValue*
cass_table_meta_field_by_name(const CassTableMeta* table_meta,
const char* name);
CASS_EXPORT const CassValue*
cass_table_meta_field_by_name_n(const CassTableMeta* table_meta,
const char* name,
size_t name_length);
CASS_EXPORT const CassColumnMeta*
cass_materialized_view_meta_column_by_name(const CassMaterializedViewMeta* view_meta,
const char* column);
CASS_EXPORT const CassColumnMeta*
cass_materialized_view_meta_column_by_name_n(const CassMaterializedViewMeta* view_meta,
const char* column,
size_t column_length);
CASS_EXPORT void
cass_materialized_view_meta_name(const CassMaterializedViewMeta* view_meta,
const char** name,
size_t* name_length);
CASS_EXPORT const CassTableMeta*
cass_materialized_view_meta_base_table(const CassMaterializedViewMeta* view_meta);
CASS_EXPORT size_t
cass_materialized_view_meta_column_count(const CassMaterializedViewMeta* view_meta);
CASS_EXPORT const CassColumnMeta*
cass_materialized_view_meta_column(const CassMaterializedViewMeta* view_meta,
size_t index);
CASS_EXPORT size_t
cass_materialized_view_meta_partition_key_count(const CassMaterializedViewMeta* view_meta);
CASS_EXPORT const CassColumnMeta*
cass_materialized_view_meta_partition_key(const CassMaterializedViewMeta* view_meta,
size_t index);
CASS_EXPORT size_t
cass_materialized_view_meta_clustering_key_count(const CassMaterializedViewMeta* view_meta);
CASS_EXPORT const CassColumnMeta*
cass_materialized_view_meta_clustering_key(const CassMaterializedViewMeta* view_meta,
size_t index);
CASS_EXPORT CassClusteringOrder
cass_materialized_view_meta_clustering_key_order(const CassMaterializedViewMeta* view_meta,
size_t index);
CASS_EXPORT const CassValue*
cass_materialized_view_meta_field_by_name(const CassMaterializedViewMeta* view_meta,
const char* name);
CASS_EXPORT const CassValue*
cass_materialized_view_meta_field_by_name_n(const CassMaterializedViewMeta* view_meta,
const char* name,
size_t name_length);
CASS_EXPORT void
cass_column_meta_name(const CassColumnMeta* column_meta,
const char** name,
size_t* name_length);
CASS_EXPORT CassColumnType
cass_column_meta_type(const CassColumnMeta* column_meta);
CASS_EXPORT const CassDataType*
cass_column_meta_data_type(const CassColumnMeta* column_meta);
CASS_EXPORT const CassValue*
cass_column_meta_field_by_name(const CassColumnMeta* column_meta,
const char* name);
CASS_EXPORT const CassValue*
cass_column_meta_field_by_name_n(const CassColumnMeta* column_meta,
const char* name,
size_t name_length);
CASS_EXPORT void
cass_index_meta_name(const CassIndexMeta* index_meta,
const char** name,
size_t* name_length);
CASS_EXPORT CassIndexType
cass_index_meta_type(const CassIndexMeta* index_meta);
CASS_EXPORT void
cass_index_meta_target(const CassIndexMeta* index_meta,
const char** target,
size_t* target_length);
CASS_EXPORT const CassValue*
cass_index_meta_options(const CassIndexMeta* index_meta);
CASS_EXPORT const CassValue*
cass_index_meta_field_by_name(const CassIndexMeta* index_meta,
const char* name);
CASS_EXPORT const CassValue*
cass_index_meta_field_by_name_n(const CassIndexMeta* index_meta,
const char* name,
size_t name_length);
CASS_EXPORT void
cass_function_meta_name(const CassFunctionMeta* function_meta,
const char** name,
size_t* name_length);
CASS_EXPORT void
cass_function_meta_full_name(const CassFunctionMeta* function_meta,
const char** full_name,
size_t* full_name_length);
CASS_EXPORT void
cass_function_meta_body(const CassFunctionMeta* function_meta,
const char** body,
size_t* body_length);
CASS_EXPORT void
cass_function_meta_language(const CassFunctionMeta* function_meta,
const char** language,
size_t* language_length);
CASS_EXPORT cass_bool_t
cass_function_meta_called_on_null_input(const CassFunctionMeta* function_meta);
CASS_EXPORT size_t
cass_function_meta_argument_count(const CassFunctionMeta* function_meta);
CASS_EXPORT CassError
cass_function_meta_argument(const CassFunctionMeta* function_meta,
size_t index,
const char** name,
size_t* name_length,
const CassDataType** type);
CASS_EXPORT const CassDataType*
cass_function_meta_argument_type_by_name(const CassFunctionMeta* function_meta,
const char* name);
CASS_EXPORT const CassDataType*
cass_function_meta_argument_type_by_name_n(const CassFunctionMeta* function_meta,
const char* name,
size_t name_length);
CASS_EXPORT const CassDataType*
cass_function_meta_return_type(const CassFunctionMeta* function_meta);
CASS_EXPORT const CassValue*
cass_function_meta_field_by_name(const CassFunctionMeta* function_meta,
const char* name);
CASS_EXPORT const CassValue*
cass_function_meta_field_by_name_n(const CassFunctionMeta* function_meta,
const char* name,
size_t name_length);
CASS_EXPORT void
cass_aggregate_meta_name(const CassAggregateMeta* aggregate_meta,
const char** name,
size_t* name_length);
CASS_EXPORT void
cass_aggregate_meta_full_name(const CassAggregateMeta* aggregate_meta,
const char** full_name,
size_t* full_name_length);
CASS_EXPORT size_t
cass_aggregate_meta_argument_count(const CassAggregateMeta* aggregate_meta);
CASS_EXPORT const CassDataType*
cass_aggregate_meta_argument_type(const CassAggregateMeta* aggregate_meta,
size_t index);
CASS_EXPORT const CassDataType*
cass_aggregate_meta_return_type(const CassAggregateMeta* aggregate_meta);
CASS_EXPORT const CassDataType*
cass_aggregate_meta_state_type(const CassAggregateMeta* aggregate_meta);
CASS_EXPORT const CassFunctionMeta*
cass_aggregate_meta_state_func(const CassAggregateMeta* aggregate_meta);
CASS_EXPORT const CassFunctionMeta*
cass_aggregate_meta_final_func(const CassAggregateMeta* aggregate_meta);
CASS_EXPORT const CassValue*
cass_aggregate_meta_init_cond(const CassAggregateMeta* aggregate_meta);
CASS_EXPORT const CassValue*
cass_aggregate_meta_field_by_name(const CassAggregateMeta* aggregate_meta,
const char* name);
CASS_EXPORT const CassValue*
cass_aggregate_meta_field_by_name_n(const CassAggregateMeta* aggregate_meta,
const char* name,
size_t name_length);
CASS_EXPORT CassSsl*
cass_ssl_new();
CASS_EXPORT CassSsl*
cass_ssl_new_no_lib_init();
CASS_EXPORT void
cass_ssl_free(CassSsl* ssl);
CASS_EXPORT CassError
cass_ssl_add_trusted_cert(CassSsl* ssl,
const char* cert);
CASS_EXPORT CassError
cass_ssl_add_trusted_cert_n(CassSsl* ssl,
const char* cert,
size_t cert_length);
CASS_EXPORT void
cass_ssl_set_verify_flags(CassSsl* ssl,
int flags);
CASS_EXPORT CassError
cass_ssl_set_cert(CassSsl* ssl,
const char* cert);
CASS_EXPORT CassError
cass_ssl_set_cert_n(CassSsl* ssl,
const char* cert,
size_t cert_length);
CASS_EXPORT CassError
cass_ssl_set_private_key(CassSsl* ssl,
const char* key,
const char* password);
CASS_EXPORT CassError
cass_ssl_set_private_key_n(CassSsl* ssl,
const char* key,
size_t key_length,
const char* password,
size_t password_length);
CASS_EXPORT void
cass_authenticator_address(const CassAuthenticator* auth,
CassInet* address);
CASS_EXPORT const char*
cass_authenticator_hostname(const CassAuthenticator* auth,
size_t* length);
CASS_EXPORT const char*
cass_authenticator_class_name(const CassAuthenticator* auth,
size_t* length);
CASS_EXPORT void*
cass_authenticator_exchange_data(CassAuthenticator* auth);
CASS_EXPORT void
cass_authenticator_set_exchange_data(CassAuthenticator* auth,
void* exchange_data);
CASS_EXPORT char*
cass_authenticator_response(CassAuthenticator* auth,
size_t size);
CASS_EXPORT void
cass_authenticator_set_response(CassAuthenticator* auth,
const char* response,
size_t response_size);
CASS_EXPORT void
cass_authenticator_set_error(CassAuthenticator* auth,
const char* message);
CASS_EXPORT void
cass_authenticator_set_error_n(CassAuthenticator* auth,
const char* message,
size_t message_length);
CASS_EXPORT void
cass_future_free(CassFuture* future);
CASS_EXPORT CassError
cass_future_set_callback(CassFuture* future,
CassFutureCallback callback,
void* data);
CASS_EXPORT cass_bool_t
cass_future_ready(CassFuture* future);
CASS_EXPORT void
cass_future_wait(CassFuture* future);
CASS_EXPORT cass_bool_t
cass_future_wait_timed(CassFuture* future,
cass_duration_t timeout_us);
CASS_EXPORT const CassResult*
cass_future_get_result(CassFuture* future);
CASS_EXPORT const CassErrorResult*
cass_future_get_error_result(CassFuture* future);
CASS_EXPORT const CassPrepared*
cass_future_get_prepared(CassFuture* future);
CASS_EXPORT CassError
cass_future_error_code(CassFuture* future);
CASS_EXPORT void
cass_future_error_message(CassFuture* future,
const char** message,
size_t* message_length);
CASS_EXPORT CassError
cass_future_tracing_id(CassFuture* future,
CassUuid* tracing_id);
CASS_EXPORT size_t
cass_future_custom_payload_item_count(CassFuture* future);
CASS_EXPORT CassError
cass_future_custom_payload_item(CassFuture* future,
size_t index,
const char** name,
size_t* name_length,
const cass_byte_t** value,
size_t* value_size);
CASS_EXPORT const CassNode*
cass_future_coordinator(CassFuture* future);
CASS_EXPORT CassStatement*
cass_statement_new(const char* query,
size_t parameter_count);
CASS_EXPORT CassStatement*
cass_statement_new_n(const char* query,
size_t query_length,
size_t parameter_count);
CASS_EXPORT CassError
cass_statement_reset_parameters(CassStatement* statement,
size_t count);
CASS_EXPORT void
cass_statement_free(CassStatement* statement);
CASS_EXPORT CassError
cass_statement_add_key_index(CassStatement* statement,
size_t index);
CASS_EXPORT CassError
cass_statement_set_keyspace(CassStatement* statement,
const char* keyspace);
CASS_EXPORT CassError
cass_statement_set_keyspace_n(CassStatement* statement,
const char* keyspace,
size_t keyspace_length);
CASS_EXPORT CassError
cass_statement_set_consistency(CassStatement* statement,
CassConsistency consistency);
CASS_EXPORT CassError
cass_statement_set_serial_consistency(CassStatement* statement,
CassConsistency serial_consistency);
CASS_EXPORT CassError
cass_statement_set_paging_size(CassStatement* statement,
int page_size);
CASS_EXPORT CassError
cass_statement_set_paging_state(CassStatement* statement,
const CassResult* result);
CASS_EXPORT CassError
cass_statement_set_paging_state_token(CassStatement* statement,
const char* paging_state,
size_t paging_state_size);
CASS_EXPORT CassError
cass_statement_set_timestamp(CassStatement* statement,
cass_int64_t timestamp);
CASS_EXPORT CassError
cass_statement_set_request_timeout(CassStatement* statement,
cass_uint64_t timeout_ms);
CASS_EXPORT CassError
cass_statement_set_is_idempotent(CassStatement* statement,
cass_bool_t is_idempotent);
CASS_EXPORT CassError
cass_statement_set_retry_policy(CassStatement* statement,
CassRetryPolicy* retry_policy);
CASS_EXPORT CassError
cass_statement_set_custom_payload(CassStatement* statement,
const CassCustomPayload* payload);
CASS_EXPORT CassError
cass_statement_set_execution_profile(CassStatement* statement,
const char* name);
CASS_EXPORT CassError
cass_statement_set_execution_profile_n(CassStatement* statement,
const char* name,
size_t name_length);
CASS_EXPORT CassError
cass_statement_set_tracing(CassStatement* statement,
cass_bool_t enabled);
CASS_EXPORT CassError
cass_statement_set_host(CassStatement* statement,
const char* host,
int port);
CASS_EXPORT CassError
cass_statement_set_host_n(CassStatement* statement,
const char* host,
size_t host_length,
int port);
CASS_EXPORT CassError
cass_statement_set_host_inet(CassStatement* statement,
const CassInet* host,
int port);
CASS_EXPORT CassError
cass_statement_set_node(CassStatement* statement,
const CassNode* node);
CASS_EXPORT CassError
cass_statement_bind_null(CassStatement* statement,
size_t index);
CASS_EXPORT CassError
cass_statement_bind_null_by_name(CassStatement* statement,
const char* name);
CASS_EXPORT CassError
cass_statement_bind_null_by_name_n(CassStatement* statement,
const char* name,
size_t name_length);
CASS_EXPORT CassError
cass_statement_bind_int8(CassStatement* statement,
size_t index,
cass_int8_t value);
CASS_EXPORT CassError
cass_statement_bind_int8_by_name(CassStatement* statement,
const char* name,
cass_int8_t value);
CASS_EXPORT CassError
cass_statement_bind_int8_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
cass_int8_t value);
CASS_EXPORT CassError
cass_statement_bind_int16(CassStatement* statement,
size_t index,
cass_int16_t value);
CASS_EXPORT CassError
cass_statement_bind_int16_by_name(CassStatement* statement,
const char* name,
cass_int16_t value);
CASS_EXPORT CassError
cass_statement_bind_int16_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
cass_int16_t value);
CASS_EXPORT CassError
cass_statement_bind_int32(CassStatement* statement,
size_t index,
cass_int32_t value);
CASS_EXPORT CassError
cass_statement_bind_int32_by_name(CassStatement* statement,
const char* name,
cass_int32_t value);
CASS_EXPORT CassError
cass_statement_bind_int32_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
cass_int32_t value);
CASS_EXPORT CassError
cass_statement_bind_uint32(CassStatement* statement,
size_t index,
cass_uint32_t value);
CASS_EXPORT CassError
cass_statement_bind_uint32_by_name(CassStatement* statement,
const char* name,
cass_uint32_t value);
CASS_EXPORT CassError
cass_statement_bind_uint32_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
cass_uint32_t value);
CASS_EXPORT CassError
cass_statement_bind_int64(CassStatement* statement,
size_t index,
cass_int64_t value);
CASS_EXPORT CassError
cass_statement_bind_int64_by_name(CassStatement* statement,
const char* name,
cass_int64_t value);
CASS_EXPORT CassError
cass_statement_bind_int64_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
cass_int64_t value);
CASS_EXPORT CassError
cass_statement_bind_float(CassStatement* statement,
size_t index,
cass_float_t value);
CASS_EXPORT CassError
cass_statement_bind_float_by_name(CassStatement* statement,
const char* name,
cass_float_t value);
CASS_EXPORT CassError
cass_statement_bind_float_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
cass_float_t value);
CASS_EXPORT CassError
cass_statement_bind_double(CassStatement* statement,
size_t index,
cass_double_t value);
CASS_EXPORT CassError
cass_statement_bind_double_by_name(CassStatement* statement,
const char* name,
cass_double_t value);
CASS_EXPORT CassError
cass_statement_bind_double_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
cass_double_t value);
CASS_EXPORT CassError
cass_statement_bind_bool(CassStatement* statement,
size_t index,
cass_bool_t value);
CASS_EXPORT CassError
cass_statement_bind_bool_by_name(CassStatement* statement,
const char* name,
cass_bool_t value);
CASS_EXPORT CassError
cass_statement_bind_bool_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
cass_bool_t value);
CASS_EXPORT CassError
cass_statement_bind_string(CassStatement* statement,
size_t index,
const char* value);
CASS_EXPORT CassError
cass_statement_bind_string_n(CassStatement* statement,
size_t index,
const char* value,
size_t value_length);
CASS_EXPORT CassError
cass_statement_bind_string_by_name(CassStatement* statement,
const char* name,
const char* value);
CASS_EXPORT CassError
cass_statement_bind_string_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
const char* value,
size_t value_length);
CASS_EXPORT CassError
cass_statement_bind_bytes(CassStatement* statement,
size_t index,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_statement_bind_bytes_by_name(CassStatement* statement,
const char* name,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_statement_bind_bytes_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_statement_bind_custom(CassStatement* statement,
size_t index,
const char* class_name,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_statement_bind_custom_n(CassStatement* statement,
size_t index,
const char* class_name,
size_t class_name_length,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_statement_bind_custom_by_name(CassStatement* statement,
const char* name,
const char* class_name,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_statement_bind_custom_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
const char* class_name,
size_t class_name_length,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_statement_bind_uuid(CassStatement* statement,
size_t index,
CassUuid value);
CASS_EXPORT CassError
cass_statement_bind_uuid_by_name(CassStatement* statement,
const char* name,
CassUuid value);
CASS_EXPORT CassError
cass_statement_bind_uuid_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
CassUuid value);
CASS_EXPORT CassError
cass_statement_bind_inet(CassStatement* statement,
size_t index,
CassInet value);
CASS_EXPORT CassError
cass_statement_bind_inet_by_name(CassStatement* statement,
const char* name,
CassInet value);
CASS_EXPORT CassError
cass_statement_bind_inet_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
CassInet value);
CASS_EXPORT CassError
cass_statement_bind_decimal(CassStatement* statement,
size_t index,
const cass_byte_t* varint,
size_t varint_size,
cass_int32_t scale);
CASS_EXPORT CassError
cass_statement_bind_decimal_by_name(CassStatement* statement,
const char* name,
const cass_byte_t* varint,
size_t varint_size,
cass_int32_t scale);
CASS_EXPORT CassError
cass_statement_bind_decimal_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
const cass_byte_t* varint,
size_t varint_size,
cass_int32_t scale);
CASS_EXPORT CassError
cass_statement_bind_duration(CassStatement* statement,
size_t index,
cass_int32_t months,
cass_int32_t days,
cass_int64_t nanos);
CASS_EXPORT CassError
cass_statement_bind_duration_by_name(CassStatement* statement,
const char* name,
cass_int32_t months,
cass_int32_t days,
cass_int64_t nanos);
CASS_EXPORT CassError
cass_statement_bind_duration_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
cass_int32_t months,
cass_int32_t days,
cass_int64_t nanos);
CASS_EXPORT CassError
cass_statement_bind_collection(CassStatement* statement,
size_t index,
const CassCollection* collection);
CASS_EXPORT CassError
cass_statement_bind_collection_by_name(CassStatement* statement,
const char* name,
const CassCollection* collection);
CASS_EXPORT CassError
cass_statement_bind_collection_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
const CassCollection* collection);
CASS_EXPORT CassError
cass_statement_bind_tuple(CassStatement* statement,
size_t index,
const CassTuple* tuple);
CASS_EXPORT CassError
cass_statement_bind_tuple_by_name(CassStatement* statement,
const char* name,
const CassTuple* tuple);
CASS_EXPORT CassError
cass_statement_bind_tuple_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
const CassTuple* tuple);
CASS_EXPORT CassError
cass_statement_bind_user_type(CassStatement* statement,
size_t index,
const CassUserType* user_type);
CASS_EXPORT CassError
cass_statement_bind_user_type_by_name(CassStatement* statement,
const char* name,
const CassUserType* user_type);
CASS_EXPORT CassError
cass_statement_bind_user_type_by_name_n(CassStatement* statement,
const char* name,
size_t name_length,
const CassUserType* user_type);
CASS_EXPORT void
cass_prepared_free(const CassPrepared* prepared);
CASS_EXPORT CassStatement*
cass_prepared_bind(const CassPrepared* prepared);
CASS_EXPORT CassError
cass_prepared_parameter_name(const CassPrepared* prepared,
size_t index,
const char** name,
size_t* name_length);
CASS_EXPORT const CassDataType*
cass_prepared_parameter_data_type(const CassPrepared* prepared,
size_t index);
CASS_EXPORT const CassDataType*
cass_prepared_parameter_data_type_by_name(const CassPrepared* prepared,
const char* name);
CASS_EXPORT const CassDataType*
cass_prepared_parameter_data_type_by_name_n(const CassPrepared* prepared,
const char* name,
size_t name_length);
CASS_EXPORT CassBatch*
cass_batch_new(CassBatchType type);
CASS_EXPORT void
cass_batch_free(CassBatch* batch);
CASS_EXPORT CassError
cass_batch_set_keyspace(CassBatch* batch,
const char* keyspace);
CASS_EXPORT CassError
cass_batch_set_keyspace_n(CassBatch* batch,
const char* keyspace,
size_t keyspace_length);
CASS_EXPORT CassError
cass_batch_set_consistency(CassBatch* batch,
CassConsistency consistency);
CASS_EXPORT CassError
cass_batch_set_serial_consistency(CassBatch* batch,
CassConsistency serial_consistency);
CASS_EXPORT CassError
cass_batch_set_timestamp(CassBatch* batch,
cass_int64_t timestamp);
CASS_EXPORT CassError
cass_batch_set_request_timeout(CassBatch* batch,
cass_uint64_t timeout_ms);
CASS_EXPORT CassError
cass_batch_set_is_idempotent(CassBatch* batch,
cass_bool_t is_idempotent);
CASS_EXPORT CassError
cass_batch_set_retry_policy(CassBatch* batch,
CassRetryPolicy* retry_policy);
CASS_EXPORT CassError
cass_batch_set_custom_payload(CassBatch* batch,
const CassCustomPayload* payload);
CASS_EXPORT CassError
cass_batch_set_tracing(CassBatch* batch,
cass_bool_t enabled);
CASS_EXPORT CassError
cass_batch_add_statement(CassBatch* batch,
CassStatement* statement);
CASS_EXPORT CassError
cass_batch_set_execution_profile(CassBatch* batch,
const char* name);
CASS_EXPORT CassError
cass_batch_set_execution_profile_n(CassBatch* batch,
const char* name,
size_t name_length);
CASS_EXPORT CassDataType*
cass_data_type_new(CassValueType type);
CASS_EXPORT CassDataType*
cass_data_type_new_from_existing(const CassDataType* data_type);
CASS_EXPORT CassDataType*
cass_data_type_new_tuple(size_t item_count);
CASS_EXPORT CassDataType*
cass_data_type_new_udt(size_t field_count);
CASS_EXPORT void
cass_data_type_free(CassDataType* data_type);
CASS_EXPORT CassValueType
cass_data_type_type(const CassDataType* data_type);
CASS_EXPORT cass_bool_t
cass_data_type_is_frozen(const CassDataType* data_type);
CASS_EXPORT CassError
cass_data_type_type_name(const CassDataType* data_type,
const char** type_name,
size_t* type_name_length);
CASS_EXPORT CassError
cass_data_type_set_type_name(CassDataType* data_type,
const char* type_name);
CASS_EXPORT CassError
cass_data_type_set_type_name_n(CassDataType* data_type,
const char* type_name,
size_t type_name_length);
CASS_EXPORT CassError
cass_data_type_keyspace(const CassDataType* data_type,
const char** keyspace,
size_t* keyspace_length);
CASS_EXPORT CassError
cass_data_type_set_keyspace(CassDataType* data_type,
const char* keyspace);
CASS_EXPORT CassError
cass_data_type_set_keyspace_n(CassDataType* data_type,
const char* keyspace,
size_t keyspace_length);
CASS_EXPORT CassError
cass_data_type_class_name(const CassDataType* data_type,
const char** class_name,
size_t* class_name_length);
CASS_EXPORT CassError
cass_data_type_set_class_name(CassDataType* data_type,
const char* class_name);
CASS_EXPORT CassError
cass_data_type_set_class_name_n(CassDataType* data_type,
const char* class_name,
size_t class_name_length);
CASS_EXPORT size_t
cass_data_type_sub_type_count(const CassDataType* data_type);
CASS_EXPORT CASS_DEPRECATED(size_t
cass_data_sub_type_count(const CassDataType* data_type));
CASS_EXPORT const CassDataType*
cass_data_type_sub_data_type(const CassDataType* data_type,
size_t index);
CASS_EXPORT const CassDataType*
cass_data_type_sub_data_type_by_name(const CassDataType* data_type,
const char* name);
CASS_EXPORT const CassDataType*
cass_data_type_sub_data_type_by_name_n(const CassDataType* data_type,
const char* name,
size_t name_length);
CASS_EXPORT CassError
cass_data_type_sub_type_name(const CassDataType* data_type,
size_t index,
const char** name,
size_t* name_length);
CASS_EXPORT CassError
cass_data_type_add_sub_type(CassDataType* data_type,
const CassDataType* sub_data_type);
CASS_EXPORT CassError
cass_data_type_add_sub_type_by_name(CassDataType* data_type,
const char* name,
const CassDataType* sub_data_type);
CASS_EXPORT CassError
cass_data_type_add_sub_type_by_name_n(CassDataType* data_type,
const char* name,
size_t name_length,
const CassDataType* sub_data_type);
CASS_EXPORT CassError
cass_data_type_add_sub_value_type(CassDataType* data_type,
CassValueType sub_value_type);
CASS_EXPORT CassError
cass_data_type_add_sub_value_type_by_name(CassDataType* data_type,
const char* name,
CassValueType sub_value_type);
CASS_EXPORT CassError
cass_data_type_add_sub_value_type_by_name_n(CassDataType* data_type,
const char* name,
size_t name_length,
CassValueType sub_value_type);
CASS_EXPORT CassCollection*
cass_collection_new(CassCollectionType type,
size_t item_count);
CASS_EXPORT CassCollection*
cass_collection_new_from_data_type(const CassDataType* data_type,
size_t item_count);
CASS_EXPORT void
cass_collection_free(CassCollection* collection);
CASS_EXPORT const CassDataType*
cass_collection_data_type(const CassCollection* collection);
CASS_EXPORT CassError
cass_collection_append_int8(CassCollection* collection,
cass_int8_t value);
CASS_EXPORT CassError
cass_collection_append_int16(CassCollection* collection,
cass_int16_t value);
CASS_EXPORT CassError
cass_collection_append_int32(CassCollection* collection,
cass_int32_t value);
CASS_EXPORT CassError
cass_collection_append_uint32(CassCollection* collection,
cass_uint32_t value);
CASS_EXPORT CassError
cass_collection_append_int64(CassCollection* collection,
cass_int64_t value);
CASS_EXPORT CassError
cass_collection_append_float(CassCollection* collection,
cass_float_t value);
CASS_EXPORT CassError
cass_collection_append_double(CassCollection* collection,
cass_double_t value);
CASS_EXPORT CassError
cass_collection_append_bool(CassCollection* collection,
cass_bool_t value);
CASS_EXPORT CassError
cass_collection_append_string(CassCollection* collection,
const char* value);
CASS_EXPORT CassError
cass_collection_append_string_n(CassCollection* collection,
const char* value,
size_t value_length);
CASS_EXPORT CassError
cass_collection_append_bytes(CassCollection* collection,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_collection_append_custom(CassCollection* collection,
const char* class_name,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_collection_append_custom_n(CassCollection* collection,
const char* class_name,
size_t class_name_length,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_collection_append_uuid(CassCollection* collection,
CassUuid value);
CASS_EXPORT CassError
cass_collection_append_inet(CassCollection* collection,
CassInet value);
CASS_EXPORT CassError
cass_collection_append_decimal(CassCollection* collection,
const cass_byte_t* varint,
size_t varint_size,
cass_int32_t scale);
CASS_EXPORT CassError
cass_collection_append_duration(CassCollection* collection,
cass_int32_t months,
cass_int32_t days,
cass_int64_t nanos);
CASS_EXPORT CassError
cass_collection_append_collection(CassCollection* collection,
const CassCollection* value);
CASS_EXPORT CassError
cass_collection_append_tuple(CassCollection* collection,
const CassTuple* value);
CASS_EXPORT CassError
cass_collection_append_user_type(CassCollection* collection,
const CassUserType* value);
CASS_EXPORT CassTuple*
cass_tuple_new(size_t item_count);
CASS_EXPORT CassTuple*
cass_tuple_new_from_data_type(const CassDataType* data_type);
CASS_EXPORT void
cass_tuple_free(CassTuple* tuple);
CASS_EXPORT const CassDataType*
cass_tuple_data_type(const CassTuple* tuple);
CASS_EXPORT CassError
cass_tuple_set_null(CassTuple* tuple, size_t index);
CASS_EXPORT CassError
cass_tuple_set_int8(CassTuple* tuple,
size_t index,
cass_int8_t value);
CASS_EXPORT CassError
cass_tuple_set_int16(CassTuple* tuple,
size_t index,
cass_int16_t value);
CASS_EXPORT CassError
cass_tuple_set_int32(CassTuple* tuple,
size_t index,
cass_int32_t value);
CASS_EXPORT CassError
cass_tuple_set_uint32(CassTuple* tuple,
size_t index,
cass_uint32_t value);
CASS_EXPORT CassError
cass_tuple_set_int64(CassTuple* tuple,
size_t index,
cass_int64_t value);
CASS_EXPORT CassError
cass_tuple_set_float(CassTuple* tuple,
size_t index,
cass_float_t value);
CASS_EXPORT CassError
cass_tuple_set_double(CassTuple* tuple,
size_t index,
cass_double_t value);
CASS_EXPORT CassError
cass_tuple_set_bool(CassTuple* tuple,
size_t index,
cass_bool_t value);
CASS_EXPORT CassError
cass_tuple_set_string(CassTuple* tuple,
size_t index,
const char* value);
CASS_EXPORT CassError
cass_tuple_set_string_n(CassTuple* tuple,
size_t index,
const char* value,
size_t value_length);
CASS_EXPORT CassError
cass_tuple_set_bytes(CassTuple* tuple,
size_t index,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_tuple_set_custom(CassTuple* tuple,
size_t index,
const char* class_name,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_tuple_set_custom_n(CassTuple* tuple,
size_t index,
const char* class_name,
size_t class_name_length,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_tuple_set_uuid(CassTuple* tuple,
size_t index,
CassUuid value);
CASS_EXPORT CassError
cass_tuple_set_inet(CassTuple* tuple,
size_t index,
CassInet value);
CASS_EXPORT CassError
cass_tuple_set_decimal(CassTuple* tuple,
size_t index,
const cass_byte_t* varint,
size_t varint_size,
cass_int32_t scale);
CASS_EXPORT CassError
cass_tuple_set_duration(CassTuple* tuple,
size_t index,
cass_int32_t months,
cass_int32_t days,
cass_int64_t nanos);
CASS_EXPORT CassError
cass_tuple_set_collection(CassTuple* tuple,
size_t index,
const CassCollection* value);
CASS_EXPORT CassError
cass_tuple_set_tuple(CassTuple* tuple,
size_t index,
const CassTuple* value);
CASS_EXPORT CassError
cass_tuple_set_user_type(CassTuple* tuple,
size_t index,
const CassUserType* value);
CASS_EXPORT CassUserType*
cass_user_type_new_from_data_type(const CassDataType* data_type);
CASS_EXPORT void
cass_user_type_free(CassUserType* user_type);
CASS_EXPORT const CassDataType*
cass_user_type_data_type(const CassUserType* user_type);
CASS_EXPORT CassError
cass_user_type_set_null(CassUserType* user_type,
size_t index);
CASS_EXPORT CassError
cass_user_type_set_null_by_name(CassUserType* user_type,
const char* name);
CASS_EXPORT CassError
cass_user_type_set_null_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length);
CASS_EXPORT CassError
cass_user_type_set_int8(CassUserType* user_type,
size_t index,
cass_int8_t value);
CASS_EXPORT CassError
cass_user_type_set_int8_by_name(CassUserType* user_type,
const char* name,
cass_int8_t value);
CASS_EXPORT CassError
cass_user_type_set_int8_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
cass_int8_t value);
CASS_EXPORT CassError
cass_user_type_set_int16(CassUserType* user_type,
size_t index,
cass_int16_t value);
CASS_EXPORT CassError
cass_user_type_set_int16_by_name(CassUserType* user_type,
const char* name,
cass_int16_t value);
CASS_EXPORT CassError
cass_user_type_set_int16_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
cass_int16_t value);
CASS_EXPORT CassError
cass_user_type_set_int32(CassUserType* user_type,
size_t index,
cass_int32_t value);
CASS_EXPORT CassError
cass_user_type_set_int32_by_name(CassUserType* user_type,
const char* name,
cass_int32_t value);
CASS_EXPORT CassError
cass_user_type_set_int32_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
cass_int32_t value);
CASS_EXPORT CassError
cass_user_type_set_uint32(CassUserType* user_type,
size_t index,
cass_uint32_t value);
CASS_EXPORT CassError
cass_user_type_set_uint32_by_name(CassUserType* user_type,
const char* name,
cass_uint32_t value);
CASS_EXPORT CassError
cass_user_type_set_uint32_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
cass_uint32_t value);
CASS_EXPORT CassError
cass_user_type_set_int64(CassUserType* user_type,
size_t index,
cass_int64_t value);
CASS_EXPORT CassError
cass_user_type_set_int64_by_name(CassUserType* user_type,
const char* name,
cass_int64_t value);
CASS_EXPORT CassError
cass_user_type_set_int64_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
cass_int64_t value);
CASS_EXPORT CassError
cass_user_type_set_float(CassUserType* user_type,
size_t index,
cass_float_t value);
CASS_EXPORT CassError
cass_user_type_set_float_by_name(CassUserType* user_type,
const char* name,
cass_float_t value);
CASS_EXPORT CassError
cass_user_type_set_float_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
cass_float_t value);
CASS_EXPORT CassError
cass_user_type_set_double(CassUserType* user_type,
size_t index,
cass_double_t value);
CASS_EXPORT CassError
cass_user_type_set_double_by_name(CassUserType* user_type,
const char* name,
cass_double_t value);
CASS_EXPORT CassError
cass_user_type_set_double_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
cass_double_t value);
CASS_EXPORT CassError
cass_user_type_set_bool(CassUserType* user_type,
size_t index,
cass_bool_t value);
CASS_EXPORT CassError
cass_user_type_set_bool_by_name(CassUserType* user_type,
const char* name,
cass_bool_t value);
CASS_EXPORT CassError
cass_user_type_set_bool_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
cass_bool_t value);
CASS_EXPORT CassError
cass_user_type_set_string(CassUserType* user_type,
size_t index,
const char* value);
CASS_EXPORT CassError
cass_user_type_set_string_n(CassUserType* user_type,
size_t index,
const char* value,
size_t value_length);
CASS_EXPORT CassError
cass_user_type_set_string_by_name(CassUserType* user_type,
const char* name,
const char* value);
CASS_EXPORT CassError
cass_user_type_set_string_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
const char* value,
size_t value_length);
CASS_EXPORT CassError
cass_user_type_set_bytes(CassUserType* user_type,
size_t index,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_user_type_set_bytes_by_name(CassUserType* user_type,
const char* name,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_user_type_set_bytes_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_user_type_set_custom(CassUserType* user_type,
size_t index,
const char* class_name,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_user_type_set_custom_n(CassUserType* user_type,
size_t index,
const char* class_name,
size_t class_name_length,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_user_type_set_custom_by_name(CassUserType* user_type,
const char* name,
const char* class_name,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_user_type_set_custom_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
const char* class_name,
size_t class_name_length,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT CassError
cass_user_type_set_uuid(CassUserType* user_type,
size_t index,
CassUuid value);
CASS_EXPORT CassError
cass_user_type_set_uuid_by_name(CassUserType* user_type,
const char* name,
CassUuid value);
CASS_EXPORT CassError
cass_user_type_set_uuid_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
CassUuid value);
CASS_EXPORT CassError
cass_user_type_set_inet(CassUserType* user_type,
size_t index,
CassInet value);
CASS_EXPORT CassError
cass_user_type_set_inet_by_name(CassUserType* user_type,
const char* name,
CassInet value);
CASS_EXPORT CassError
cass_user_type_set_inet_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
CassInet value);
CASS_EXPORT CassError
cass_user_type_set_decimal(CassUserType* user_type,
size_t index,
const cass_byte_t* varint,
size_t varint_size,
int scale);
CASS_EXPORT CassError
cass_user_type_set_decimal_by_name(CassUserType* user_type,
const char* name,
const cass_byte_t* varint,
size_t varint_size,
int scale);
CASS_EXPORT CassError
cass_user_type_set_decimal_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
const cass_byte_t* varint,
size_t varint_size,
int scale);
CASS_EXPORT CassError
cass_user_type_set_duration(CassUserType* user_type,
size_t index,
cass_int32_t months,
cass_int32_t days,
cass_int64_t nanos);
CASS_EXPORT CassError
cass_user_type_set_duration_by_name(CassUserType* user_type,
const char* name,
cass_int32_t months,
cass_int32_t days,
cass_int64_t nanos);
CASS_EXPORT CassError
cass_user_type_set_duration_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
cass_int32_t months,
cass_int32_t days,
cass_int64_t nanos);
CASS_EXPORT CassError
cass_user_type_set_collection(CassUserType* user_type,
size_t index,
const CassCollection* value);
CASS_EXPORT CassError
cass_user_type_set_collection_by_name(CassUserType* user_type,
const char* name,
const CassCollection* value);
CASS_EXPORT CassError
cass_user_type_set_collection_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
const CassCollection* value);
CASS_EXPORT CassError
cass_user_type_set_tuple(CassUserType* user_type,
size_t index,
const CassTuple* value);
CASS_EXPORT CassError
cass_user_type_set_tuple_by_name(CassUserType* user_type,
const char* name,
const CassTuple* value);
CASS_EXPORT CassError
cass_user_type_set_tuple_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
const CassTuple* value);
CASS_EXPORT CassError
cass_user_type_set_user_type(CassUserType* user_type,
size_t index,
const CassUserType* value);
CASS_EXPORT CassError
cass_user_type_set_user_type_by_name(CassUserType* user_type,
const char* name,
const CassUserType* value);
CASS_EXPORT CassError
cass_user_type_set_user_type_by_name_n(CassUserType* user_type,
const char* name,
size_t name_length,
const CassUserType* value);
CASS_EXPORT void
cass_result_free(const CassResult* result);
CASS_EXPORT size_t
cass_result_row_count(const CassResult* result);
CASS_EXPORT size_t
cass_result_column_count(const CassResult* result);
CASS_EXPORT CassError
cass_result_column_name(const CassResult *result,
size_t index,
const char** name,
size_t* name_length);
CASS_EXPORT CassValueType
cass_result_column_type(const CassResult* result,
size_t index);
CASS_EXPORT const CassDataType*
cass_result_column_data_type(const CassResult* result, size_t index);
CASS_EXPORT const CassRow*
cass_result_first_row(const CassResult* result);
CASS_EXPORT cass_bool_t
cass_result_has_more_pages(const CassResult* result);
CASS_EXPORT CassError
cass_result_paging_state_token(const CassResult* result,
const char** paging_state,
size_t* paging_state_size);
CASS_EXPORT void
cass_error_result_free(const CassErrorResult* error_result);
CASS_EXPORT CassError
cass_error_result_code(const CassErrorResult* error_result);
CASS_EXPORT CassConsistency
cass_error_result_consistency(const CassErrorResult* error_result);
CASS_EXPORT cass_int32_t
cass_error_result_responses_received(const CassErrorResult* error_result);
CASS_EXPORT cass_int32_t
cass_error_result_responses_required(const CassErrorResult* error_result);
CASS_EXPORT cass_int32_t
cass_error_result_num_failures(const CassErrorResult* error_result);
CASS_EXPORT cass_bool_t
cass_error_result_data_present(const CassErrorResult* error_result);
CASS_EXPORT CassWriteType
cass_error_result_write_type(const CassErrorResult* error_result);
CASS_EXPORT CassError
cass_error_result_keyspace(const CassErrorResult* error_result,
const char** keyspace,
size_t* keyspace_length);
CASS_EXPORT CassError
cass_error_result_table(const CassErrorResult* error_result,
const char** table,
size_t* table_length);
CASS_EXPORT CassError
cass_error_result_function(const CassErrorResult* error_result,
const char** function,
size_t* function_length);
CASS_EXPORT size_t
cass_error_num_arg_types(const CassErrorResult* error_result);
CASS_EXPORT CassError
cass_error_result_arg_type(const CassErrorResult* error_result,
size_t index,
const char** arg_type,
size_t* arg_type_length);
CASS_EXPORT void
cass_iterator_free(CassIterator* iterator);
CASS_EXPORT CassIteratorType
cass_iterator_type(CassIterator* iterator);
CASS_EXPORT CassIterator*
cass_iterator_from_result(const CassResult* result);
CASS_EXPORT CassIterator*
cass_iterator_from_row(const CassRow* row);
CASS_EXPORT CassIterator*
cass_iterator_from_collection(const CassValue* value);
CASS_EXPORT CassIterator*
cass_iterator_from_map(const CassValue* value);
CASS_EXPORT CassIterator*
cass_iterator_from_tuple(const CassValue* value);
CASS_EXPORT CassIterator*
cass_iterator_fields_from_user_type(const CassValue* value);
CASS_EXPORT CassIterator*
cass_iterator_keyspaces_from_schema_meta(const CassSchemaMeta* schema_meta);
CASS_EXPORT CassIterator*
cass_iterator_tables_from_keyspace_meta(const CassKeyspaceMeta* keyspace_meta);
CASS_EXPORT CassIterator*
cass_iterator_materialized_views_from_keyspace_meta(const CassKeyspaceMeta* keyspace_meta);
CASS_EXPORT CassIterator*
cass_iterator_user_types_from_keyspace_meta(const CassKeyspaceMeta* keyspace_meta);
CASS_EXPORT CassIterator*
cass_iterator_functions_from_keyspace_meta(const CassKeyspaceMeta* keyspace_meta);
CASS_EXPORT CassIterator*
cass_iterator_aggregates_from_keyspace_meta(const CassKeyspaceMeta* keyspace_meta);
CASS_EXPORT CassIterator*
cass_iterator_fields_from_keyspace_meta(const CassKeyspaceMeta* keyspace_meta);
CASS_EXPORT CassIterator*
cass_iterator_columns_from_table_meta(const CassTableMeta* table_meta);
CASS_EXPORT CassIterator*
cass_iterator_indexes_from_table_meta(const CassTableMeta* table_meta);
CASS_EXPORT CassIterator*
cass_iterator_materialized_views_from_table_meta(const CassTableMeta* table_meta);
CASS_EXPORT CassIterator*
cass_iterator_fields_from_table_meta(const CassTableMeta* table_meta);
CASS_EXPORT CassIterator*
cass_iterator_columns_from_materialized_view_meta(const CassMaterializedViewMeta* view_meta);
CASS_EXPORT CassIterator*
cass_iterator_fields_from_materialized_view_meta(const CassMaterializedViewMeta* view_meta);
CASS_EXPORT CassIterator*
cass_iterator_fields_from_column_meta(const CassColumnMeta* column_meta);
CASS_EXPORT CassIterator*
cass_iterator_fields_from_index_meta(const CassIndexMeta* index_meta);
CASS_EXPORT CassIterator*
cass_iterator_fields_from_function_meta(const CassFunctionMeta* function_meta);
CASS_EXPORT CassIterator*
cass_iterator_fields_from_aggregate_meta(const CassAggregateMeta* aggregate_meta);
CASS_EXPORT cass_bool_t
cass_iterator_next(CassIterator* iterator);
CASS_EXPORT const CassRow*
cass_iterator_get_row(const CassIterator* iterator);
CASS_EXPORT const CassValue*
cass_iterator_get_column(const CassIterator* iterator);
CASS_EXPORT const CassValue*
cass_iterator_get_value(const CassIterator* iterator);
CASS_EXPORT const CassValue*
cass_iterator_get_map_key(const CassIterator* iterator);
CASS_EXPORT const CassValue*
cass_iterator_get_map_value(const CassIterator* iterator);
CASS_EXPORT CassError
cass_iterator_get_user_type_field_name(const CassIterator* iterator,
const char** name,
size_t* name_length);
CASS_EXPORT const CassValue*
cass_iterator_get_user_type_field_value(const CassIterator* iterator);
CASS_EXPORT const CassKeyspaceMeta*
cass_iterator_get_keyspace_meta(const CassIterator* iterator);
CASS_EXPORT const CassTableMeta*
cass_iterator_get_table_meta(const CassIterator* iterator);
CASS_EXPORT const CassMaterializedViewMeta*
cass_iterator_get_materialized_view_meta(const CassIterator* iterator);
CASS_EXPORT const CassDataType*
cass_iterator_get_user_type(const CassIterator* iterator);
CASS_EXPORT const CassFunctionMeta*
cass_iterator_get_function_meta(const CassIterator* iterator);
CASS_EXPORT const CassAggregateMeta*
cass_iterator_get_aggregate_meta(const CassIterator* iterator);
CASS_EXPORT const CassColumnMeta*
cass_iterator_get_column_meta(const CassIterator* iterator);
CASS_EXPORT const CassIndexMeta*
cass_iterator_get_index_meta(const CassIterator* iterator);
CASS_EXPORT CassError
cass_iterator_get_meta_field_name(const CassIterator* iterator,
const char** name,
size_t* name_length);
CASS_EXPORT const CassValue*
cass_iterator_get_meta_field_value(const CassIterator* iterator);
CASS_EXPORT const CassValue*
cass_row_get_column(const CassRow* row,
size_t index);
CASS_EXPORT const CassValue*
cass_row_get_column_by_name(const CassRow* row,
const char* name);
CASS_EXPORT const CassValue*
cass_row_get_column_by_name_n(const CassRow* row,
const char* name,
size_t name_length);
CASS_EXPORT const CassDataType*
cass_value_data_type(const CassValue* value);
CASS_EXPORT CassError
cass_value_get_int8(const CassValue* value,
cass_int8_t* output);
CASS_EXPORT CassError
cass_value_get_int16(const CassValue* value,
cass_int16_t* output);
CASS_EXPORT CassError
cass_value_get_int32(const CassValue* value,
cass_int32_t* output);
CASS_EXPORT CassError
cass_value_get_uint32(const CassValue* value,
cass_uint32_t* output);
CASS_EXPORT CassError
cass_value_get_int64(const CassValue* value,
cass_int64_t* output);
CASS_EXPORT CassError
cass_value_get_float(const CassValue* value,
cass_float_t* output);
CASS_EXPORT CassError
cass_value_get_double(const CassValue* value,
cass_double_t* output);
CASS_EXPORT CassError
cass_value_get_bool(const CassValue* value,
cass_bool_t* output);
CASS_EXPORT CassError
cass_value_get_uuid(const CassValue* value,
CassUuid* output);
CASS_EXPORT CassError
cass_value_get_inet(const CassValue* value,
CassInet* output);
CASS_EXPORT CassError
cass_value_get_string(const CassValue* value,
const char** output,
size_t* output_size);
CASS_EXPORT CassError
cass_value_get_bytes(const CassValue* value,
const cass_byte_t** output,
size_t* output_size);
CASS_EXPORT CassError
cass_value_get_decimal(const CassValue* value,
const cass_byte_t** varint,
size_t* varint_size,
cass_int32_t* scale);
CASS_EXPORT CassError
cass_value_get_duration(const CassValue* value,
cass_int32_t* months,
cass_int32_t* days,
cass_int64_t* nanos);
CASS_EXPORT CassValueType
cass_value_type(const CassValue* value);
CASS_EXPORT cass_bool_t
cass_value_is_null(const CassValue* value);
CASS_EXPORT cass_bool_t
cass_value_is_collection(const CassValue* value);
CASS_EXPORT cass_bool_t
cass_value_is_duration(const CassValue* value);
CASS_EXPORT size_t
cass_value_item_count(const CassValue* collection);
CASS_EXPORT CassValueType
cass_value_primary_sub_type(const CassValue* collection);
CASS_EXPORT CassValueType
cass_value_secondary_sub_type(const CassValue* collection);
CASS_EXPORT CassUuidGen*
cass_uuid_gen_new();
CASS_EXPORT CassUuidGen*
cass_uuid_gen_new_with_node(cass_uint64_t node);
CASS_EXPORT void
cass_uuid_gen_free(CassUuidGen* uuid_gen);
CASS_EXPORT void
cass_uuid_gen_time(CassUuidGen* uuid_gen,
CassUuid* output);
CASS_EXPORT void
cass_uuid_gen_random(CassUuidGen* uuid_gen,
CassUuid* output);
CASS_EXPORT void
cass_uuid_gen_from_time(CassUuidGen* uuid_gen,
cass_uint64_t timestamp,
CassUuid* output);
CASS_EXPORT void
cass_uuid_min_from_time(cass_uint64_t time,
CassUuid* output);
CASS_EXPORT void
cass_uuid_max_from_time(cass_uint64_t time,
CassUuid* output);
CASS_EXPORT cass_uint64_t
cass_uuid_timestamp(CassUuid uuid);
CASS_EXPORT cass_uint8_t
cass_uuid_version(CassUuid uuid);
CASS_EXPORT void
cass_uuid_string(CassUuid uuid,
char* output);
CASS_EXPORT CassError
cass_uuid_from_string(const char* str,
CassUuid* output);
CASS_EXPORT CassError
cass_uuid_from_string_n(const char* str,
size_t str_length,
CassUuid* output);
CASS_EXPORT CassTimestampGen*
cass_timestamp_gen_server_side_new();
CASS_EXPORT CassTimestampGen*
cass_timestamp_gen_monotonic_new();
CASS_EXPORT CassTimestampGen*
cass_timestamp_gen_monotonic_new_with_settings(cass_int64_t warning_threshold_us,
cass_int64_t warning_interval_ms);
CASS_EXPORT void
cass_timestamp_gen_free(CassTimestampGen* timestamp_gen);
CASS_EXPORT CassRetryPolicy*
cass_retry_policy_default_new();
CASS_EXPORT CASS_DEPRECATED(CassRetryPolicy*
cass_retry_policy_downgrading_consistency_new());
CASS_EXPORT CassRetryPolicy*
cass_retry_policy_fallthrough_new();
CASS_EXPORT CassRetryPolicy*
cass_retry_policy_logging_new(CassRetryPolicy* child_retry_policy);
CASS_EXPORT void
cass_retry_policy_free(CassRetryPolicy* policy);
CASS_EXPORT CassCustomPayload*
cass_custom_payload_new();
CASS_EXPORT void
cass_custom_payload_free(CassCustomPayload* payload);
CASS_EXPORT void
cass_custom_payload_set(CassCustomPayload* payload,
const char* name,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT void
cass_custom_payload_set_n(CassCustomPayload* payload,
const char* name,
size_t name_length,
const cass_byte_t* value,
size_t value_size);
CASS_EXPORT void
cass_custom_payload_remove(CassCustomPayload* payload,
const char* name);
CASS_EXPORT void
cass_custom_payload_remove_n(CassCustomPayload* payload,
const char* name,
size_t name_length);
CASS_EXPORT const char*
cass_consistency_string(CassConsistency consistency);
CASS_EXPORT const char*
cass_write_type_string(CassWriteType write_type);
CASS_EXPORT const char*
cass_error_desc(CassError error);
CASS_EXPORT CASS_DEPRECATED(void
cass_log_cleanup());
CASS_EXPORT void
cass_log_set_level(CassLogLevel log_level);
CASS_EXPORT void
cass_log_set_callback(CassLogCallback callback,
void* data);
CASS_EXPORT CASS_DEPRECATED(void
cass_log_set_queue_size(size_t queue_size));
CASS_EXPORT const char*
cass_log_level_string(CassLogLevel log_level);
CASS_EXPORT CassInet
cass_inet_init_v4(const cass_uint8_t* address);
CASS_EXPORT CassInet
cass_inet_init_v6(const cass_uint8_t* address);
CASS_EXPORT void
cass_inet_string(CassInet inet,
char* output);
CASS_EXPORT CassError
cass_inet_from_string(const char* str,
CassInet* output);
CASS_EXPORT CassError
cass_inet_from_string_n(const char* str,
size_t str_length,
CassInet* output);
CASS_EXPORT cass_uint32_t
cass_date_from_epoch(cass_int64_t epoch_secs);
CASS_EXPORT cass_int64_t
cass_time_from_epoch(cass_int64_t epoch_secs);
CASS_EXPORT cass_int64_t
cass_date_time_to_epoch(cass_uint32_t date,
cass_int64_t time);
CASS_EXPORT void
cass_alloc_set_functions(CassMallocFunction malloc_func,
CassReallocFunction realloc_func,
CassFreeFunction free_func);
#ifdef __cplusplus
}
#endif
#endif