public void RunDLE(int timeoutInMilliseconds) { var runner = new DleRunner(new DleOptions() { LoadMetadata = TestLoadMetadata.ID, Command = CommandLineActivity.run }); runner.Run(RepositoryLocator, new ThrowImmediatelyDataLoadEventListener(), new ThrowImmediatelyCheckNotifier(), new GracefulCancellationToken()); }
/// <summary> /// Runs the data load engine for the given <paramref name="lmd"/> /// </summary> /// <param name="lmd"></param> /// <param name="timeoutInMilliseconds"></param> /// <param name="checks">True to run the pre load checks with accept all proposed fixes</param> public void RunDLE(LoadMetadata lmd, int timeoutInMilliseconds, bool checks) { if (checks) { //Get DleRunner to run pre load checks (includes trigger creation etc) var checker = new DleRunner(new DleOptions() { LoadMetadata = lmd.ID, Command = CommandLineActivity.check }); checker.Run(RepositoryLocator, new ThrowImmediatelyDataLoadEventListener(), new AcceptAllCheckNotifier(), new GracefulCancellationToken()); } var runner = new DleRunner(new DleOptions() { LoadMetadata = lmd.ID, Command = CommandLineActivity.run }); runner.Run(RepositoryLocator, new ThrowImmediatelyDataLoadEventListener(), new ThrowImmediatelyCheckNotifier(), new GracefulCancellationToken()); }
protected override void SetUp() { base.SetUp(); Database = GetCleanedServer(FAnsi.DatabaseType.MicrosoftSQLServer); var rootFolder = new DirectoryInfo(TestContext.CurrentContext.TestDirectory); var subdir = rootFolder.CreateSubdirectory("TestsRequiringADle"); LoadDirectory = LoadDirectory.CreateDirectoryStructure(rootFolder, subdir.FullName, true); Clear(LoadDirectory); LiveTable = CreateDataset <Demography>(Database, 500, 5000, new Random(190)); LiveTable.CreatePrimaryKey(new DiscoveredColumn[] { LiveTable.DiscoverColumn("chi"), LiveTable.DiscoverColumn("dtCreated"), LiveTable.DiscoverColumn("hb_extract") }); TestCatalogue = Import(LiveTable); RowsBefore = 5000; TestLoadMetadata = new LoadMetadata(CatalogueRepository, "Loading Test Catalogue"); TestLoadMetadata.LocationOfFlatFiles = LoadDirectory.RootPath.FullName; TestLoadMetadata.SaveToDatabase(); //make the load load the table TestCatalogue.LoadMetadata_ID = TestLoadMetadata.ID; TestCatalogue.SaveToDatabase(); CreateFlatFileAttacher(TestLoadMetadata, "*.csv", TestCatalogue.GetTableInfoList(false).Single(), ","); //Get DleRunner to run pre load checks (includes trigger creation etc) var runner = new DleRunner(new DleOptions() { LoadMetadata = TestLoadMetadata.ID, Command = CommandLineActivity.check }); runner.Run(RepositoryLocator, new ThrowImmediatelyDataLoadEventListener(), new AcceptAllCheckNotifier(), new GracefulCancellationToken()); }
protected override void SetUp() { base.SetUp(); Database = GetCleanedServer(FAnsi.DatabaseType.MicrosoftSQLServer); var rootFolder = new DirectoryInfo(TestContext.CurrentContext.TestDirectory); var subdir = rootFolder.CreateSubdirectory("TestsRequiringADle"); LoadDirectory = LoadDirectory.CreateDirectoryStructure(rootFolder, subdir.FullName, true); Clear(LoadDirectory); LiveTable = CreateDataset <Demography>(Database, 500, 5000, new Random(190)); LiveTable.CreatePrimaryKey(new DiscoveredColumn[] { LiveTable.DiscoverColumn("chi"), LiveTable.DiscoverColumn("dtCreated"), LiveTable.DiscoverColumn("hb_extract") }); TestCatalogue = Import(LiveTable); RowsBefore = 5000; TestLoadMetadata = new LoadMetadata(CatalogueRepository, "Loading Test Catalogue"); TestLoadMetadata.LocationOfFlatFiles = LoadDirectory.RootPath.FullName; TestLoadMetadata.SaveToDatabase(); //make the load load the table TestCatalogue.LoadMetadata_ID = TestLoadMetadata.ID; TestCatalogue.SaveToDatabase(); var csvProcessTask = new ProcessTask(CatalogueRepository, TestLoadMetadata, LoadStage.Mounting); var args = csvProcessTask.CreateArgumentsForClassIfNotExists <AnySeparatorFileAttacher>(); csvProcessTask.Path = typeof(AnySeparatorFileAttacher).FullName; csvProcessTask.ProcessTaskType = ProcessTaskType.Attacher; csvProcessTask.SaveToDatabase(); var filePattern = args.Single(a => a.Name == "FilePattern"); filePattern.SetValue("*.csv"); filePattern.SaveToDatabase(); var tableToLoad = args.Single(a => a.Name == "TableToLoad"); tableToLoad.SetValue(TestCatalogue.GetTableInfoList(false).Single()); tableToLoad.SaveToDatabase(); var separator = args.Single(a => a.Name == "Separator"); separator.SetValue(","); separator.SaveToDatabase(); var ignoreDataLoadRunIDCol = args.Single(a => a.Name == "IgnoreColumns"); ignoreDataLoadRunIDCol.SetValue("hic_dataLoadRunID"); ignoreDataLoadRunIDCol.SaveToDatabase(); //Get DleRunner to run pre load checks (includes trigger creation etc) var runner = new DleRunner(new DleOptions() { LoadMetadata = TestLoadMetadata.ID, Command = CommandLineActivity.check }); runner.Run(RepositoryLocator, new ThrowImmediatelyDataLoadEventListener(), new AcceptAllCheckNotifier(), new GracefulCancellationToken()); }