示例#1
0
 public virtual void DefragBTree(IDefragmentServices services)
 {
     DefragmentContextImpl.ProcessCopy(services, GetID(), new _ISlotCopyHandler_481(this
                                                                                    ));
     services.TraverseAllIndexSlots(this, new _IVisitor4_486(this, services));
     ConvertCacheEvictedNodesToReadMode();
 }
示例#2
0
        /// <exception cref="Db4objects.Db4o.CorruptionException"></exception>
        /// <exception cref="System.IO.IOException"></exception>
        public void ProcessObjectSlot(DefragmentServicesImpl services, ClassMetadata classMetadata
                                      , int id)
        {
            ByteArrayBuffer sourceBuffer = services.SourceBufferByID(id);

            DefragmentContextImpl.ProcessCopy(services, id, new _ISlotCopyHandler_43(this, services
                                                                                     ), sourceBuffer);
        }
示例#3
0
 /// <exception cref="Db4objects.Db4o.CorruptionException"></exception>
 /// <exception cref="System.IO.IOException"></exception>
 public void ProcessClass(DefragmentServicesImpl services, ClassMetadata classMetadata
                          , int id, int classIndexID)
 {
     if (services.MappedID(id, -1) == -1)
     {
         Sharpen.Runtime.Err.WriteLine("MAPPING NOT FOUND: " + id);
     }
     DefragmentContextImpl.ProcessCopy(services, id, new _ISlotCopyHandler_34(classMetadata
                                                                              , classIndexID));
 }
示例#4
0
        private static void DefragUnindexed(DefragmentServicesImpl services)
        {
            IdSource unindexedIDs = services.UnindexedIDs();

            while (unindexedIDs.HasMoreIds())
            {
                int origID = unindexedIDs.NextId();
                DefragmentContextImpl.ProcessCopy(services, origID, new _ISlotCopyHandler_208());
            }
        }
示例#5
0
 /// <exception cref="Db4objects.Db4o.CorruptionException"></exception>
 /// <exception cref="System.IO.IOException"></exception>
 public void ProcessClassCollection(DefragmentServicesImpl services)
 {
     DefragmentContextImpl.ProcessCopy(services, services.SourceClassCollectionID(), new
                                       _ISlotCopyHandler_59(services));
 }
示例#6
0
            public void Visit(object obj)
            {
                int id = ((int)obj);

                DefragmentContextImpl.ProcessCopy(services, id, new _ISlotCopyHandler_489(this));
            }