public virtual void DeleteMembers(DeleteContextImpl context, bool isUpdate)
        {
            ITraverseAspectCommand command = new _MarshallingInfoTraverseAspectCommand_438(context
                                                                                           , isUpdate, EnsureFieldList(context));

            TraverseAllAspects(context, command);
        }
 /// <exception cref="Db4objects.Db4o.Internal.FieldIndexException"></exception>
 public override void Delete(DeleteContextImpl context, bool isUpdate)
 {
     if (!CheckAlive(context, context))
     {
         return;
     }
     try
     {
         RemoveIndexEntry(context);
         if (isUpdate && !IsStruct())
         {
             IncrementOffset(context, context);
             return;
         }
         StatefulBuffer    buffer       = (StatefulBuffer)context.Buffer();
         DeleteContextImpl childContext = new DeleteContextImpl(context, GetStoredType(),
                                                                _config);
         context.SlotFormat().DoWithSlotIndirection(buffer, GetHandler(), new _IClosure4_443
                                                        (this, childContext));
     }
     catch (CorruptionException exc)
     {
         throw new FieldIndexException(exc, this);
     }
 }
        /// <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);
        }
 internal override void DeleteMembers(DeleteContextImpl context, ArrayType arrayType
                                      , bool isUpdate)
 {
     if (arrayType == ArrayType.PlainArray)
     {
         new ArrayHandler(TypeHandler(), true).DeletePrimitiveEmbedded((StatefulBuffer)context
                                                                       .Buffer(), this);
     }
     else
     {
         if (arrayType == ArrayType.MultidimensionalArray)
         {
             new MultidimensionalArrayHandler(TypeHandler(), true).DeletePrimitiveEmbedded((StatefulBuffer
                                                                                            )context.Buffer(), this);
         }
     }
 }
        private void DeleteMembers(StatefulBuffer objectBytes)
        {
            ObjectHeader oh   = new ObjectHeader(_clazz, objectBytes);
            DeleteInfo   info = (DeleteInfo)TreeInt.Find(_transaction._delete, _id);

            if (info != null)
            {
                if (info._cascade > _cascade)
                {
                    _cascade = info._cascade;
                }
            }
            objectBytes.SetCascadeDeletes(_cascade);
            DeleteContextImpl context = new DeleteContextImpl(objectBytes, oh, _clazz.ClassReflector
                                                                  (), null);

            _clazz.DeleteMembers(context, _typeInfo, true);
        }
        public override void Delete(DeleteContextImpl context, bool isUpdate)
        {
            if (isUpdate)
            {
                context.Seek(context.Offset() + LinkLength(context));
                return;
            }
            context.Seek(context.Offset() + Const4.IntLength);
            long longPart = context.ReadLong();

            if (longPart > 0)
            {
                if (context.Container().MaintainsIndices())
                {
                    RemoveIndexEntry(context.Transaction(), context.ObjectId(), longPart);
                }
            }
        }
 // do nothing
 public abstract override void Delete(DeleteContextImpl context, bool isUpdate);
 public _MarshallingInfoTraverseAspectCommand_438(DeleteContextImpl context, bool
                                                  isUpdate, IMarshallingInfo baseArg1) : base(baseArg1)
 {
     this.context  = context;
     this.isUpdate = isUpdate;
 }
 public virtual void DeleteMembers(DeleteContextImpl deleteContext, bool isUpdate)
 {
 }
 public _IClosure4_443(FieldMetadata _enclosing, DeleteContextImpl childContext)
 {
     this._enclosing   = _enclosing;
     this.childContext = childContext;
 }
 public _IClosure4_119(TypeHandlerAspect _enclosing, DeleteContextImpl context)
 {
     this._enclosing = _enclosing;
     this.context    = context;
 }
 public override void Delete(DeleteContextImpl context, bool isUpdate)
 {
     context.SlotFormat().DoWithSlotIndirection(context, new _IClosure4_119(this, context
                                                                            ));
 }
 public override void Delete(DeleteContextImpl context, bool isUpdate)
 {
 }
 public override void Delete(DeleteContextImpl context, bool isUpdate)
 {
     context.Seek(context.Offset() + LinkLength());
 }