added: to config: log_time_zone_id (size_t) identifier

this is the time zone identifier used in log messages



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@882 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
2012-09-06 17:50:14 +00:00
parent 0c6ddc2218
commit 9174555ff8
8 changed files with 77 additions and 7 deletions

View File

@@ -11,6 +11,7 @@
#include <ctime>
#include <string.h>
#include "utf8/utf8.h"
#include "timezones.h"
Log::Log()
@@ -22,6 +23,7 @@ Log::Log()
lines = 0;
max_lines = 5000;
log_file_open = false;
time_zones = 0;
}
@@ -31,6 +33,14 @@ Log::~Log()
}
void Log::SetTimeZones(TimeZones * ptime_zones)
{
time_zones = ptime_zones;
}
int Log::LogLevel()
{
return log_level;
@@ -61,6 +71,29 @@ void Log::OpenFile()
}
void Log::PrintDate(const PT::Date & date, size_t time_zone_id)
{
if( time_zones )
{
TimeZone * tz = time_zones->GetZone(time_zone_id);
if( tz )
{
PT::Date local_date = tz->ToLocal(date);
log << local_date;
}
else
{
(*this) << date << " UTC"; // unknown time zone identifier
}
}
else
{
(*this) << date << " UTC"; // time_zones object was not set
}
}
Log & Log::operator<<(const void * s)
{