Couchbase Transactions C++ Client  1.0.0
Transactions client for couchbase
Public Member Functions | List of all members
couchbase::transactions::transactions Class Reference

Main class for creating a transaction. More...

#include <transactions.hxx>

Public Member Functions

 transactions (couchbase::cluster &cluster, const transaction_config &config)
 Create a transactions object. More...
 
 ~transactions ()
 Destructor.
 
transaction_result run (const logic &logic)
 Run a transaction. More...
 
void commit (attempt_context &ctx)
 
void rollback (attempt_context &ctx)
 
void close ()
 Shut down the transactions object. More...
 
CB_NODISCARD transaction_configconfig ()
 Return reference to transaction_config. More...
 
CB_NODISCARD const transactions_cleanup & cleanup () const
 
CB_NODISCARD transactions_cleanup & cleanup ()
 
CB_NODISCARD couchbase::clustercluster_ref ()
 Return a reference to the cluster. More...
 

Detailed Description

Main class for creating a transaction.

Examples:
examples/game_server.cxx.

Constructor & Destructor Documentation

◆ transactions()

couchbase::transactions::transactions::transactions ( couchbase::cluster cluster,
const transaction_config config 
)

Create a transactions object.

Creates a transactions object, which can be used to run transactions within the current thread.

Parameters
clusterThe cluster to use for the transactions.
configThe configuration parameters to use for the transactions.

Member Function Documentation

◆ cleanup() [1/2]

CB_NODISCARD const transactions_cleanup& couchbase::transactions::transactions::cleanup ( ) const
inline
Stability
Internal:
Called internally

◆ cleanup() [2/2]

CB_NODISCARD transactions_cleanup& couchbase::transactions::transactions::cleanup ( )
inline
Stability
Internal:
Called internally

◆ close()

void couchbase::transactions::transactions::close ( )

Shut down the transactions object.

The transaction object cannot be used after this call. Called in destructor, but available to call sooner if needed.

◆ cluster_ref()

CB_NODISCARD couchbase::cluster& couchbase::transactions::transactions::cluster_ref ( )
inline

Return a reference to the cluster.

Returns
Ref to the cluster used by this transaction object.

◆ commit()

void couchbase::transactions::transactions::commit ( attempt_context ctx)
inline
Stability
Internal:
called internally - will likely move

◆ config()

CB_NODISCARD transaction_config& couchbase::transactions::transactions::config ( )
inline

Return reference to transaction_config.

Returns
config for this transactions instance.

◆ rollback()

void couchbase::transactions::transactions::rollback ( attempt_context ctx)
inline
Stability
Internal:
called internally - will likely move

◆ run()

transaction_result couchbase::transactions::transactions::run ( const logic logic)

Run a transaction.

Expects a lambda, which it calls with an attempt_context reference to be used in the lambda for the transaction operations.

Parameters
logicThe lambda containing the transaction logic.
Returns
A struct containing some internal state information about the transaction.
Exceptions
Examples:
examples/game_server.cxx.

The documentation for this class was generated from the following file: