/// <exception cref="Db4objects.Db4o.CorruptionException"></exception> /// <exception cref="Db4objects.Db4o.Ext.Db4oIOException"></exception> private void RemoveIndexEntry(DeleteContextImpl context) { if (!HasIndex()) { return; } int offset = context.Offset(); object obj = ReadIndexEntry(context); RemoveIndexEntry(context.Transaction(), context.ObjectId(), obj); context.Seek(offset); }
public override void Delete(DeleteContextImpl context, bool isUpdate) { context.Seek(context.Offset() + LinkLength(context)); }
public override void Delete(DeleteContextImpl context, bool isUpdate) { if (isUpdate) { context.Seek(context.Offset() + LinkLength(context)); return; } context.Seek(context.Offset() + Const4.IntLength); var longPart = context.ReadLong(); if (longPart > 0) { if (context.Container().MaintainsIndices()) { RemoveIndexEntry(context.Transaction(), context.ObjectId(), longPart); } } }