1 /* Copyright (C) 2004 - 2009 Versant Inc. http://www.db4o.com */ 2 3 using Db4objects.Db4o.Internal; 4 using Db4objects.Db4o.Internal.Ids; 5 using Db4objects.Db4o.Internal.Slots; 6 7 namespace Db4objects.Db4o.Internal.Ids 8 { 9 /// <exclude></exclude> 10 public interface ITransactionalIdSystem 11 { CollectCallBackInfo(ICallbackInfoCollector collector)12 void CollectCallBackInfo(ICallbackInfoCollector collector); 13 IsDirty()14 bool IsDirty(); 15 Commit(FreespaceCommitter freespaceCommitter)16 void Commit(FreespaceCommitter freespaceCommitter); 17 CommittedSlot(int id)18 Slot CommittedSlot(int id); 19 CurrentSlot(int id)20 Slot CurrentSlot(int id); 21 AccumulateFreeSlots(FreespaceCommitter freespaceCommitter, bool forFreespace )22 void AccumulateFreeSlots(FreespaceCommitter freespaceCommitter, bool forFreespace 23 ); 24 Rollback()25 void Rollback(); 26 Clear()27 void Clear(); 28 IsDeleted(int id)29 bool IsDeleted(int id); 30 NotifySlotUpdated(int id, Slot slot, SlotChangeFactory slotChangeFactory)31 void NotifySlotUpdated(int id, Slot slot, SlotChangeFactory slotChangeFactory); 32 NotifySlotCreated(int id, Slot slot, SlotChangeFactory slotChangeFactory)33 void NotifySlotCreated(int id, Slot slot, SlotChangeFactory slotChangeFactory); 34 NotifySlotDeleted(int id, SlotChangeFactory slotChangeFactory)35 void NotifySlotDeleted(int id, SlotChangeFactory slotChangeFactory); 36 NewId(SlotChangeFactory slotChangeFactory)37 int NewId(SlotChangeFactory slotChangeFactory); 38 PrefetchID()39 int PrefetchID(); 40 PrefetchedIDConsumed(int id)41 void PrefetchedIDConsumed(int id); 42 Close()43 void Close(); 44 } 45 } 46