Interface IMapper
A client for creating, updating, deleting, and reading POCOs from a Cassandra cluster.
Inherited Members
Namespace: Cassandra.Mapping
Assembly: Cassandra.dll
Syntax
public interface IMapper : ICqlQueryAsyncClient, ICqlWriteAsyncClient, ICqlQueryClient, ICqlWriteClient
Methods
ConvertCqlArgument<TValue, TDatabase>(TValue)
Allows you to convert an argument/bind variable value being used in a CQL statement using the same converters that are being used by the client
internally, including any user-defined conversions if you configured them. Will convert a value of Type TValue
to a value of
Type TDatabase
or throw an InvalidOperationException if no converter is available.
Declaration
TDatabase ConvertCqlArgument<TValue, TDatabase>(TValue value)
Parameters
Type | Name | Description |
---|---|---|
TValue | value | The value to convert. |
Returns
Type | Description |
---|---|
TDatabase | The converted value. |
Type Parameters
Name | Description |
---|---|
TValue | The original Type of the value. |
TDatabase | The Type expected by Cassandra to convert to. |
CreateBatch()
Creates a new batch.
To set the consistency level, timestamp and other batch options, use WithOptions(Action<CqlQueryOptions>). Individual options for each query within the batch will be ignored.
Declaration
ICqlBatch CreateBatch()
Returns
Type | Description |
---|---|
ICqlBatch |
CreateBatch(BatchType)
Creates a new batch.
To set the consistency level, timestamp and other batch options, use WithOptions(Action<CqlQueryOptions>). Individual options for each query within the batch will be ignored.
Declaration
ICqlBatch CreateBatch(BatchType batchType)
Parameters
Type | Name | Description |
---|---|---|
BatchType | batchType |
Returns
Type | Description |
---|---|
ICqlBatch |
DeleteAsync<T>(T, string, CqlQueryOptions)
Deletes the specified POCO from Cassandra using the provided execution profile.
Declaration
Task DeleteAsync<T>(T poco, string executionProfile, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | |
string | executionProfile | |
CqlQueryOptions | queryOptions |
Returns
Type | Description |
---|---|
Task |
Type Parameters
Name | Description |
---|---|
T |
DeleteIfAsync<T>(Cql)
Deletes from the table for the POCO type specified (T) using the Cql query specified.
Prepends "DELETE FROM tablename " to the CQL statement you specify, getting the tablename appropriately from the POCO Type T.
Returns information whether it was applied or not. If it was not applied, it returns details of the existing values.
Declaration
Task<AppliedInfo<T>> DeleteIfAsync<T>(Cql cql)
Parameters
Type | Name | Description |
---|---|---|
Cql | cql |
Returns
Type | Description |
---|---|
Task<AppliedInfo<T>> |
Type Parameters
Name | Description |
---|---|
T |
DeleteIfAsync<T>(string, params object[])
Deletes from the table for the POCO type specified (T) using the CQL string specified and query parameters specified.
Prepends "DELETE FROM tablename " to the CQL statement you specify, getting the tablename appropriately from the POCO Type T.
Returns information whether it was applied or not. If it was not applied, it returns details of the existing values.
Declaration
Task<AppliedInfo<T>> DeleteIfAsync<T>(string cql, params object[] args)
Parameters
Type | Name | Description |
---|---|---|
string | cql | |
object[] | args |
Returns
Type | Description |
---|---|
Task<AppliedInfo<T>> |
Type Parameters
Name | Description |
---|---|
T |
DeleteIf<T>(Cql)
Deletes from the table for the POCO type specified (T) using the Cql query specified.
Prepends "DELETE FROM tablename " to the CQL statement you specify, getting the tablename appropriately from the POCO Type T.
Returns information whether it was applied or not. If it was not applied, it returns details of the existing values.
Declaration
AppliedInfo<T> DeleteIf<T>(Cql cql)
Parameters
Type | Name | Description |
---|---|---|
Cql | cql |
Returns
Type | Description |
---|---|
AppliedInfo<T> |
Type Parameters
Name | Description |
---|---|
T |
DeleteIf<T>(string, params object[])
Deletes from the table for the POCO type specified (T) using the CQL string specified and query parameters specified.
Prepends "DELETE FROM tablename " to the CQL statement you specify, getting the tablename appropriately from the POCO Type T.
Returns information whether it was applied or not. If it was not applied, it returns details of the existing values.
Declaration
AppliedInfo<T> DeleteIf<T>(string cql, params object[] args)
Parameters
Type | Name | Description |
---|---|---|
string | cql | |
object[] | args |
Returns
Type | Description |
---|---|
AppliedInfo<T> |
Type Parameters
Name | Description |
---|---|
T |
Delete<T>(T, string, CqlQueryOptions)
Deletes the specified POCO from Cassandra using the provided execution profile.
Declaration
void Delete<T>(T poco, string executionProfile, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | |
string | executionProfile | |
CqlQueryOptions | queryOptions |
Type Parameters
Name | Description |
---|---|
T |
Execute(ICqlBatch)
Executes the batch specfied synchronously.
Declaration
void Execute(ICqlBatch batch)
Parameters
Type | Name | Description |
---|---|---|
ICqlBatch | batch |
Remarks
To set the consistency level, timestamp and other batch options, use WithOptions(Action<CqlQueryOptions>). Individual options for each query within the batch will be ignored.
Execute(ICqlBatch, string)
Executes the batch specified synchronously with the provided execution profile.
Declaration
void Execute(ICqlBatch batch, string executionProfile)
Parameters
Type | Name | Description |
---|---|---|
ICqlBatch | batch | |
string | executionProfile |
Remarks
To set the consistency level, timestamp and other batch options, use WithOptions(Action<CqlQueryOptions>). Individual options for each query within the batch will be ignored.
ExecuteAsync(ICqlBatch)
Executes the batch specified asynchronously.
Declaration
Task ExecuteAsync(ICqlBatch batch)
Parameters
Type | Name | Description |
---|---|---|
ICqlBatch | batch |
Returns
Type | Description |
---|---|
Task |
Remarks
To set the consistency level, timestamp and other batch options, use WithOptions(Action<CqlQueryOptions>). Individual options for each query within the batch will be ignored.
ExecuteAsync(ICqlBatch, string)
Executes the batch specified asynchronously with the provided execution profile.
Declaration
Task ExecuteAsync(ICqlBatch batch, string executionProfile)
Parameters
Type | Name | Description |
---|---|---|
ICqlBatch | batch | |
string | executionProfile |
Returns
Type | Description |
---|---|
Task |
Remarks
To set the consistency level, timestamp and other batch options, use WithOptions(Action<CqlQueryOptions>). Individual options for each query within the batch will be ignored.
ExecuteConditionalAsync<T>(ICqlBatch)
Executes a batch that contains a Lightweight transaction.
Declaration
Task<AppliedInfo<T>> ExecuteConditionalAsync<T>(ICqlBatch batch)
Parameters
Type | Name | Description |
---|---|---|
ICqlBatch | batch |
Returns
Type | Description |
---|---|
Task<AppliedInfo<T>> |
Type Parameters
Name | Description |
---|---|
T |
Remarks
To set the consistency level, timestamp and other batch options, use WithOptions(Action<CqlQueryOptions>). Individual options for each query within the batch will be ignored.
ExecuteConditionalAsync<T>(ICqlBatch, string)
Executes a batch that contains a Lightweight transaction with the provided execution profile.
Declaration
Task<AppliedInfo<T>> ExecuteConditionalAsync<T>(ICqlBatch batch, string executionProfile)
Parameters
Type | Name | Description |
---|---|---|
ICqlBatch | batch | |
string | executionProfile |
Returns
Type | Description |
---|---|
Task<AppliedInfo<T>> |
Type Parameters
Name | Description |
---|---|
T |
Remarks
To set the consistency level, timestamp and other batch options, use WithOptions(Action<CqlQueryOptions>). Individual options for each query within the batch will be ignored.
ExecuteConditional<T>(ICqlBatch)
Executes a batch that contains a Lightweight transaction.
Declaration
AppliedInfo<T> ExecuteConditional<T>(ICqlBatch batch)
Parameters
Type | Name | Description |
---|---|---|
ICqlBatch | batch |
Returns
Type | Description |
---|---|
AppliedInfo<T> |
Type Parameters
Name | Description |
---|---|
T |
Remarks
To set the consistency level, timestamp and other batch options, use WithOptions(Action<CqlQueryOptions>). Individual options for each query within the batch will be ignored.
ExecuteConditional<T>(ICqlBatch, string)
Executes a batch that contains a Lightweight transaction.
Declaration
AppliedInfo<T> ExecuteConditional<T>(ICqlBatch batch, string executionProfile)
Parameters
Type | Name | Description |
---|---|---|
ICqlBatch | batch | |
string | executionProfile |
Returns
Type | Description |
---|---|
AppliedInfo<T> |
Type Parameters
Name | Description |
---|---|
T |
Remarks
To set the consistency level, timestamp and other batch options, use WithOptions(Action<CqlQueryOptions>). Individual options for each query within the batch will be ignored.
InsertAsync<T>(T, string, CqlQueryOptions)
Inserts the specified POCO in Cassandra using the provided execution profile.
Declaration
Task InsertAsync<T>(T poco, string executionProfile, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | |
string | executionProfile | |
CqlQueryOptions | queryOptions |
Returns
Type | Description |
---|---|
Task |
Type Parameters
Name | Description |
---|---|
T |
InsertAsync<T>(T, string, bool, CqlQueryOptions)
Inserts the specified POCO in Cassandra using the provided execution profile.
Declaration
Task InsertAsync<T>(T poco, string executionProfile, bool insertNulls, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | The POCO instance |
string | executionProfile | The execution profile to use when executing the request. |
bool | insertNulls | Determines if the query must be generated using
Use
Use |
CqlQueryOptions | queryOptions | Optional query options |
Returns
Type | Description |
---|---|
Task |
Type Parameters
Name | Description |
---|---|
T |
InsertAsync<T>(T, string, bool, int?, CqlQueryOptions)
Inserts the specified POCO in Cassandra using the provided execution profile.
Declaration
Task InsertAsync<T>(T poco, string executionProfile, bool insertNulls, int? ttl, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | The POCO instance |
string | executionProfile | The execution profile to use when executing the request. |
bool | insertNulls | Determines if the query must be generated using
Use
Use |
int? | ttl | Time to live (in seconds) for the inserted values. If set, the inserted values are automatically removed from the database after the specified time. |
CqlQueryOptions | queryOptions | Optional query options |
Returns
Type | Description |
---|---|
Task |
Type Parameters
Name | Description |
---|---|
T |
InsertIfNotExistsAsync<T>(T, CqlQueryOptions)
Inserts the specified POCO in Cassandra, if not exists.
Returns information whether it was applied or not. If it was not applied, it returns details of the existing values.
Declaration
Task<AppliedInfo<T>> InsertIfNotExistsAsync<T>(T poco, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | |
CqlQueryOptions | queryOptions |
Returns
Type | Description |
---|---|
Task<AppliedInfo<T>> |
Type Parameters
Name | Description |
---|---|
T |
InsertIfNotExistsAsync<T>(T, bool, CqlQueryOptions)
Inserts the specified POCO in Cassandra, if not exists.
Declaration
Task<AppliedInfo<T>> InsertIfNotExistsAsync<T>(T poco, bool insertNulls, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | The POCO instance |
bool | insertNulls | Determines if the query must be generated using
Use
Use |
CqlQueryOptions | queryOptions | Optional query options |
Returns
Type | Description |
---|---|
Task<AppliedInfo<T>> |
Type Parameters
Name | Description |
---|---|
T |
InsertIfNotExistsAsync<T>(T, bool, int?, CqlQueryOptions)
Inserts the specified POCO in Cassandra, if not exists.
Declaration
Task<AppliedInfo<T>> InsertIfNotExistsAsync<T>(T poco, bool insertNulls, int? ttl, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | The POCO instance |
bool | insertNulls | Determines if the query must be generated using
Use
Use |
int? | ttl | Time to live (in seconds) for the inserted values. If set, the inserted values are automatically removed from the database after the specified time. |
CqlQueryOptions | queryOptions | Optional query options |
Returns
Type | Description |
---|---|
Task<AppliedInfo<T>> |
Type Parameters
Name | Description |
---|---|
T |
InsertIfNotExistsAsync<T>(T, string, CqlQueryOptions)
Inserts the specified POCO in Cassandra, if not exists, with the provided execution profile.
Returns information whether it was applied or not. If it was not applied, it returns details of the existing values.
Declaration
Task<AppliedInfo<T>> InsertIfNotExistsAsync<T>(T poco, string executionProfile, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | |
string | executionProfile | |
CqlQueryOptions | queryOptions |
Returns
Type | Description |
---|---|
Task<AppliedInfo<T>> |
Type Parameters
Name | Description |
---|---|
T |
InsertIfNotExistsAsync<T>(T, string, bool, CqlQueryOptions)
Inserts the specified POCO in Cassandra, if not exists, with the provided execution profile.
Declaration
Task<AppliedInfo<T>> InsertIfNotExistsAsync<T>(T poco, string executionProfile, bool insertNulls, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | The POCO instance |
string | executionProfile | The execution profile to use when executing the request. |
bool | insertNulls | Determines if the query must be generated using
Use
Use |
CqlQueryOptions | queryOptions | Optional query options |
Returns
Type | Description |
---|---|
Task<AppliedInfo<T>> |
Type Parameters
Name | Description |
---|---|
T |
InsertIfNotExistsAsync<T>(T, string, bool, int?, CqlQueryOptions)
Inserts the specified POCO in Cassandra, if not exists, with the provided execution profile.
Declaration
Task<AppliedInfo<T>> InsertIfNotExistsAsync<T>(T poco, string executionProfile, bool insertNulls, int? ttl, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | The POCO instance |
string | executionProfile | The execution profile to use when executing the request. |
bool | insertNulls | Determines if the query must be generated using
Use
Use |
int? | ttl | Time to live (in seconds) for the inserted values. If set, the inserted values are automatically removed from the database after the specified time. |
CqlQueryOptions | queryOptions | Optional query options |
Returns
Type | Description |
---|---|
Task<AppliedInfo<T>> |
Type Parameters
Name | Description |
---|---|
T |
InsertIfNotExists<T>(T, CqlQueryOptions)
Inserts the specified POCO in Cassandra, if not exists.
Returns information whether it was applied or not. If it was not applied, it returns details of the existing values.
Declaration
AppliedInfo<T> InsertIfNotExists<T>(T poco, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | |
CqlQueryOptions | queryOptions |
Returns
Type | Description |
---|---|
AppliedInfo<T> |
Type Parameters
Name | Description |
---|---|
T |
InsertIfNotExists<T>(T, bool, CqlQueryOptions)
Inserts the specified POCO in Cassandra, if not exists.
Declaration
AppliedInfo<T> InsertIfNotExists<T>(T poco, bool insertNulls, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | The POCO instance |
bool | insertNulls | Determines if the query must be generated using
Use
Use |
CqlQueryOptions | queryOptions | Optional query options |
Returns
Type | Description |
---|---|
AppliedInfo<T> |
Type Parameters
Name | Description |
---|---|
T |
InsertIfNotExists<T>(T, bool, int?, CqlQueryOptions)
Inserts the specified POCO in Cassandra, if not exists.
Declaration
AppliedInfo<T> InsertIfNotExists<T>(T poco, bool insertNulls, int? ttl, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | The POCO instance |
bool | insertNulls | Determines if the query must be generated using
Use
Use |
int? | ttl | Time to live (in seconds) for the inserted values. If set, the inserted values are automatically removed from the database after the specified time. |
CqlQueryOptions | queryOptions | Optional query options |
Returns
Type | Description |
---|---|
AppliedInfo<T> |
Type Parameters
Name | Description |
---|---|
T |
InsertIfNotExists<T>(T, string, CqlQueryOptions)
Inserts the specified POCO in Cassandra, if not exists, with the provided execution profile.
Returns information whether it was applied or not. If it was not applied, it returns details of the existing values.
Declaration
AppliedInfo<T> InsertIfNotExists<T>(T poco, string executionProfile, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | |
string | executionProfile | |
CqlQueryOptions | queryOptions |
Returns
Type | Description |
---|---|
AppliedInfo<T> |
Type Parameters
Name | Description |
---|---|
T |
InsertIfNotExists<T>(T, string, bool, CqlQueryOptions)
Inserts the specified POCO in Cassandra, if not exists, with the provided execution profile.
Declaration
AppliedInfo<T> InsertIfNotExists<T>(T poco, string executionProfile, bool insertNulls, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | The POCO instance |
string | executionProfile | The execution profile to use when executing the request. |
bool | insertNulls | Determines if the query must be generated using
Use
Use |
CqlQueryOptions | queryOptions | Optional query options |
Returns
Type | Description |
---|---|
AppliedInfo<T> |
Type Parameters
Name | Description |
---|---|
T |
InsertIfNotExists<T>(T, string, bool, int?, CqlQueryOptions)
Inserts the specified POCO in Cassandra, if not exists, with the provided execution profile.
Declaration
AppliedInfo<T> InsertIfNotExists<T>(T poco, string executionProfile, bool insertNulls, int? ttl, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | The POCO instance |
string | executionProfile | The execution profile to use when executing the request. |
bool | insertNulls | Determines if the query must be generated using
Use
Use |
int? | ttl | Time to live (in seconds) for the inserted values. If set, the inserted values are automatically removed from the database after the specified time. |
CqlQueryOptions | queryOptions | Optional query options |
Returns
Type | Description |
---|---|
AppliedInfo<T> |
Type Parameters
Name | Description |
---|---|
T |
Insert<T>(T, string, CqlQueryOptions)
Inserts the specified POCO in Cassandra using the provided execution profile.
Declaration
void Insert<T>(T poco, string executionProfile, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | |
string | executionProfile | |
CqlQueryOptions | queryOptions |
Type Parameters
Name | Description |
---|---|
T |
Insert<T>(T, string, bool, CqlQueryOptions)
Inserts the specified POCO in Cassandra using the provided execution profile.
Declaration
void Insert<T>(T poco, string executionProfile, bool insertNulls, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | The POCO instance |
string | executionProfile | The execution profile to use when executing the request. |
bool | insertNulls | Determines if the query must be generated using
Use
Use |
CqlQueryOptions | queryOptions | Optional query options |
Type Parameters
Name | Description |
---|---|
T |
Insert<T>(T, string, bool, int?, CqlQueryOptions)
Inserts the specified POCO in Cassandra using the provided execution profile.
Declaration
void Insert<T>(T poco, string executionProfile, bool insertNulls, int? ttl, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | The POCO instance |
string | executionProfile | The execution profile to use when executing the request. |
bool | insertNulls | Determines if the query must be generated using
Use
Use |
int? | ttl | Time to live (in seconds) for the inserted values. If set, the inserted values are automatically removed from the database after the specified time. |
CqlQueryOptions | queryOptions | Optional query options |
Type Parameters
Name | Description |
---|---|
T |
UpdateAsync<T>(T, string, CqlQueryOptions)
Updates the POCO specified in Cassandra using the provided execution profile.
Declaration
Task UpdateAsync<T>(T poco, string executionProfile, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | |
string | executionProfile | |
CqlQueryOptions | queryOptions |
Returns
Type | Description |
---|---|
Task |
Type Parameters
Name | Description |
---|---|
T |
UpdateIfAsync<T>(Cql)
Updates the table for the poco type specified (T) using the CQL statement specified, using lightweight transactions. Prepends "UPDATE tablename" to the CQL statement you specify, getting the table name appropriately from the POCO Type T.
Returns information whether it was applied or not. If it was not applied, it returns details of the existing values.
Declaration
Task<AppliedInfo<T>> UpdateIfAsync<T>(Cql cql)
Parameters
Type | Name | Description |
---|---|---|
Cql | cql |
Returns
Type | Description |
---|---|
Task<AppliedInfo<T>> |
Type Parameters
Name | Description |
---|---|
T |
UpdateIfAsync<T>(string, params object[])
Updates the table for the poco type specified (T) using the CQL statement specified, using lightweight transactions. Prepends "UPDATE tablename" to the CQL statement you specify, getting the table name appropriately from the POCO Type T.
Returns information whether it was applied or not. If it was not applied, it returns details of the existing values.
Declaration
Task<AppliedInfo<T>> UpdateIfAsync<T>(string cql, params object[] args)
Parameters
Type | Name | Description |
---|---|---|
string | cql | |
object[] | args |
Returns
Type | Description |
---|---|
Task<AppliedInfo<T>> |
Type Parameters
Name | Description |
---|---|
T |
UpdateIf<T>(Cql)
Updates the table for the poco type specified (T) using the CQL statement specified, using lightweight transactions. Prepends "UPDATE tablename" to the CQL statement you specify, getting the table name appropriately from the POCO Type T.
Returns information whether it was applied or not. If it was not applied, it returns details of the existing values.
Declaration
AppliedInfo<T> UpdateIf<T>(Cql cql)
Parameters
Type | Name | Description |
---|---|---|
Cql | cql |
Returns
Type | Description |
---|---|
AppliedInfo<T> |
Type Parameters
Name | Description |
---|---|
T |
UpdateIf<T>(string, params object[])
Updates the table for the poco type specified (T) using the CQL statement specified, using lightweight transactions. Prepends "UPDATE tablename" to the CQL statement you specify, getting the table name appropriately from the POCO Type T.
Returns information whether it was applied or not. If it was not applied, it returns details of the existing values.
Declaration
AppliedInfo<T> UpdateIf<T>(string cql, params object[] args)
Parameters
Type | Name | Description |
---|---|---|
string | cql | |
object[] | args |
Returns
Type | Description |
---|---|
AppliedInfo<T> |
Type Parameters
Name | Description |
---|---|
T |
Update<T>(T, string, CqlQueryOptions)
Updates the POCO specified in Cassandra using the provided execution profile.
Declaration
void Update<T>(T poco, string executionProfile, CqlQueryOptions queryOptions = null)
Parameters
Type | Name | Description |
---|---|---|
T | poco | |
string | executionProfile | |
CqlQueryOptions | queryOptions |
Type Parameters
Name | Description |
---|---|
T |