1
0
mirror of https://github.com/codership/wsrep-lib.git synced 2025-12-21 01:22:01 +03:00
Files
wsrep-lib/src/provider_impl.hpp
2018-06-03 21:56:28 +03:00

32 lines
924 B
C++

//
// Copyright (C) 2018 Codership Oy <info@codership.com>
//
#ifndef WSREP_PROVIDER_IMPL_HPP
#define WSREP_PROVIDER_IMPL_HPP
#include <wsrep_api.h>
namespace wsrep
{
// Abstract interface for provider implementations
class provider_impl
{
public:
virtual int start_transaction(wsrep_ws_handle_t*) = 0;
virtual int append_key(wsrep_ws_handle_t*, const wsrep_key_t*) = 0;
virtual int append_data(wsrep_ws_handle_t*, const wsrep_buf_t*) = 0;
virtual wsrep_status_t
certify(wsrep_conn_id_t, wsrep_ws_handle_t*,
uint32_t,
wsrep_trx_meta_t*) = 0;
virtual int rollback(const wsrep_trx_id_t) = 0;
virtual wsrep_status commit_order_enter(wsrep_ws_handle_t*) = 0;
virtual int commit_order_leave(wsrep_ws_handle_t*) = 0;
virtual int release(wsrep_ws_handle_t*) = 0;
};
}
#endif // WSREP_PROVIDER_IMPL_HPP