using System; using System.Collections.Generic; using System.IO; using InABox.Core; namespace Comal.Classes { public class RetainedItemsList : List { public void Pack(BinaryWriter writer) { writer.Write(Count); foreach (var guid in this) writer.Write(guid.ToByteArray()); } public static RetainedItemsList Unpack(BinaryReader reader) { var results = new RetainedItemsList(); var iCount = reader.ReadInt32(); for (var i = 0; i < iCount; i++) { var guid = new Guid(reader.ReadBytes(16)); results.Add(guid); } return results; } } [UserTracking(typeof(Delivery))] public class DeliveryNotification : Entity, IPersistent, IRemotable, ILicense { public DeliveryLink Delivery { get; set; } public Location Location { get; set; } public RetainedItemsList RetainedItems { get; set; } protected override void Init() { base.Init(); RetainedItems = new RetainedItemsList(); Location = new Location(); Delivery = new DeliveryLink(); } } }