public DataTable ProcessPipelineData(DataTable toProcess, IDataLoadEventListener listener, GracefulCancellationToken cancellationToken) { toProcess.TableName = GetTableName(); toProcess.ExtendedProperties.Add("ProperlyNamed", true); var extractDatasetCommand = _request as ExtractDatasetCommand; if (extractDatasetCommand != null) { var catalogue = extractDatasetCommand.Catalogue; var sourceFolder = _request.GetExtractionDirectory(); if (sourceFolder == null) { throw new Exception("Could not find Source Folder. Does the project have an Extraction Directory defined?"); } var outputFolder = sourceFolder.Parent.CreateSubdirectory(ExtractionDirectory.METADATA_FOLDER_NAME); var outputFile = new FileInfo(Path.Combine(outputFolder.FullName, toProcess.TableName + ".sd")); catalogue.Name = toProcess.TableName; var cmd = new ExecuteCommandExportObjectsToFile(_activator, catalogue, outputFile); cmd.Execute(); catalogue.RevertToDatabaseState(); } return(toProcess); }
public ReleaseAudit ProcessPipelineData(ReleaseAudit toProcess, IDataLoadEventListener listener, GracefulCancellationToken cancellationToken) { var allCatalogues = _releaseData.SelectedDatasets.Values.SelectMany(sd => sd.ToList()) .Select(sds => sds.ExtractableDataSet.Catalogue) .Distinct() .Cast <IMapsDirectlyToDatabaseTable>() .ToArray(); if (!allCatalogues.Any()) { listener.OnNotify(this, new NotifyEventArgs(ProgressEventType.Warning, "No Catalogues are selected for release")); return(toProcess); } var sourceFolder = _releaseData.ConfigurationsForRelease.First().Value.First().ExtractDirectory.Parent; if (sourceFolder == null) { throw new Exception("Could not find Source Folder. DOes the project have an Extraction Directory defined?"); } var outputFolder = sourceFolder.CreateSubdirectory(ExtractionDirectory.METADATA_FOLDER_NAME); var cmd = new ExecuteCommandExportObjectsToFile(_activator, allCatalogues, outputFolder); cmd.Execute(); return(toProcess); }
public ExecuteCommandExportObjectsToFileUI(IActivateItems activator, IMapsDirectlyToDatabaseTable[] toExport, DirectoryInfo targetDirectoryInfo = null) : base(activator) { _toExport = toExport; _cmd = new ExecuteCommandExportObjectsToFile(activator.RepositoryLocator, toExport, targetDirectoryInfo); if (_cmd.IsImpossible) { SetImpossible(_cmd.ReasonCommandImpossible); } ShowInExplorer = true; }
private void btnSavePlan_Click(object sender, EventArgs e) { SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "Plans (*.plan)|*.plan"; if (sfd.ShowDialog() == DialogResult.OK) { var fi = new FileInfo(sfd.FileName); var cmdAnoTablesToo = new ExecuteCommandExportObjectsToFile(Activator, Activator.RepositoryLocator.CatalogueRepository.GetAllObjects <ANOTable>().ToArray(), fi.Directory); cmdAnoTablesToo.ShowInExplorer = false; if (!cmdAnoTablesToo.IsImpossible) { cmdAnoTablesToo.Execute(); } var json = JsonConvertExtensions.SerializeObject(_planManager, Activator.RepositoryLocator); File.WriteAllText(fi.FullName, json); } }