void readThis() throws OldFormatException { newSystemData(AbstractFreespaceManager.FM_LEGACY_RAM, StandardIdSystemFactory.LEGACY); blockSizeReadFromFile(1); _fileHeader = FileHeader.read(this); if (config().generateCommitTimestamps().isUnspecified()) { config().generateCommitTimestamps(_systemData.idToTimestampIndexId() != 0); } createStringIO(_systemData.stringEncoding()); createIdSystem(); initializeClassMetadataRepository(); initalizeWeakReferenceSupport(); setNextTimeStampId(systemData().lastTimeStampID()); classCollection().setID(_systemData.classCollectionID()); classCollection().read(systemTransaction()); Converter.convert(new ConversionStage.ClassCollectionAvailableStage(this)); _fileHeader.readIdentity(this); if (_config.isReadOnly()) { return; } if (!configImpl().commitRecoveryDisabled()) { _fileHeader.completeInterruptedTransaction(this); } FreespaceManager blockedFreespaceManager = AbstractFreespaceManager.createNew(this, _systemData.freespaceSystem()); installFreespaceManager(blockedFreespaceManager); blockedFreespaceManager.read(this, _systemData.inMemoryFreespaceSlot()); blockedFreespaceManager.start(_systemData.bTreeFreespaceId()); _fileHeader = _fileHeader.convert(this); if (freespaceMigrationRequired(blockedFreespaceManager)) { migrateFreespace(blockedFreespaceManager); } writeHeader(true, false); if (Converter.convert(new ConversionStage.SystemUpStage(this))) { _systemData.converterVersion(Converter.VERSION); _fileHeader.writeVariablePart(this); transaction().commit(); } }
public static void register(Converter converter) { converter.register(ClassIndexesToBTrees_5_5.VERSION, new ClassIndexesToBTrees_5_5()); converter.register(FieldIndexesToBTrees_5_7.VERSION, new FieldIndexesToBTrees_5_7()); converter.register(ClassAspects_7_4.VERSION, new ClassAspects_7_4()); converter.register(ReindexNetDateTime_7_8.VERSION, new ReindexNetDateTime_7_8()); converter.register(DropEnumClassIndexes_7_10.VERSION, new DropEnumClassIndexes_7_10()); converter.register(DropGuidClassIndexes_7_12.VERSION, new DropGuidClassIndexes_7_12()); converter.register( DropDateTimeOffsetClassIndexes_7_12.VERSION, new DropDateTimeOffsetClassIndexes_7_12()); converter.register( VersionNumberToCommitTimestamp_8_0.VERSION, new VersionNumberToCommitTimestamp_8_0()); }