Class ConfCache

Материал из ISPWiki
Перейти к: навигация, поиск

Класс ConfCache


Описание:

class ConfCache

Хранилище данных

Дабы не использовать глобальные переменные

Потомки:


Открытые типы (кратко)

typedef HeadDataSet *( construct_t )()

Перечисления (кратко)

Перечисление SaveReason { SA_COMMIT , SA_ROLLBACK , SA_SAVE , }

Открытые члены (кратко)

int SetCapacity ( int size )
void Register ( const string &name , mgr_token::ParamsPtr params )
ConfRef Config ( const string &type , const mgr_file::safe::Folder &folder , const string &filename , bool cancreate = false )
template <class CDS>

void

Add ( const string &type )

Приватные члены (кратко)

Перечисления (подробно)

SaveReason

  • SA_COMMIT
  • SA_ROLLBACK
  • SA_SAVE

Методы

int SetCapacity ( int size )

Задать максимальное количество хранимых в памяти конфигов

Returned: старое значение

void Register ( const string &name , mgr_token::ParamsPtr params )

Создать новый тип конфигов

Аргументы:
name имя типа
params параметры для разбора на токены

ConfRef Config ( const string &type , const mgr_file::safe::Folder &folder , const string &filename , bool cancreate = false )

Получить ссылку на кеш

Аргументы:
type имя типа
filename имя файла
cancreate создавать ли такой файл, если он не существует. сейчас флаг обрабатывается только на этапе получения ссылки, что может вызвать проблемы, если он будет удален в процессе работы.

void Add ( const string &type )

Данная функция/метод является inline функцией

Добавить набор данных

Добавляет набор данных CDS к определенному типу конфигов

Аргументы:
type имя типа
rs имя набора
CDS имя класса (наследника HeadDataSet)

Типы

typedef HeadDataSet *( construct_t )()