we can create links (hard links, symbolic links) now
added winix functions: ln winix function 'default' can be used without redirecting now added new tickets types: TypeProgress, TypeString, TypeMultistring, TypeImages, TypeFiles now tickets are combined with files added winix functions: showtickets fixed mountpoints: when the default root mount was created its parameter table was empty and it caused accessing to a non-existing objects fixed logger: modifiers (log1, log2, log3) were incorrectly treated added modifier: log4 (debug info) now we are moving threads to a new plugin 'thread' created directory: plugins/thread (not finished yet) git-svn-id: svn://ttmath.org/publicrep/winix/trunk@704 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
#include "ticketparser.h"
|
||||
#include "core/log.h"
|
||||
#include "core/misc.h"
|
||||
|
||||
|
||||
|
||||
|
||||
bool TicketParser::IsWhite(int c)
|
||||
@@ -121,9 +124,21 @@ bool TicketParser::ReadItemType()
|
||||
if( type == L"integer" )
|
||||
item.type = TicketConf::TicketItem::TypeInteger;
|
||||
else
|
||||
if( type == L"progress" )
|
||||
item.type = TicketConf::TicketItem::TypeProgress;
|
||||
else
|
||||
if( type == L"select" )
|
||||
item.type = TicketConf::TicketItem::TypeSelect;
|
||||
else
|
||||
if( type == L"string" )
|
||||
item.type = TicketConf::TicketItem::TypeString;
|
||||
else
|
||||
if( type == L"images" )
|
||||
item.type = TicketConf::TicketItem::TypeImages;
|
||||
else
|
||||
if( type == L"files" )
|
||||
item.type = TicketConf::TicketItem::TypeFiles;
|
||||
else
|
||||
{
|
||||
error = WINIX_TICKET_ERR_UKNOWN_TYPE;
|
||||
return false;
|
||||
@@ -194,6 +209,30 @@ bool def;
|
||||
}
|
||||
|
||||
|
||||
void TicketParser::ReadItemString()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
bool TicketParser::ReadItemFiles()
|
||||
{
|
||||
ReadText(item.upload_dir);
|
||||
|
||||
if( item.upload_dir.empty() )
|
||||
{
|
||||
error = WINIX_TICKET_ERR_NO_UPLOAD_DIR;
|
||||
return false;
|
||||
}
|
||||
|
||||
ReadText(int_max);
|
||||
|
||||
if( !int_max.empty() )
|
||||
item.max_files = Toi(int_max);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool TicketParser::CheckEndLine()
|
||||
{
|
||||
SkipWhite();
|
||||
@@ -224,7 +263,18 @@ bool TicketParser::ReadItem()
|
||||
if( item.type == TicketConf::TicketItem::TypeInteger )
|
||||
ReadItemInteger();
|
||||
else
|
||||
if( item.type == TicketConf::TicketItem::TypeProgress )
|
||||
ReadItemInteger();
|
||||
else
|
||||
if( item.type == TicketConf::TicketItem::TypeSelect )
|
||||
ReadItemSelect();
|
||||
else
|
||||
if( item.type == TicketConf::TicketItem::TypeString || item.type == TicketConf::TicketItem::TypeMultistring )
|
||||
ReadItemString();
|
||||
else
|
||||
if( item.type == TicketConf::TicketItem::TypeImages || item.type == TicketConf::TicketItem::TypeFiles )
|
||||
if( !ReadItemFiles() )
|
||||
return false;
|
||||
|
||||
if( !CheckEndLine() )
|
||||
return false;
|
||||
@@ -244,6 +294,16 @@ void TicketParser::LogItemInteger(TicketConf::TicketItem & item)
|
||||
}
|
||||
|
||||
|
||||
void TicketParser::LogItemProgress(TicketConf::TicketItem & item)
|
||||
{
|
||||
log << log3 << "TicketParser: item_type: progress"
|
||||
<< ", item_name: " << item.name
|
||||
<< ", item_id: " << item.id
|
||||
<< ", min: " << item.integer_min
|
||||
<< ", max: " << item.integer_max
|
||||
<< logend;
|
||||
}
|
||||
|
||||
void TicketParser::LogItemSelect(TicketConf::TicketItem & item)
|
||||
{
|
||||
log << log3 << "TicketParser: item_type: select"
|
||||
@@ -268,13 +328,69 @@ void TicketParser::LogItemSelect(TicketConf::TicketItem & item)
|
||||
}
|
||||
|
||||
|
||||
void TicketParser::LogItemString(TicketConf::TicketItem & item)
|
||||
{
|
||||
log << log3 << "TicketParser: item_type: string"
|
||||
<< ", item_name: " << item.name
|
||||
<< ", item_id: " << item.id
|
||||
<< logend;
|
||||
}
|
||||
|
||||
|
||||
void TicketParser::LogItemMultistring(TicketConf::TicketItem & item)
|
||||
{
|
||||
log << log3 << "TicketParser: item_type: multistring"
|
||||
<< ", item_name: " << item.name
|
||||
<< ", item_id: " << item.id
|
||||
<< logend;
|
||||
}
|
||||
|
||||
|
||||
void TicketParser::LogItemImages(TicketConf::TicketItem & item)
|
||||
{
|
||||
log << log3 << "TicketParser: item_type: images"
|
||||
<< ", item_name: " << item.name
|
||||
<< ", item_id: " << item.id
|
||||
<< ", item_upload_dir: " << item.upload_dir
|
||||
<< logend;
|
||||
}
|
||||
|
||||
|
||||
void TicketParser::LogItemFiles(TicketConf::TicketItem & item)
|
||||
{
|
||||
log << log3 << "TicketParser: item_type: files"
|
||||
<< ", item_name: " << item.name
|
||||
<< ", item_id: " << item.id
|
||||
<< ", item_upload_dir: " << item.upload_dir
|
||||
<< logend;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void TicketParser::LogItem(TicketConf::TicketItem & item)
|
||||
{
|
||||
if( item.type == TicketConf::TicketItem::TypeInteger )
|
||||
LogItemInteger(item);
|
||||
else
|
||||
if( item.type == TicketConf::TicketItem::TypeProgress )
|
||||
LogItemProgress(item);
|
||||
else
|
||||
if( item.type == TicketConf::TicketItem::TypeSelect )
|
||||
LogItemSelect(item);
|
||||
else
|
||||
if( item.type == TicketConf::TicketItem::TypeString )
|
||||
LogItemString(item);
|
||||
else
|
||||
if( item.type == TicketConf::TicketItem::TypeMultistring )
|
||||
LogItemMultistring(item);
|
||||
else
|
||||
if( item.type == TicketConf::TicketItem::TypeImages )
|
||||
LogItemImages(item);
|
||||
else
|
||||
if( item.type == TicketConf::TicketItem::TypeFiles )
|
||||
LogItemFiles(item);
|
||||
else
|
||||
log << log1 << "TicketParser: unknown item type" << logend;
|
||||
}
|
||||
|
||||
|
||||
@@ -293,7 +409,7 @@ int TicketParser::Parse(const wchar_t * str, TicketConf & conf)
|
||||
|
||||
if( error != WINIX_TICKET_ERR_OK )
|
||||
{
|
||||
log << log1 << "TicketParser: some errors occured during parsing the config (clearing the table)";
|
||||
log << log1 << "TicketParser: some errors occured during parsing the config (clearing the table)" << logend;
|
||||
conf.Clear();
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user