public ComponentStoreStarter(IMigrationsModelDiffer modelDiffer, MigrationsSqlGenerator sqlGenerator, IEntityFrameworkDataProvider dataProvider) { _modelDiffer = modelDiffer; _sqlGenerator = sqlGenerator; _dataProvider = dataProvider; }
/// <summary> /// Generates down SQL scripts. /// </summary> /// <param name="plugin">The plugin.</param> /// <param name="migration">The migration.</param> /// <param name="previousMigration">The previous migration.</param> /// <returns></returns> protected virtual IReadOnlyList <MigrationCommand> GenerateDownSql(EntityPlugin plugin, Migration migration, Migration previousMigration) { var historyScript = PluginHistoryRepository.GetDeleteScript(plugin, migration.GetType().GetCustomAttribute <MigrationAttribute>().Id); var historyCommand = RawSqlCommandBuilder.Build(historyScript); return(MigrationsSqlGenerator .Generate(migration.DownOperations, previousMigration?.TargetModel) .Concat(new[] { new MigrationCommand(historyCommand, CurrentContext.Context, CommandLogger) }) .ToList()); }
/// <summary> /// Generates up SQL scripts. /// </summary> /// <param name="plugin">The plugin.</param> /// <param name="migration">The migration.</param> /// <returns></returns> protected virtual IReadOnlyList <MigrationCommand> GenerateUpSql(EntityPlugin plugin, Migration migration) { var migrationId = migration.GetType().GetCustomAttribute <MigrationAttribute>()?.Id; var historyRow = new HistoryRow(migrationId, ProductInfo.GetVersion()); var historyScript = PluginHistoryRepository.GetInsertScript(plugin, historyRow); var historyCommand = RawSqlCommandBuilder.Build(historyScript); return(MigrationsSqlGenerator .Generate(migration.UpOperations, migration.TargetModel) .Concat(new[] { new MigrationCommand(historyCommand, CurrentContext.Context, CommandLogger) }) .ToList()); }
//TODO: Testear que se resuelva el IServiceProvider public ComponentStateManager( IServiceProvider serviceProvider, IComponentStore componentStore, IComponentsAssembliesProvider componentsAssembliesProvider, MigrationsModelDiffer modelDiffer, MigrationsSqlGenerator sqlGenerator, IEntityFrameworkDataProvider dataProvider) { _serviceProvider = serviceProvider; _componentStore = componentStore; _componentsAssembliesProvider = componentsAssembliesProvider; _modelDiffer = modelDiffer; _sqlGenerator = sqlGenerator; _dataProvider = dataProvider; }
public GoofyComponentsPopulate( IServiceCollection services, IComponentStateManager componentStateManager, IComponentStore componentStore, IComponentsInfoProvider componentsInfoProvider, IComponentsAssembliesProvider componentsAssembliesProvider, MigrationsModelDiffer modelDiffer, MigrationsSqlGenerator sqlGenerator, IEntityFrameworkDataProvider dataProvider ) { _services = services; _componentStateManager = componentStateManager; _componentStore = componentStore; _componentsInfoProvider = componentsInfoProvider; _componentAssembliesProvider = componentsAssembliesProvider; _modelDiffer = modelDiffer; _sqlGenerator = sqlGenerator; _dataProvider = dataProvider; }