Класс std_page_accessor_t

Граф наследования:std_page_accessor_t:

page_accessor_t Полный список членов класса

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

Штатная реализация интерфейса page_accessor_t.

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


Открытые члены

 std_page_accessor_t (const config_t &config, oess_1::file::file_t &main_file, oess_1::uint_t &main_file_logic_length, cache_t &cache, dirty_page_storage_t &dirty_pages, bool is_read_only)
 Инициализирующий конструктор.
Реализация унаследованных методов.
virtual bool is_exists (oess_1::uint_t page)
 Проверить наличие страницы в основном файле.
virtual const oess_1::char_tread_access (oess_1::uint_t page)
 Получить доступ к странице для чтения.
virtual oess_1::char_twrite_access (oess_1::uint_t page)
 Получить доступ к странице для записи.

Закрытые члены

oess_1::uint_t page_offset (oess_1::uint_t page) const
 Вычислить смещение страницы по ее номеру.
oess_1::char_textract_page_value (oess_1::uint_t index, bool is_read_only_access=true)
 Извлечь страницу из хранилища.

Закрытые данные

const config_tm_config
 Конфигурация для хранилища.
oess_1::file::file_tm_main_file
 Основной файл БД.
oess_1::uint_tm_main_file_logic_length
 создания новых страниц.
cache_tm_cache
 Кэш хранилища.
dirty_page_storage_tm_dirty_pages
 Хранилище грязных страниц.
bool m_is_read_only
 true; если допускается только чтение страниц хранилища.


Конструктор(ы)

std_page_accessor_t ( const config_t config,
oess_1::file::file_t main_file,
oess_1::uint_t main_file_logic_length,
cache_t cache,
dirty_page_storage_t dirty_pages,
bool  is_read_only 
)

Инициализирующий конструктор.

Аргументы:
config  Конфигурация для хранилища.
main_file  Основной файл БД.
main_file_logic_length  Логическая длина основного файла. Будет изменяться по мере создания новых страниц.
cache  Кэш хранилища.
dirty_pages  Хранилище грязных страниц.
is_read_only  true, если допускается только чтение страниц хранилища.


Методы

bool is_exists ( oess_1::uint_t  page  )  [virtual]

Проверить наличие страницы в основном файле.

Если страницы нет в основном файле, то доступ к ее содержимому можно получить только через метод write_access().

Возвращает:
true, если страница в основном файле существует.

Замещает page_accessor_t.

const oess_1::char_t * read_access ( oess_1::uint_t  page  )  [virtual]

Получить доступ к странице для чтения.

Исключения:
oess_1::logic_ex_t,если страницы в основном файле не существует.

Замещает page_accessor_t.

oess_1::char_t * write_access ( oess_1::uint_t  page  )  [virtual]

Получить доступ к странице для записи.

Если страницы в основном файле не существовало, то она создается. После этого страница будет считаться существующей, но ее значение будет присутствовать только в кэше (либо в хранилище грязных страниц) до фиксации транзакции.

Исключения:
oess_1::logic_ex_t,если режим работы хранилища не допускает изменения страниц хранилища (например, хранилище открыто в режиме read-only или нет начатых транзакций).

Замещает page_accessor_t.


Объявления и описания членов класса находятся в файле:
Документация по ObjESSty. Последние изменения: Fri Oct 13 18:35:39 2006. Создано системой  doxygen 1.4.7
Hosted by uCoz