public async Task InitRpcModules() { if (_baselineConfig.Enabled) { var baselineDbInitializer = new BaselineDbInitializer(_api.DbProvider, _baselineConfig, _api.RocksDbFactory, _api.MemDbFactory); await baselineDbInitializer.Init(); BaselineModuleFactory baselineModuleFactory = new BaselineModuleFactory( _api.TxSender !, _api.StateReader !, _api.CreateBlockchainBridge(), _api.BlockTree !, _api.AbiEncoder, _api.FileSystem, _api.LogManager, _api.MainBlockProcessor, _api.DisposeStack, _api.DbProvider); var modulePool = new SingletonModulePool <IBaselineModule>(baselineModuleFactory); _api.RpcModuleProvider !.Register(modulePool); if (_logger.IsInfo) { _logger.Info("Baseline RPC Module has been enabled"); } } else { if (_logger.IsWarn) { _logger.Info("Skipping Baseline RPC due to baseline being disabled in config."); } } }
public async Task ProviderInitTests_RocksDbProvider() { var rocksDbFactory = new RocksDbFactory(new DbConfig(), LimboLogs.Instance, Path.Combine(_folderWithDbs, "rocks")); var dbProvider = new DbProvider(DbModeHint.Persisted); var initializer = new BaselineDbInitializer(dbProvider, new BaselineConfig(), rocksDbFactory, new MemDbFactory()); await initializer.Init(); Assert.NotNull(dbProvider.GetDb <IDb>(BaselineDbNames.BaselineTree)); Assert.NotNull(dbProvider.GetDb <IDb>(BaselineDbNames.BaselineTreeMetadata)); Assert.AreEqual(2, dbProvider.RegisteredDbs.Count()); Assert.IsTrue(dbProvider.GetDb <IDb>(BaselineDbNames.BaselineTree) is DbOnTheRocks); Assert.IsTrue(dbProvider.GetDb <IDb>(BaselineDbNames.BaselineTreeMetadata) is DbOnTheRocks); }
public async Task ProviderInitTests_BeamSyncDbProvider() { var syncModeSelector = Substitute.For <ISyncModeSelector>(); var dbProvider = TestMemDbProvider.Init(); var rocksDbFactory = new RocksDbFactory(new DbConfig(), LimboLogs.Instance, Path.Combine(_folderWithDbs, "beam")); IDbProvider beamSyncDbProvider = new BeamSyncDbProvider(syncModeSelector, dbProvider, new SyncConfig(), LimboLogs.Instance); var initializer = new BaselineDbInitializer(beamSyncDbProvider, new BaselineConfig(), rocksDbFactory, new MemDbFactory()); await initializer.Init(); Assert.NotNull(beamSyncDbProvider.GetDb <IDb>(BaselineDbNames.BaselineTree)); Assert.NotNull(beamSyncDbProvider.GetDb <IDb>(BaselineDbNames.BaselineTreeMetadata)); Assert.IsTrue(beamSyncDbProvider.GetDb <IDb>(BaselineDbNames.BaselineTree) is MemDb); Assert.IsTrue(beamSyncDbProvider.GetDb <IDb>(BaselineDbNames.BaselineTreeMetadata) is MemDb); }