Ejemplo n.º 1
0
        private void CollectClassSlots(ClassMetadata clazz)
        {
            if (!clazz.HasClassIndex())
            {
                return;
            }
            BTreeClassIndexStrategy index = (BTreeClassIndexStrategy)clazz.Index();

            index.TraverseAll(_db.SystemTransaction(), new _IVisitor4_182(this));
        }
Ejemplo n.º 2
0
        private FileUsageStatsCollector.InstanceUsage ClassSlotUsage(ClassMetadata clazz)
        {
            if (!clazz.HasClassIndex())
            {
                return(new FileUsageStatsCollector.InstanceUsage(0, 0));
            }
            IMiscCollector          miscCollector = ((IMiscCollector)MiscCollectors[clazz.GetName()]);
            LongByRef               slotUsage     = new LongByRef();
            LongByRef               miscUsage     = new LongByRef();
            BTreeClassIndexStrategy index         = (BTreeClassIndexStrategy)clazz.Index();

            index.TraverseAll(_db.SystemTransaction(), new _IVisitor4_166(this, slotUsage, miscCollector
                                                                          , miscUsage));
            return(new FileUsageStatsCollector.InstanceUsage(slotUsage.value, miscUsage.value
                                                             ));
        }
Ejemplo n.º 3
0
        private IList CheckClassIndices()
        {
            IList     invalidIds = new ArrayList();
            IIdSystem idSystem   = _db.IdSystem();

            if (!(idSystem is BTreeIdSystem))
            {
                return(invalidIds);
            }
            ClassMetadataIterator clazzIter = _db.ClassCollection().Iterator();

            while (clazzIter.MoveNext())
            {
                ClassMetadata clazz = clazzIter.CurrentClass();
                if (!clazz.HasClassIndex())
                {
                    continue;
                }
                BTreeClassIndexStrategy index = (BTreeClassIndexStrategy)clazz.Index();
                index.TraverseAll(_db.SystemTransaction(), new _IVisitor4_143(this, invalidIds, clazz
                                                                              ));
            }
            return(invalidIds);
        }