Файл std_chain_storage.cpp


Подробное описание

Штатная реализация интерфейса хранилища цепочек.

Начиная с:
v.1.4.0

#include <vector>
#include <algorithm>
#include <oess_1/defs/h/ex.hpp>
#include <oess_1/defs/log/h/err.hpp>
#include <oess_1/db/storage/h/errno.hpp>
#include <oess_1/db/storage/h/page_index_calculator.hpp>
#include <oess_1/db/storage/impl/h/std_chain_storage.hpp>
#include <oess_1/debug/h/time_meter.hpp>

Пространства имен

namespace  oess_1
namespace  oess_1::db
namespace  oess_1::db::storage
namespace  oess_1::db::storage::impl

Классы

class  page_to_main_file_actor_t

Средства для манипуляции хранилищем цепочек.

 oess_1::db::storage::create_chain_storage (const std::string &physic_name, const config_t &config, oess_1::io::istream_t &from, oess_1::uint_t length, chain_id_t &first_chain)
 Создание нового хранилища.
 oess_1::db::storage::open_chain_storage (const std::string &physic_name, const config_t &config, bool is_read_only, bool is_auto_repair_enabled, oess_1::io::ostream_t &to, oess_1::uint_t length, chain_id_t &first_chain)
 Открытие существующего хранилища.
 oess_1::db::storage::is_chain_storage_exists (const std::string &physic_name)
 Проверка существования хранилища.
 oess_1::db::storage::destroy_chain_storage (const std::string &physic_name)
 Уничтожение хранилища.

Макросы

#define CHAIN_STORAGE__START_METHOD_WRAPPER(method_name)
#define CHAIN_STORAGE__FINISH_METHOD_WRAPPER

Функции

oess_1::err_code_t oess_1::db::storage::impl::make_outer_err_code (const std::string &physic_name, const std::string &method_name, const oess_1::err_code_t &nested)
chain_id_t oess_1::db::storage::impl::first_chain_id (const config_t &config)
static void oess_1::db::storage::remove_if_exists (const std::string &file_name)
static void oess_1::db::storage::remove_old_files (const std::string &physic_name, const config_t &config)
static void oess_1::db::storage::make_new_files (const std::string &physic_name, const config_t &config)
static void oess_1::db::storage::open_and_fill_tmp_storage (const std::string &physic_name, const config_t &config, oess_1::io::istream_t &from, oess_1::uint_t length, chain_id_t &first_chain)
static void oess_1::db::storage::remove_tmp_files (const std::string &physic_name, const config_t &config)
static void oess_1::db::storage::create_and_fill_db (const std::string &physic_name, const config_t &config, oess_1::io::istream_t &from, oess_1::uint_t length, chain_id_t &first_chain)
config_t oess_1::db::storage::merge_configs (const config_t &loaded, const config_t &user)
 Производит объединение прочитанной из конфигурационного файла конфигурации и указанной пользователем конфигурации.


Макросы

#define CHAIN_STORAGE__FINISH_METHOD_WRAPPER

Макроопределение:

} \
catch( const oess_1::logic_ex_t & x ) \
  { \
    throw oess_1::logic_ex_t(\
        make_outer_err_code(\
            m_physic_name, wrp_method_name, \
            x.query_err_code() ) ); \
  } \
catch( const oess_1::physic_ex_t & x ) \
  { \
    m_is_ok = false; \
    throw oess_1::physic_ex_t(\
        make_outer_err_code(\
            m_physic_name, wrp_method_name, \
            x.query_err_code() ) ); \
  }

#define CHAIN_STORAGE__START_METHOD_WRAPPER ( method_name   ) 

Макроопределение:

const char * wrp_method_name = #method_name; \
try {


Документация по ObjESSty. Последние изменения: Fri Oct 13 18:35:36 2006. Создано системой  doxygen 1.4.7
Hosted by uCoz