A snapshot of the cluster’s schema metadata.

Functions

void

cass_schema_free

( const CassSchema * schema )

Frees a schema instance.

Parameters:
Name Type Details
in schema const CassSchema *
const CassSchemaMeta *

cass_schema_get_keyspace

( const CassSchema * schema, const char * keyspace )

Gets the metadata for the provided keyspace name.

Parameters:
Name Type Details
in schema const CassSchema *
in keyspace const char *
Returns:
Type Details
const CassSchemaMeta *

The schema metadata for a keyspace. NULL if keyspace does not exist.

See Also:
const CassSchemaMeta *

cass_schema_get_keyspace_n

( const CassSchema * schema, const char * keyspace, size_t keyspace_length )

Same as CassSchema::cass_schema_get_keyspace, but with lengths for string parameters.

Parameters:
Name Type Details
in schema const CassSchema *
in keyspace const char *
in keyspace_length size_t
Returns:
Type Details
const CassSchemaMeta *

same as CassSchema::cass_schema_get_keyspace

See Also:
const CassDataType *

cass_schema_get_udt

( const CassSchema * schema, const char * keyspace, const char * type_name )

Gets a UDT data type

Parameters:
Name Type Details
in schema const CassSchema *
in keyspace const char *
in type_name const char *
Returns:
Type Details
const CassDataType *

Returns a reference to the data type of the parameter. Do not free this reference as it is bound to the lifetime of the schema.

const CassDataType *

cass_schema_get_udt_n

( const CassSchema * schema, const char * keyspace, size_t keyspace_length, const char * type_name, size_t type_name_length )

Same as CassSchema::cass_schema_get_udt, but with lengths for string parameters.

Parameters:
Name Type Details
in schema const CassSchema *
in keyspace const char *
in keyspace_length size_t
in type_name const char *
in type_name_length size_t
Returns:
Type Details
const CassDataType *

Returns a reference to the data type of the parameter. Do not free this reference as it is bound to the lifetime of the schema.

CassSchemaMetaType

cass_schema_meta_type

( const CassSchemaMeta * meta )

Gets the type of the specified schema metadata.

Parameters:
Name Type Details
in meta const CassSchemaMeta *
Returns:
Type Details
CassSchemaMetaType

The type of the schema metadata

const CassSchemaMeta *

cass_schema_meta_get_entry_n

( const CassSchemaMeta * meta, const char * name, size_t name_length )

Same as CassSchemaMeta::cass_schema_meta_get_entry, but with lengths for string parameters.

Parameters:
Name Type Details
in meta const CassSchemaMeta *
in name const char *
in name_length size_t
Returns:
Type Details
const CassSchemaMeta *

same as CassSchemaMeta::cass_schema_meta_get_entry

See Also:
const CassSchemaMetaField *

cass_schema_meta_get_field_n

( const CassSchemaMeta * meta, const char * name, size_t name_length )

Same as CassSchemaMeta::cass_schema_meta_get_field, but with lengths for string parameters.

Parameters:
Name Type Details
in meta const CassSchemaMeta *
in name const char *
in name_length size_t
Returns:
Type Details
const CassSchemaMetaField *

same as CassSchemaMeta::cass_schema_meta_get_field

See Also:
CassIterator *

cass_iterator_from_schema

( const CassSchema * schema )

Creates a new iterator for the specified schema. This can be used to iterate over keyspace entries.

Parameters:
Name Type Details
in schema const CassSchema *
Returns:
Type Details
CassIterator *

A new iterator that must be freed.

See Also: