class RecordStorageEngine implements StorageEngine, Lifecycle {

    @Override
    public void flushAndForce( IOLimiter limiter )
    {
        indexingService.forceAll( limiter );
        labelScanStore.force( limiter );
        for ( IndexImplementation index : explicitIndexProviderLookup.allIndexProviders() )
        {
            index.force();
        }
        neoStores.flush( limiter );
    }

    public  RecordStorageEngine(
            DatabaseLayout databaseLayout,
            Config config,
            PageCache pageCache,
            FileSystemAbstraction fs,
            LogProvider logProvider,
            LogProvider userLogProvider,
            TokenHolders tokenHolders,
            SchemaState schemaState,
            ConstraintSemantics constraintSemantics,
            JobScheduler scheduler,
            TokenNameLookup tokenNameLookup,
            LockService lockService,
            IndexProviderMap indexProviderMap,
            IndexingService.Monitor indexingServiceMonitor,
            DatabaseHealth databaseHealth,
            ExplicitIndexProvider explicitIndexProvider,
            IndexConfigStore indexConfigStore,
            IdOrderingQueue explicitIndexTransactionOrdering,
            IdGeneratorFactory idGeneratorFactory,
            IdController idController,
            Monitors monitors,
            RecoveryCleanupWorkCollector recoveryCleanupWorkCollector,
            OperationalMode operationalMode,
            VersionContextSupplier versionContextSupplier );

}