Отчёт к первой лабораторной работе (1087983), страница 2
Текст из файла (страница 2)
Logging.Log("Копирование завершено");
return list;
}
public void Rollback(ClientActivated CAO)
{
CAO.Clear();
Logging.Log("Кэш очищен");
}
}
}
WellKnownSingleton
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Library
{
public class WellKnownSingleton : MarshalByRefObject
{
List<RecordDataObject> recordData;
int ID;
public WellKnownSingleton()
{
Logging.Log("Создан объект WellKnownSingleton");
recordData = new List<RecordDataObject>();
recordData.Add(new Library.RecordDataObject(1, "арбуз", "ананас"));
recordData.Add(new Library.RecordDataObject(2, "Ваня", "Саша"));
recordData.Add(new Library.RecordDataObject(3, "белки", "мыши"));
recordData.Add(new Library.RecordDataObject(4, "лампочки", "батарейки"));
recordData.Add(new Library.RecordDataObject(5, "0101001", "01010101"));
recordData.Add(new Library.RecordDataObject(6, "мандарины", "киви"));
recordData.Add(new Library.RecordDataObject(7, "сладость", "радость"));
recordData.Add(new Library.RecordDataObject(8, "кучка", "две кучки"));
ID = 8;
}
~WellKnownSingleton()
{
Logging.Log("Удален объект WellKnownSingleton");
}
public int incID()
{
ID = ID + 1;
return ID;
}
public List<RecordDataObject> GetPersistentData()
{
Logging.Log("Запрошены данные с синглтон объекта");
return recordData;
}
public List<string> SetPersistentData(List<RecordDataObject> ins, List<RecordDataObject> upd, List<RecordDataObject> del)
{
List<string> list = new List<string>();
if (ins != null)
foreach (RecordDataObject rec in ins)
recordData.Add(rec);
bool bUpdated = false;
if (upd != null)
foreach (RecordDataObject rec in upd)
{
bUpdated = false;
foreach (RecordDataObject item in recordData)
{
if (rec.ID == item.ID)
{
item.field1 = rec.field1;
item.field2 = rec.field2;
bUpdated = true;
break;
}
}
if (bUpdated == false)
{
list.Add("Не удалось отредактировать запись " + rec.field1.ToString() + " " + rec.field2.ToString());
}
}
bool bDeleted = false;
if (del != null)
foreach (RecordDataObject rec in del)
{
foreach (RecordDataObject item in recordData)
{
bDeleted = false;
if (rec.ID == item.ID)
{
recordData.Remove(item);
bDeleted = true;
break;
}
}
if (bDeleted == false)
{
list.Add("Не удалось удалить запись " + rec.field1.ToString() + " " + rec.field2.ToString());
}
}
Logging.Log("Данные синглтон объекета обновлены");
return list;
}
}
}