diff --git a/src/lib/features/export-import-toggles/createExportImportService.ts b/src/lib/features/export-import-toggles/createExportImportService.ts index 0a58d5cfd6..f40f4f218b 100644 --- a/src/lib/features/export-import-toggles/createExportImportService.ts +++ b/src/lib/features/export-import-toggles/createExportImportService.ts @@ -1,5 +1,5 @@ import { Db } from '../../db/db'; -import { IUnleashConfig } from '../../types'; +import { IEventStore, IUnleashConfig } from '../../types'; import ExportImportService from './export-import-service'; import { ImportTogglesStore } from './import-toggles-store'; import FeatureToggleStore from '../../db/feature-toggle-store'; @@ -9,7 +9,6 @@ import ProjectStore from '../../db/project-store'; import FeatureTagStore from '../../db/feature-tag-store'; import StrategyStore from '../../db/strategy-store'; import ContextFieldStore from '../../db/context-field-store'; -import EventStore from '../../db/event-store'; import FeatureStrategiesStore from '../../db/feature-strategy-store'; import { ContextService, @@ -112,6 +111,7 @@ export const createFakeExportImportTogglesService = ( export const createExportImportTogglesService = ( db: Db, config: IUnleashConfig, + eventStore: IEventStore, ): ExportImportService => { const { eventBus, getLogger, flagResolver } = config; const importTogglesStore = new ImportTogglesStore(db); @@ -128,7 +128,6 @@ export const createExportImportTogglesService = ( const featureTagStore = new FeatureTagStore(db, eventBus, getLogger); const strategyStore = new StrategyStore(db, getLogger); const contextFieldStore = new ContextFieldStore(db, getLogger); - const eventStore = new EventStore(db, getLogger); const featureStrategiesStore = new FeatureStrategiesStore( db, eventBus, @@ -141,7 +140,11 @@ export const createExportImportTogglesService = ( getLogger, ); const accessService = createAccessService(db, config); - const featureToggleService = createFeatureToggleService(db, config); + const featureToggleService = createFeatureToggleService( + db, + config, + eventStore, + ); const featureTagService = new FeatureTagService( { diff --git a/src/lib/features/feature-toggle/createFeatureToggleService.ts b/src/lib/features/feature-toggle/createFeatureToggleService.ts index d2195b91c5..3472c906c0 100644 --- a/src/lib/features/feature-toggle/createFeatureToggleService.ts +++ b/src/lib/features/feature-toggle/createFeatureToggleService.ts @@ -4,7 +4,6 @@ import { GroupService, SegmentService, } from '../../services'; -import EventStore from '../../db/event-store'; import FeatureStrategiesStore from '../../db/feature-strategy-store'; import FeatureToggleStore from '../../db/feature-toggle-store'; import FeatureToggleClientStore from '../../db/feature-toggle-client-store'; @@ -19,7 +18,7 @@ import { AccessStore } from '../../db/access-store'; import RoleStore from '../../db/role-store'; import EnvironmentStore from '../../db/environment-store'; import { Db } from '../../db/db'; -import { IUnleashConfig } from '../../types'; +import { IEventStore, IUnleashConfig } from '../../types'; import FakeEventStore from '../../../test/fixtures/fake-event-store'; import FakeFeatureStrategiesStore from '../../../test/fixtures/fake-feature-strategies-store'; import FakeFeatureToggleStore from '../../../test/fixtures/fake-feature-toggle-store'; @@ -38,9 +37,9 @@ import FakeEnvironmentStore from '../../../test/fixtures/fake-environment-store' export const createFeatureToggleService = ( db: Db, config: IUnleashConfig, + eventStore: IEventStore, ): FeatureToggleService => { const { getLogger, eventBus, flagResolver } = config; - const eventStore = new EventStore(db, getLogger); const featureStrategiesStore = new FeatureStrategiesStore( db, eventBus, diff --git a/src/lib/services/index.ts b/src/lib/services/index.ts index b455e190a8..cdc3358cb7 100644 --- a/src/lib/services/index.ts +++ b/src/lib/services/index.ts @@ -164,10 +164,10 @@ export const createServices = ( // TODO: this is a temporary seam to enable packaging by feature const exportImportService = db - ? createExportImportTogglesService(db, config) + ? createExportImportTogglesService(db, config, stores.eventStore) : createFakeExportImportTogglesService(config); const transactionalExportImportService = (txDb: Knex.Transaction) => - createExportImportTogglesService(txDb, config); + createExportImportTogglesService(txDb, config, stores.eventStore); const userSplashService = new UserSplashService(stores, config); const openApiService = new OpenApiService(config); const clientSpecService = new ClientSpecService(config);