Class mgr err::Error

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

Обработка ошибок

Класс mgr_err::Error

Базовый класс для работы с ошибками

#include <mgrerr.h> 

Описание:

class mgr_err::Error

Служит для накоплении информации об ошибке при ее локализации. Содержит текущий стек вызовов, цепочку внутренних вызовов если эта ошибка возникла в модуле COREmanager

Родители:


Потомки:


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

virtual  ~Error () throw ()

Деструктор


string type () const throw ()

Тип исключения, переданный в конструторе


string object () const throw ()

Объект, переданный в конструкторе


string value () const throw ()

Значение, переданное в конструкторе


virtual const char * what () const throw ()

Котороткое описание исключения для совместимости с std::exception.


mgr_xml::Xml xml () const throw ()

Получить содержимое внутреннего XML документа


mgr_backtrace::BtWalk backtrace () const throw ()

Информация о стеке на момент возникновения ошибки


Error & set_report () throw ()

Пометить эту ошибку, как требующую формирования отчета для разработчиков


Error & set_help ( const string &name = "" ) throw ()

Добавить ссылку на документацию

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

Позволяют установить наиболее востребованные параметры

Аргументы:
[type] тип исключения
[object] объект, действия над которым вызвали исключение, или имя подтипа
[value] значение. Это может быть значение параметра, не прошедшего проверку, или имя записи эли ошибка произошла с неким объектом из набора идентификатор которого, как правило, передается в параметре [object]
[node] позволяет сконструировать ошибку по XML описанию

Установить дополнительные параметры

Если параметров конструкторов вам не достаточно, чтобы передать информацию, вы можете установить любое количество дополнительных параметров.

  • add_message добавляет параметр и помечает его как требующего локализации в процессе форморования сообщения значение этого параметра будет заменено на соответствующий текст из файла сообщений
  • add_param добавляет параметр, как он есть
Аргументы:
[name] имя параметра
[value] значение
[mask] позволяет задать для какого уровня доступен данный параметр

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

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

virtual ~Error () throw ()

Деструктор

Методы

string type () const throw ()

Тип исключения, переданный в конструторе

string object () const throw ()

Объект, переданный в конструкторе

string value () const throw ()

Значение, переданное в конструкторе

virtual const char * what () const throw ()

Котороткое описание исключения для совместимости с std::exception.

mgr_xml::Xml xml () const throw ()

Получить содержимое внутреннего XML документа

XML содержит подробное описание ошибки. Вы можете менять XML чтобы изменить или добавить дополнительную информацию даже если имеете дело с константной версией класса Error

mgr_backtrace::BtWalk backtrace () const throw ()

Информация о стеке на момент возникновения ошибки

Error &set_report () throw ()

Пометить эту ошибку, как требующую формирования отчета для разработчиков

Error &set_help ( const string &name = "" ) throw ()

Добавить ссылку на документацию

Аргументы:
[name] - название статьи, если не указано, будет использован параметр ошибки type