Ejemplo n.º 1
0
 public override void Delete(LogItem item)
 {
     lock (_timesForDelete)
     {
         _timesForDelete.Add(item.Time);
     }
 }
Ejemplo n.º 2
0
 private void BSaveClick(object sender, RoutedEventArgs e)
 {
     var item = new LogItem {Text = tbMessage.Text};
     item.SetToBytes(tbMessage2.Text);
     _log.Save(item);
     _logs.Add(item);
 }
Ejemplo n.º 3
0
 public void Clean()
 {
     if (_remapList == null)
         return;
     var emptyItems = new LogItem[0];
     foreach (var callback in _remapList.SelectMany(t => t.Item2))
     {
         callback(emptyItems);
     }
 }
Ejemplo n.º 4
0
 public DateTime Save(LogItem item)
 {
     using (var connection = _connectionFactory.Create())
     {
         DeleteOld(connection);
         if (item.Time == _defaultTime)
         {
             item.Time = _timeService.UtcTime;
             _repository.Insert(connection, item);
         }
         else if (!_repository.Update(connection, item))
         {
             _repository.Insert(connection, item);
         }
         return item.Time;
     }
 }
Ejemplo n.º 5
0
 public LogItem[] GetItems(
     NpgsqlConnection connection, CriteriaType criteriaType, DateTime criteria, int maxCount, bool includeBytes)
 {
     IWhereOp whereOp;
     bool asc;
     switch (criteriaType)
     {
         case CriteriaType.DownFromInfinity:
             whereOp = null;
             asc = false;
             break;
         case CriteriaType.DownFrom:
             whereOp = new Lt(DbStr.Time, criteria.Ticks);
             asc = false;
             break;
         case CriteriaType.DownFromOrEqual:
             whereOp = new Le(DbStr.Time, criteria.Ticks);
             asc = false;
             break;
         case CriteriaType.UpFromInfinity:
             whereOp = null;
             asc = true;
             break;
         case CriteriaType.UpFrom:
             whereOp = new Gt(DbStr.Time, criteria.Ticks);
             asc = true;
             break;
         case CriteriaType.UpFromOrEqual:
             whereOp = new Ge(DbStr.Time, criteria.Ticks);
             asc = true;
             break;
         default:
             throw new NotSupportedException("CriteriaType " + criteriaType);
     }
     var columns = includeBytes ? _columns : _columnsWithoutBytes;
     var query = _npgQueryHelper.Select(
         _tableName, columns, whereOp, new[] { DbStr.Time }, asc, Math.Min(maxCount, MaxItemsToRetrieve));
     var alarms = _npgHelper.ExecuteReader(connection, query, reader =>
         {
             var i = new LogItem
                 {
                     Time = reader.GetDateTimeFormTicks(0),
                     Text = reader.GetNullableString(1)
                 };
             if (includeBytes)
             {
                 i.Bytes = reader.GetByteArray(2);
             }
             return i;
         });
     return asc ? alarms.Reverse().ToArray() : alarms;
 }
Ejemplo n.º 6
0
 public bool Update(NpgsqlConnection connection, LogItem item)
 {
     var query = _npgQueryHelper.UpdateWhere(
         _tableName,
         new Eq(DbStr.Time, item.Time.Ticks),
         new[] { DbStr.Text, DbStr.Bytes },
         new object[] { item.Text, item.Bytes });
     return _npgHelper.ExecuteNonQuery(connection, query) == 1;
 }
Ejemplo n.º 7
0
 public void Insert(NpgsqlConnection connection, LogItem item)
 {
     var values = new object[]
         {
             item.Time.Ticks,
             item.Text,
             item.Bytes
         };
     var query = _npgQueryHelper.Insert(
         _tableName,
         _columns,
         new[] {values});
     _npgHelper.ExecuteNonQuery(connection, query);
 }
Ejemplo n.º 8
0
 public override void Delete(LogItem item)
 {
     lock (_timesForDelete) {
         _timesForDelete.Add(item.Time);
     }
 }
Ejemplo n.º 9
0
 public override void Save(LogItem item)
 {
     _itemsToSave.Enqueue(item);
 }
Ejemplo n.º 10
0
 public abstract void Delete(LogItem item);
Ejemplo n.º 11
0
 public abstract void Save(LogItem item);
Ejemplo n.º 12
0
 public abstract void Save(LogItem item);
Ejemplo n.º 13
0
 public abstract void Delete(LogItem item);
Ejemplo n.º 14
0
 public override void Save(LogItem item)
 {
     _itemsToSave.Enqueue(item);
 }