public void Apply(object state)
            {
                ConsistencyCheckerTestCase.Item item = ((ConsistencyCheckerTestCase.Item)((Pair)state
                                                                                          ).second);
                LocalObjectContainer db = ((LocalObjectContainer)((Pair)state).first);
                int  id   = (int)db.GetID(item);
                Slot slot = db.IdSystem().CommittedSlot(id);

                db.FreespaceManager().Free(new Slot(slot.Address() + 1, slot.Length()));
            }
Beispiel #2
0
 private object GetFieldValue(int id, IList path)
 {
     for (int i = 0; i < path.Count - 1; ++i)
     {
         object obj = GetFieldValue(id, ((FieldMetadata)path[i]));
         if (null == obj)
         {
             return(null);
         }
         id = _container.GetID(_transaction, obj);
     }
     return(GetFieldValue(id, ((FieldMetadata)path[path.Count - 1])));
 }
Beispiel #3
0
 private void CheckInstanceOfCompare()
 {
     if (_member is ICompare)
     {
         _member = ((ICompare)_member).Compare();
         LocalObjectContainer stream = Container();
         _classMetadata = stream.ClassMetadataForReflectClass(stream.Reflector().ForObject
                                                                  (_member));
         _key = stream.GetID(Transaction(), _member);
         if (_key == 0)
         {
             SetBytes(null);
         }
         else
         {
             SetBytes(stream.ReadBufferById(Transaction(), _key));
         }
     }
 }