NAME
TblEdit::Request - библиотека для работы с веб-сервером через функционал CGI.pm
DESCRIPTION
Пакет инкапсулирует все методы, необходимые для работы приложения с веб-сервером. Методы транслируются в соответствующие методы CGI.pm
Кроме того, реализован механизм протоколирования по условию: Исходный код программ может иметь вызовы метода printLog, первым аргументов которого является одна из констант:
LL_WROK => 1; # агрументы SQL, изменивших данные БД
LL_WRBAD => 2; # аргументы SQL и ошибки неудачных попыток
LL_CMD => 4; # вызовы методов
LL_VAR => 8; # значения важных переменных
LL_DMP => 16;# дампы разных структур
При создании объекта класса TblEdit::Request из %ENV считывается значение ключа LOG_LEVEL и в STDERR будут выводиться остальные аргументы тех вызовов printLog, у которых первый аргумент при бинарном AND с LOG_LEVEL возвращает 1. Таким образом, режим вывода всей информации имеет значение 31.
Пример использования:
use TblEdit::Request qw(/^LL_/); # подключаем константы уровней отладки
# пишем в лог, если включен уровень отладки "вызовы" $req->printLog(LL_CMD, __PACKAGE__,'::new (начало)');
Доступны следующие методы:
- new(\%conf)
- Конструктор класса. Хэш %conf содержит поле prefix - префикс переменных пакета в %ENV
-
Далее этот префикс всегда добавляется перед именем ключа при доступе к хэшу %ENV.
-
Впервые это делается тут же, для получения значения уровня отладки из $ENV{$prefix.'LOG_LEVEL'}
- getConf(@keys)
- Получить хеш, состоящий из значений перечисленных ключей в %ENV
- uri
- Аналог CGI::uri
- param
- Аналог CGI::param
- print(@args)
- Печать в STDOUT http заголовка и содержимого @args
- printLog($level, @args)
- В случае, если ($level & LOG_LEVEL) != 0, печать в STDERR содержимого @args
AUTHOR
Alexey Kovrizhkin <jean@jast.ru>
COPYRIGHT
Copyright (C) 2006 Alexey Kovrizhkin
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
$Id: Request.html,v 1.1 2006/06/29 19:12:18 aleko Exp $