LOG.Error("Can not set "+name+" value, not defined item");
return;
}
_items[name].Value=value;
_items[name].LastUpdateTime=DateTime.Now;
stringsql=string.Format("UPDATE \"stats_data\" SET \"last_update_time\"='{0}',\"value\"='{1}' WHERE \"name\"='{2}';",_items[name].LastUpdateTime.ToString("yyyy/MM/dd HH:mm:ss.fff"),value,name);
LOG.Error("Can not get "+name+" value, not defined item");
return0;
}
publicStatsDataItemGetItem(stringname)
{
lock(_locker)
{
if(_items.ContainsKey(name))
{
return_items[name];
}
}
LOG.Error("Can not get "+name+" value, not defined item");
returnnull;
}
publicintIncrease(stringname,intadditionValue=1)
{
lock(_locker)
{
if(!_items.ContainsKey(name))
{
LOG.Error("Can not increase "+name+" value, not defined item");
return-1;
}
_items[name].Value+=additionValue;
_items[name].LastUpdateTime=DateTime.Now;
stringsql=string.Format("UPDATE \"stats_data\" SET \"last_update_time\"='{0}',\"value\"='{1}' WHERE \"name\"='{2}';",_items[name].LastUpdateTime.ToString("yyyy/MM/dd HH:mm:ss.fff"),_items[name].Value,name);
LOG.Error("Can not reset "+name+" value, not defined item");
return-1;
}
intvalue=_items[name].Value;
_items[name].Value=0;
_items[name].LastUpdateTime=DateTime.Now;
_items[name].LastResetTime=DateTime.Now;
stringsql=string.Format("UPDATE \"stats_data\" SET \"last_update_time\"='{0}',\"last_reset_time\"='{1}',\"value\"='{2}' WHERE \"name\"='{3}';",_items[name].LastUpdateTime.ToString("yyyy/MM/dd HH:mm:ss.fff"),_items[name].LastResetTime.ToString("yyyy/MM/dd HH:mm:ss.fff"),_items[name].Value,name);
EV.PostInfoLog("System",name+" stats value reset to 0");
returnvalue;
}
}
publicvoidResetTotal(stringname)
{
lock(_locker)
{
if(!_items.ContainsKey(name))
{
LOG.Error("Can not reset "+name+" value, not defined item");
return;
}
_items[name].Value=0;
_items[name].Total=0;
_items[name].LastResetTime=DateTime.Now;
_items[name].LastUpdateTime=DateTime.Now;
_items[name].LastResetTotalTime=DateTime.Now;
stringsql=string.Format("UPDATE \"stats_data\" SET \"last_update_time\"='{0}',\"last_reset_time\"='{1}',\"last_total_reset_time\"='{2}',\"value\"='{3}',\"total\"='{4}' WHERE \"name\"='{5}';",_items[name].LastUpdateTime.ToString("yyyy/MM/dd HH:mm:ss.fff"),_items[name].LastResetTime.ToString("yyyy/MM/dd HH:mm:ss.fff"),_items[name].LastResetTotalTime.ToString("yyyy/MM/dd HH:mm:ss.fff"),_items[name].Value,_items[name].Total,name);
EV.PostInfoLog("System",name+" stats total value reset to 0");